dcexpert

个性签名:一起来玩 microbit/micropython

  • 2019-10-21
  • 回复了主题帖: MakeCode 支持 STM103 了

    OldManW 发表于 2019-10-21 16:45 不是吧 我得天 发出来的代码有问题 官方都不修复了嘛 
    STM32F103性能比较低,运行python意义不大,加上现在F4的价格也降低了,还是尽快转到STM32F4吧

  • 2019-10-19
  • 回复了主题帖: 【SAMR21新玩法】35. HCSR04超声波传感器

    使用方法: sr04 = HCSR04(pin.PA06, pin.PA07) while True: dist = sr04.distance() print(dist) delay_us(500*1000)

  • 发表了主题帖: 【SAMR21新玩法】35. HCSR04超声波传感器

    replyreload += ',' + 2913810; 本帖最后由 dcexpert 于 2019-10-19 19:44 编辑 HCSR04超声波传感器是通过测量脉冲宽度来计算距离的,申博现金网六合彩网上娱乐场:因此可以使用PulseIn功能捕捉脉冲宽度。   下面是在adafruit_hcsr04.py程序基础上,精简的驱动程序: 游客,如果您要查看本帖隐藏内容请回复 此内容由EEWORLD论坛网友dcexpert原创,如需转载或用于商业用途需征得作者同意并注明出处

  • 回复了主题帖: 【micropython】蓝牙BLE的例程

    led2015 发表于 2019-10-19 13:39 像那种收集齐全资料的,会成一个系列吗
    相关文档后续肯定会有的

  • 回复了主题帖: STM32F4下载程序时出现Flash Timeout的错误提示是什么原因

    说的不清楚很难分析,但是应该是电路方面的问题。可以检查电源的纹波是否过大、SWD连接是否可靠。

  • 2019-10-18
  • 回复了主题帖: 为什么手机一听到铃声就关机?

    估计还是电池问题。以前有个手机也是这样,时间长了后电池不行了,平时还好,只要一接电话就关机。因为电话的功率较高,电流一大电压就掉下去了。

  • 回复了主题帖: 低压差降压稳压电路设计

    动画演示的效果真不错

  • 回复了主题帖: 【micropython】蓝牙BLE的例程

    使用BLE的REPL   # Proof-of-concept of a REPL over BLE UART. # # Tested with the Adafruit Bluefruit app on Android. # Set the EoL characters to \r\n. import bluetooth import io import os import micropython import machine from ble_uart_peripheral import BLEUART _MP_STREAM_POLL = const(3) _MP_STREAM_POLL_RD = const(0x0001) # TODO: Remove this when STM32 gets machine.Timer. if hasattr(machine, 'Timer'): _timer = machine.Timer(-1) else: _timer = None # Batch writes into 50ms intervals. def schedule_in(handler, delay_ms): def _wrap(_arg): handler() if _timer: _timer.init(mode=machine.Timer.ONE_SHOT, period=delay_ms, callback=_wrap) else: micropython.schedule(_wrap, None) # Simple buffering stream to support the dupterm requirements. class BLEUARTStream(io.IOBase): def __init__(self, uart): self._uart = uart self._tx_buf = bytearray() self._uart.irq(self._on_rx) def _on_rx(self): # Needed for ESP32. if hasattr(os, 'dupterm_notify'): os.dupterm_notify(None) def read(self, sz=None): return self._uart.read(sz) def readinto(self, buf): avail = self._uart.read(len(buf)) if not avail: return None for i in range(len(avail)): buf[i] = avail[i] return len(avail) def ioctl(self, op, arg): if op == _MP_STREAM_POLL: if self._uart.any(): return _MP_STREAM_POLL_RD return 0 def _flush(self): data = self._tx_buf[0:100] self._tx_buf = self._tx_buf[100:] self._uart.write(data) if self._tx_buf: schedule_in(self._flush, 50) def write(self, buf): empty = not self._tx_buf self._tx_buf += buf if empty: schedule_in(self._flush, 50) def start(): ble = bluetooth.BLE() uart = BLEUART(ble, name='mpy-repl') stream = BLEUARTStream(uart) os.dupterm(stream)  

  • 回复了主题帖: 【micropython】蓝牙BLE的例程

     温度传感器 # This example demonstrates a simple temperature sensor peripheral. # # The sensor's local value updates every second, and it will notify # any connected central every 10 seconds. import bluetooth import random import struct import time from ble_advertising import advertising_payload from micropython import const _IRQ_CENTRAL_CONNECT = const(1 << 0) _IRQ_CENTRAL_DISCONNECT = const(1 << 1) # org.bluetooth.service.environmental_sensing _ENV_SENSE_UUID = bluetooth.UUID(0x181A) # org.bluetooth.characteristic.temperature _TEMP_CHAR = (bluetooth.UUID(0x2A6E), bluetooth.FLAG_READ|bluetooth.FLAG_NOTIFY,) _ENV_SENSE_SERVICE = (_ENV_SENSE_UUID, (_TEMP_CHAR,),) # org.bluetooth.characteristic.gap.appearance.xml _ADV_APPEARANCE_GENERIC_THERMOMETER = const(768) class BLETemperature: def __init__(self, ble, name='mpy-temp'): self._ble = ble self._ble.active(True) self._ble.irq(handler=self._irq) ((self._handle,),) = self._ble.gatts_register_services((_ENV_SENSE_SERVICE,)) self._connections = set() self._payload = advertising_payload(name=name, services=[0x181A], appearance=_ADV_APPEARANCE_GENERIC_THERMOMETER) self._advertise() def _irq(self, event, data): # Track connections so we can send notifications. if event == _IRQ_CENTRAL_CONNECT: conn_handle, _, _, = data self._connections.add(conn_handle) elif event == _IRQ_CENTRAL_DISCONNECT: conn_handle, _, _, = data self._connections.remove(conn_handle) # Start advertising again to allow a new connection. self._advertise() def set_temperature(self, temp_deg_c, notify=False): # Data is sint16 in degrees Celsius with a resolution of 0.01 degrees Celsius. # Write the local value, ready for a central to read. self._ble.gatts_write(self._handle, struct.pack('<h', int(temp_deg_c * 100))) if notify: for conn_handle in self._connections: # Notify connected centrals to issue a read. self._ble.gatts_notify(conn_handle, self._handle) def _advertise(self, interval_us=500000): self._ble.gap_advertise(interval_us, adv_data=self._payload) def demo(): ble = bluetooth.BLE() temp = BLETemperature(ble) t = 25 i = 0 while True: # Write every second, notify every 10 seconds. i = (i + 1) % 10 temp.set_temperature(t, notify=i == 0) # Random walk the temperature. t += random.uniform(-0.5, 0.5) time.sleep_ms(1000) if __name__ == '__main__': demo()  

  • 回复了主题帖: 【micropython】ESP32中已经加入bluetooth模块

    youxinweizhi 发表于 2019-10-17 17:37 有例程可以参考吗?
    http://431.ib939.com/947/thread-1094168-1-1.html

  • 发表了主题帖: 【micropython】蓝牙BLE的例程

    官方的BLE例程出来了   http://www.ib939.com/926/micropython/micropython/tree/master/examples/bluetooth  

  • 发表了主题帖: 【micropython】ESP32固件的默认频率修改为160M了

    为了与ESP IDF保持一致,并支持更多开发板,ESP32固件的默认频率修改为160M。 http://431.ib939.com/micropython/micropython/commit/59c1b7d4b8fb1d441f9322976582c8709f01dfbe  

  • 回复了主题帖: 【SAMR21新玩法】34. 模拟USB鼠标键盘

    USB鼠标键盘演示,当按下触摸键A0时,鼠标做圆圈运动;按下A1,发送数字1;按下A2,发送字母a。   import usb_hid from time import sleep import touchio from board import * import math tp1 = touchio.TouchIn(A0) tp2 = touchio.TouchIn(A1) tp3 = touchio.TouchIn(A2) kb = usb_hid.devices[0] mouse = usb_hid.devices[1] n = 0 while 1: sleep(0.1) if tp1.value: t = n*math.pi/360 x, y = round(10*math.cos(t)), round(10*math.sin(t)) if x < 0: x += 256 if y < 0: y += 256 buf = bytes([0, x, y, 0]) print(n, buf[0], buf[1] ,buf[2], buf[3]) mouse.send_report(buf) n += 10 if tp2.value: kb.send_report(bytes([0, 0, 0x1E, 0, 0, 0, 0, 0])) sleep(0.01) kb.send_report(bytes(8)) kb.send_report(bytes(8)) if tp3.value: kb.send_report(bytes([0, 0, 0x04, 0, 0, 0, 0, 0])) sleep(0.01) kb.send_report(bytes(8)) kb.send_report(bytes(8))  

  • 回复了主题帖: 【SAMR21新玩法】34. 模拟USB鼠标键盘

    鼠标的使用方法和键盘类似,区别在于使用了device[1],数据是4字节:   mouse = usb_hid.devices[1] mouse.send_report(bytes([0, 100, 0, 0]))   上面的程序,将鼠标位置右移100(x方向)。   缓冲区的数据,第一个代表鼠标按键;第2/3个代表X/Y方向移动距离;第4个字节代表滚动。  

  • 回复了主题帖: 【SAMR21新玩法】34. 模拟USB鼠标键盘

    注意注意USB HID发送的键盘数据并不是字符的ASCII码,而是USB协议定义的数据,具体数据可以参考USB协议中的规定,也可以参考下面精简的表格  

  • 回复了主题帖: 【SAMR21新玩法】34. 模拟USB鼠标键盘

    replyreload += ',' + 2913375;因为键盘缓冲区是8字节,第一个字节代表ctrl、shift、alt键状态,2-7字节代表字符,所以一次最多可以发送6个字符,将上面程序略作修改,就可以实现多个字符的发送: 游客,如果您要查看本帖隐藏内容请回复 例如,使用kb_sends(4,5,6)将发送abc。

  • 回复了主题帖: 【SAMR21新玩法】34. 模拟USB鼠标键盘

    replyreload += ',' + 2913373;上面只是基本的使用方式,具体的使用如下,USB键盘的使用方法:   游客,如果您要查看本帖隐藏内容请回复 首先定义键盘类kb,然后发送数据,代表按键按下。注意发送数据后需要再次发送0,代表按键释放,否则系统会一直发出按键。例如,下面将发送字母a:   kb_send(4)  

  • 发表了主题帖: 【SAMR21新玩法】34. 模拟USB鼠标键盘

    和MicroPython一样,在CircuitPython中,可以非常容易的模拟USB HID设备,可以将设备作为USB键盘或者USB鼠标。先看一下USB HID的基本用法:   import usb_hid kb = usb_hid.devices[0] kb.send_report(buf) buf是bytes或者bytearray类型,对于键盘,需要发送8字节的数据,而对于鼠标,需要发送4字节数据。 此内容由EEWORLD论坛网友dcexpert原创,如需转载或用于商业用途需征得作者同意并注明出处  

  • 回复了主题帖: 【SAMR21新玩法】33. RTC

    相比micropython,circuitpython目前的RTC功能少一些,不支持RTC回调函数,也就不能通过RTC从休眠中唤醒。此外需要注意两者的时间格式也不同。

  • 发表了主题帖: 【SAMR21新玩法】33. RTC

    本帖最后由 dcexpert 于 2019-10-18 09:19 编辑 circuitpython支持RTC功能。RTC的使用很简单,基本用法如下: import rtc r = rtc.RTC() r.datetime   datetime的返回值是一个struct_time的类,如: struct_time(tm_year=2000, tm_mon=1, tm_mday=1, tm_hour=0, tm_min=17, tm_sec=53, tm_wday=5, tm_yday=1, tm_isdst=-1)   如果需要改变rtc的时间,直接给datetime赋值即可,参数类型也是struct_time,如: r.datetime = time.struct_time((2019,10,17,22,00,00,4,1,-1)) 此内容由EEWORLD论坛网友dcexpert原创,如需转载或用于商业用途需征得作者同意并注明出处  

最近访客

< 1/6 >

统计信息

已有1852人来访过

  • 芯币:46738
  • 好友:44
  • 主题:1165
  • 回复:6522
  • 课时:1
  • 资源:14

留言

你需要登录后才可以留言 登录 | 注册


dcexpert 2019-4-7
和C语言中用法是一样的
szl123456 2019-4-6
您好 我正在在micropython上搞485通信,因为没有历程,大家好像都没搞过 大神能指导一下吗   help  help
werjufour 2018-8-28
你好!向你请教个问题。PIC24fj64ga004 AD转换值放在哪个寄存器当中?
MSYuan0317 2018-8-9
您好!我们是代理乐鑫产品的,如果有需要可以联系我,QQ:285254096 ,谢谢!
dcexpert 2018-8-2
在《MicroPython中文教程》电子版和《MicroPython入门指南》一书中都有
15588608145 2018-8-2
具体的MicroPython所支持的模块和语法说明在哪里呢?
MSYuan0317 2018-7-27
您好!我们是代理乐鑫产品的,如果有需要可以联系我,QQ:285254096 ,谢谢!
dcexpert 2018-6-6
还没有开始做,等做好了我送你两片
mo2016 2018-6-6
DIY一个micropython的多功能无线电子钟 想要有偿PCB板二片,谢谢!
dcexpert 2015-1-22
不是5个DIY项目,是围绕DIY F429示波器,有5个小专题,希望大家一起讨论完成。

5个都在DIY示波器帖子中的。
澳门永利网上娱乐场登入
永利游戏现金直营 2015-1-22
5个DIY项目,我就查到示波器,还有4个能给出链接么?
查看全部
千亿AG捕鱼王 奥斯卡快乐十分计划群大全 澳门威斯汀酒店闹鬼登入 银河彩票官网 竞彩网娱乐直营网
庄闲大数投注法 1777.com登入 太子娱乐网址 澳门夜店好玩吗 澳门为何不禁赌登入
澳门旅游系収 明珠娱乐城 庄闲和概率登入 九州娱乐城 对子百家乐
mg幸运女巫 菲律宾申博太阳城JACKPOT中奖网上娱乐场 金沙娱乐注册直营网登入 菲律宾申博国际娱乐开户 珠海哪里过关澳门