4 个版本 (2 个破坏性更新)
0.2.0 | 2020年8月14日 |
---|---|
0.1.0 | 2018年5月26日 |
0.0.1 | 2018年5月15日 |
0.0.0 | 2018年5月15日 |
#640 in 嵌入式开发
在 commune 中使用
43KB
1K SLoC
嵌入式-nrf24l01
特性
- 专为与嵌入式-hal 包协同使用而设计
- 安全且声明式的寄存器定义
- 芯片操作模式提升到类型级别
- 使用默认配置直接进入 RX/TX
仍需改进
- 自动应答支持
参考数据表
使用说明
参数
为您的微控制器单元获取 *-hal
包。找出如何访问实现这些嵌入式-hal 特性的外设
-
embedded_hal::blocking::spi::Transfer
用于 SPI 外设我们提供了一个包含一些 SPI 常数的
mod setup
-
embedded_hal::digital::OutputPin
用于 CE 引脚 -
embedded_hal::digital::OutputPin
用于 CSN 引脚(尽管这属于 SPI,但我们发现将其在软件中实现更加可靠。)
构造函数
let mut nrf24 = NRF24L01::new(ce, csn, spi).unwrap();
这将提供一个 Standby
实例。您可以使用 .rx()
或 .tx()
来将实例传输到 RXMode
和 TXMode
。它们实现了 .standby()
方法,以便返回到 Standby
然后切换到另一种模式。
RXMode
使用 rx.can_read()
来轮询(返回管道号),然后使用 rx.read()
来接收有效载荷。
TX模式
使用 tx.send()
来入队一个数据包。
使用 tx.can_send()
来防止在队列满时发送,并使用 tx.wait_empty()
来清空队列。
依赖关系
~110KB