UART 实现标准的 UART/USART 双工串行通信协议。在物理层,它由 2 条线组成:RX 和 TX。通信单位是一个字符(不要与字符串字符混淆),它可以是 8 位或 9 位宽。
可以使用以下方法创建和初始化 UART 对象:
from machine import UART
uart = UART(1, 9600) # init with given baudrate
uart.init(9600, bits=8, parity=None, stop=1) # init with given parameters
支持的参数因电路板而异:
UART 对象就像一个stream 对象,读写是使用标准流方法完成的:
uart.read(10) # read 10 characters, returns a bytes object
uart.read() # read all available characters
uart.readline() # read a line
uart.readinto(buf) # read and store into the given buffer
uart.write('abc') # write the 3 characters
构造给定 id 的 UART 对象。
使用给定的参数初始化 UART 总线:
baudrate是时钟速率。
bits是每个字符的位数,7、8 或 9。
parity是奇偶校验,None0(偶数)或 1(奇数)。
stop是停止位的数量,1 或 2。
端口可能支持的其他仅关键字参数包括:
tx指定要使用的 TX 引脚。
rx指定要使用的 RX 引脚。
txbuf指定 TX 缓冲区的字符长度。
rxbuf指定 RX 缓冲区的字符长度。
timeout指定等待第一个字符的时间(以毫秒为单位)。
timeout_char指定在字符之间等待的时间(以毫秒为单位)。
invert指定要反转的行。
关闭 UART 总线。
返回一个整数,计算可以在不阻塞的情况下读取的字符数。如果没有可用字符,则返回 0,如果有字符,则返回正数。即使有多个字符可供读取,该方法也可能返回 1。
要更复杂地查询可用字符,请使用 select.poll:
poll = select.poll()
poll.register(uart, select.POLLIN)
poll.poll(timeout)
读取字符。如果nbytes指定,则最多读取那么多字节,否则读取尽可能多的数据。如果达到超时,它可能会更快返回。超时可在构造函数中配置。
返回值:包含读入字节的字节对象。None 超时时返回。
将字节读入buf. 如果nbytes 指定,则最多读取那么多字节。否则,最多读取len(buf) 字节。如果达到超时,它可能会更快返回。超时可在构造函数中配置。
返回值:读取并存储到buf 或 None 超时的字节数。
读取一行,以换行符结尾。如果达到超时,它可能会更快返回。超时可在构造函数中配置。
返回值:读取或 None 超时的行。
将字节缓冲区写入总线。
返回值:写入或 None 超时的字节数。
在总线上发送中断条件。这会在比正常传输字符所需的时间更长的时间内将总线驱动为低电平。
递归简单点来说,就是一个函数直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解。
相信很多人都有把绿植给养死的经历,可能是浇水过多、忘记浇水、较长时间不在家不能浇水等,本文介绍一种可以灵活定制的智能浇花方案。
MicroPython 在 ESP32 上支持线程(Thread)功能,通过_thread模块实现。线程允许程序并发执行多个任务,适合处理需要同时运行的场景,例如传感器数据采集和网络通信。
使用了 MicroPython 库,通过 定时器(Timer) 和 ADC(模数转换器) 功能来实时读取传感器数据。使用定时器可以实现高精度、非阻塞、低资源消耗的周期性任务,保证实时性和可靠性,特别适用于嵌入式系统中的多任务处理和低功耗场景。
machine.pwm是MicroPython中用于控制PWM输出的模块之一,它提供了一些方法和属性,用于设置和控制PWM输出的频率、占空比等参数,从而实现对各种应用场景的控制。
Pin 类是 machine 模块下面的一个硬件类,用于对引脚的配置和控制,提供对 GPIO 的操作方法。
本文学习如何使用ESP32开发板来进行多线程的开发。
MicroPython的SPI是一个用于进行串行外设接口总线协议的类。
本文以一个简单的例程帮助大家在 MicroPython 下使用 I2C
binascii模块实现了相应 CPython 模块的一个子集。
Thonny是一款免费的、开源的、易于使用的编程语言,旨在为初学者提供简单易用的编程环境。 Thonny的语法简洁易懂,同时还支持自动补全和语法高亮,使得编程变得更加便捷。