nrf24l01收发器的circuitpython驱动程序库
circuitpython-nrf24l01的Python项目详细描述
简介
nrf24l01收发器的circuitpython驱动程序库
当前支持的功能
- 更改地址的长度(可以是3到5字节长)
- 动态调整有效载荷大小(每个最大32字节)或静态调整有效载荷大小
- 用于验证传输成功的自动响应确认(ACK)
- 双向通信的自定义确认(ACK)有效负载
- 为接收到的nrf24l01的无确认(ack)标记单个有效负载
- "重复使用相同的有效负载"功能(用于手动重新传输保留在缓冲区中的失败传输)
- 一个函数调用的多个有效负载传输(必须阅读有关"send()"函数的文档)
- 上下文管理器兼容,可使用"with"语句在不同的收音机配置之间轻松切换
- 将中断(IRQ)引脚配置为在接收、发送和/或失败传输时触发(活动低电平)(这3个标志控制1个IRQ引脚)。也有这些中断标志的虚拟表示(参见"irq_dr"、"irq_ds"、"irq_df"属性)
- 为超低电流消耗调用睡眠模式(也称为断电模式)
- 循环冗余检查(CRC)最长为2字节
- 调整nrf24l01内置自动重新传输功能的参数(arc:尝试次数,ard:尝试之间的延迟)
- 调整nrf24l01的频率通道(2.4-2.525ghz)
- 调整NRF24L01的功率放大器电平(0、-6、-12或-18 dBm)
- 调整nrf24l01的射频数据速率(由于硬件设计,250kbps是错误的,但是1Mbps和2Mbps是可靠的)
当前不支持的功能
- 到目前为止,还没有[预期的]多接收模式的实现(最多6个TX NRF24L01同时与1个RX NRF24L01"通话")。尽管使用相应设置的"自动重试延迟"(ARD)和"自动重试计数"(ARC)属性可以很容易地实现这一点(可能很高)。
- 由于未知原因,由该库驱动的nrf24l01不会在由tmrh20 rf24库驱动的arduino上与nrf24l01"对话"。当由这个库驱动的nrf24l01与同样由这个库驱动的另一个nrf24l01"对话"时没有问题。 其他基于arduino的nrf24l01库可用,但尚未测试它们是否与此电路python-nrf24l01库通信。