3386

帖子

0

TA的资源

五彩晶圆(中级)

21
 

#MicroPython动手做(22)——掌控板之无线广播
#自控行人过马路交通信号灯(行车同步端)

 

行车端红绿灯:

  ①亮绿灯,等待接收广播指令;

  ②当接收到广播指令,等待缓冲时间,黄灯闪亮3次,红灯亮,等待15秒,行人通过后,恢复绿灯。

 

#MicroPython动手做(22)——掌控板之无线广播
#自控行人过马路交通信号灯(行车同步端)

from mpython import *

from machine import Timer

import radio

import ubinascii

_radio_msg_list = []
def radio_callback(_msg):
    global _radio_msg_list
    try: radio_recv(_msg)
    except: pass
    if _msg in _radio_msg_list:
        eval('radio_recv_' + bytes.decode(ubinascii.hexlify(_msg)) + '()')

tim13 = Timer(13)

def timer13_tick(_):
    _msg = radio.receive()
    if not _msg: return
    radio_callback(_msg)

tim13.init(period=20, mode=Timer.PERIODIC, callback=timer13_tick)

import time

import framebuf

import font.digiface_44

def upRange(start, stop, step):
    while start <= stop:
        yield start
        start += abs(step)

def downRange(start, stop, step):
    while start >= stop:
        yield start
        start -= abs(step)

def _E6_97_B6_E9_97_B4_E6_8F_90_E7_A4_BA(x):
    global k, j
    for k in (1 <= int(x)) and upRange(1, int(x), 1) or downRange(1, int(x), 1):
        oled.fill(0)
        display_font(font.digiface_44, (str((x + 1) - k)), 32, 8, False, 2)
        oled.show()
        time.sleep(1)
    oled.fill(0)
    oled.show()

def flash():
    global x, k, j
    for j in range(1, 4):
        rgb.fill((int(255), int(255), int(0)))
        rgb.write()
        time.sleep_ms(1)
        time.sleep_ms(500)
        rgb.fill( (0, 0, 0) )
        rgb.write()
        time.sleep_ms(1)
        time.sleep_ms(500)

_radio_msg_list.append('1')
def radio_recv_31():
    global i, x, y
    _E6_97_B6_E9_97_B4_E6_8F_90_E7_A4_BA(7)
    flash()
    rgb.fill((int(255), int(0), int(0)))
    rgb.write()
    time.sleep_ms(1)
    _E6_97_B6_E9_97_B4_E6_8F_90_E7_A4_BA(15)
    rgb.fill((int(0), int(153), int(0)))
    rgb.write()
    time.sleep_ms(1)

def display_font(_font, _str, _x, _y, _wrap, _z=0):
    _start = _x
    for _c in _str:
        _d = _font.get_ch(_c)
        if _wrap and _x > 128 - _d[2]: _x = _start; _y += _d[1]
        if _c == '1' and _z > 0: oled.fill_rect(_x, _y, _d[2], _d[1], 0)
        oled.blit(framebuf.FrameBuffer(bytearray(_d[0]), _d[2], _d[1],
        framebuf.MONO_HLSB), (_x+int(_d[2]/_z)) if _c=='1' and _z>0 else _x, _y)
        _x += _d[2]
radio.on()
radio.config(channel=11)
rgb.fill((int(255), int(0), int(0)))
rgb.write()
time.sleep_ms(1)

 

 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

22
 

行人控制端(mPthon X 图形编程)

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

23
 

行车同步端(mPython 图形编程)

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

24
 

#MicroPython动手做(22)——掌控板之无线广播

#自控行人过马路交通信号灯(视频)

 

 

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

25
 

 

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

26
 

6、远距离控制光线采集与记录

 

#MicroPython动手做(22)——掌控板之无线广播
#远距离控制光线采集与记录(控制端)

 

#MicroPython动手做(22)——掌控板之无线广播
#远距离控制光线采集与记录(控制端)

import radio
from mpython import *
import time


radio.on()
radio.config(channel=5)
oled.fill(0)
oled.DispChar("光线数据采集", 0, 0, 1)
oled.DispChar("按A键采集,按B键结束", 0, 16, 1)
oled.show()
while True:
    if button_a.value() == 0:
        rgb[1] = (int(0), int(102), int(0))
        rgb.write()
        time.sleep_ms(1)
        oled.fill_rect(0, 32, 128, 16, 0)
        oled.DispChar((str(light.read())), 0, 32, 1)
        oled.show()
        radio.send((str(light.read())))
        time.sleep_ms(100)
    if button_b.value() == 0:
        rgb[1] = (int(102), int(0), int(0))
        rgb.write()
        time.sleep_ms(1)
        oled.fill_rect(0, 32, 128, 16, 0)
        oled.show()
        radio.off()

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

27
 

#MicroPython动手做(22)——掌控板之无线广播
#远距离控制光线采集与记录(接收端)

 

#MicroPython动手做(22)——掌控板之无线广播
#远距离控制光线采集与记录(接收端)

import radio

from mpython import *

import time
radio.on()
radio.config(channel=5)
oled.fill(0)
oled.DispChar('光线数据接收', 0, 0, 1)
oled.show()
time.sleep_ms(50);print(('__TITLE', '光线'));time.sleep_ms(50)
while True:
    aaa = radio.receive()
    oled.fill_rect(0, 16, 128, 16, 0)
    oled.DispChar((str(aaa)), 0, 16, 1)
    oled.show()
    if aaa != None:
        print((int(aaa),))
        time.sleep_ms(100)

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

28
 

采集到的光线数据波形

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

29
 

光线采集控制端(mPython X 图形编程)

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

30
 

接收光线数据端(mPthon 图形编程)

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

31
 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

32
 

目录清单
MicroPython动手做(01)——春节后入手了一块K210芯片AI开发板 
https://bbs.eeworld.com.cn/thread-1115786-1-1.html

MicroPython动手做(02)——尝试搭建K210开发板的IDE环境
https://bbs.eeworld.com.cn/thread-1115831-1-1.html

MicroPython动手做(03)——零基础学MaixPy之开机运行
https://bbs.eeworld.com.cn/thread-1116184-1-1.html

MicroPython动手做(04)——零基础学MaixPy之基本示例
https://bbs.eeworld.com.cn/thread-1116438-1-1.html

MicroPython动手做(05)——零基础学MaixPy之LCD液晶屏
https://bbs.eeworld.com.cn/thread-1116577-1-1.html

MicroPython动手做(06)——零基础学MaixPy之单目摄像头
https://bbs.eeworld.com.cn/thread-1116591-1-1.html

MicroPython动手做(07)——零基础学MaixPy之机器视觉
https://bbs.eeworld.com.cn/thread-1116617-1-1.html

MicroPython动手做(08)——零基础学MaixPy之识别颜色 
https://bbs.eeworld.com.cn/thread-1116662-1-1.html

MicroPython动手做(09)——零基础学MaixPy之人脸识别
https://bbs.eeworld.com.cn/thread-1116720-1-1.html

MicroPython动手做(10)——零基础学MaixPy之神经网络KPU
https://bbs.eeworld.com.cn/thread-1116925-1-1.html

MicroPython动手做(11)——搭建掌控板IDE环境
https://bbs.eeworld.com.cn/thread-1117964-1-1.html

MicroPython动手做(12)——掌控板之Hello World
https://bbs.eeworld.com.cn/thread-1118180-1-1.html

MicroPython动手做(13)——掌控板之RGB三色灯 
https://bbs.eeworld.com.cn/thread-1118275-1-1.html

MicroPython动手做(14)——掌控板之OLED屏幕
https://bbs.eeworld.com.cn/thread-1118389-1-1.html

MicroPython动手做(15)——掌控板之AB按键
https://bbs.eeworld.com.cn/thread-1118496-1-1.html

MicroPython动手做(16)——掌控板之图片图像显示
https://bbs.eeworld.com.cn/thread-1118945-1-1.html

MicroPython动手做(17)——掌控板之触摸引脚
https://bbs.eeworld.com.cn/thread-1119462-1-1.html

MicroPython动手做(18)——掌控板之声光传感器
https://bbs.eeworld.com.cn/thread-1119583-1-1.html

MicroPython动手做(19)——掌控板之蜂鸣器与音乐
https://bbs.eeworld.com.cn/thread-1119668-1-1.html

MicroPython动手做(20)——掌控板之三轴加速度
https://bbs.eeworld.com.cn/thread-1119998-1-1.html

MicroPython动手做(21)——掌控板之磁场传感器
https://bbs.eeworld.com.cn/thread-1120188-1-1.html

MicroPython动手做(22)——掌控板之无线广播
https://bbs.eeworld.com.cn/thread-1120835-1-1.html

MicroPython动手做(23)——掌控板之WiFi与蓝牙
https://bbs.eeworld.com.cn/thread-1120934-1-1.html

MicroPython动手做(24)——掌控板之拓展掌控宝 
https://bbs.eeworld.com.cn/thread-1121208-1-1.html

MicroPython动手做(25)——语音合成与语音识别
https://bbs.eeworld.com.cn/thread-1123752-1-1.html

MicroPython动手做(26)——物联网之OneNET
https://bbs.eeworld.com.cn/thread-1125172-1-1.html

MicroPython动手做(27)——物联网之微信小程序
https://bbs.eeworld.com.cn/thread-1125520-1-1.html

MicroPython动手做(28)——物联网之Yeelight
https://bbs.eeworld.com.cn/thread-1125939-1-1.html

MicroPython动手做(29)——物联网之SIoT
https://bbs.eeworld.com.cn/thread-1126090-1-1.html

 MicroPython动手做(30)——物联网之Blynk

https://bbs.eeworld.com.cn/thread-1126427-1-1.html

MicroPython动手做(31)——物联网之Easy IoT 

https://bbs.eeworld.com.cn/thread-1126903-1-1.html

 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表