"); //-->
一、XL2400 简介
XL2400是目前市面上热门的一颗 2.4G 射频收发芯片,和 XN297L 一样,都属于 nRF24L01 派生的 SOP8版本。 在寄存器和操作上类似于 nRF24L01, 但是寄存器中存在大量多字节的设置,没有中断,完全靠轮询工作,这是这个型号的特点。性价比相对更高,性能更好,外围电路更简洁。
在兼容性上,和 XN297L 管脚布局一致但是寄存器不一样,比 XN297L 的外围电路元件更少,只需要一个 16MHz 晶振,两个电容就能工作。和 XN297L 比管脚和寄存器都不一样。
具体的参数可以查看芯岭技术官网上的产品介绍 和手册 XL2400 规格书 V2.0a.pdf,XL240X 应用说明 v2.1a.pdf。
二、XL2400 管脚和典型电路
直接看电路和代码
管脚定义
电路
电路非常简单,C3 可以省略,C7 可以用 1pF 至 3pF。
XL2400 模组:
三、STC8H 驱动 XL2400
驱动说明
从测试的过程看,基于 GPIO 模拟 SPI 驱动比较稳妥,如果用硬件 SPI,收发的通信成功率太低。STC8H 对三线 SPI 半双工通信没有说明,还需要进一步尝试。 因此以下仅说明基于 GPIO 模拟 SPI 驱动的方式。
接线
示例代码中,使用了与硬件 SPI 一样的 Pin,实际上换成其他 Pin 也一样,因为都是通过 GPIO 模拟驱动。
四、示例代码
代码,开发资料包下载地址:www.xinlinggo.com
在 SPI 目录下也有硬件 SPI 驱动方式的代码,通信效果较差,有兴趣的可以试一下。
XL2400 的 CE 操作
XL2400 的初始化
XL2400 发送
发送沿用了官方例子,在写入发送内容,拉高 CE 后, 轮询状态等待发送结果。如果是MAX_RT 或 TX_DS_FLAG 则返回结果。
XL2400 接收
也沿用了官方例子,轮询等待待接收结果状态,并读出接收到的字节。
每次在调用 之前, 需要设置一下 RX 状态, 否则不会接收。
XL2400 通信速率
时间有限没有充分测试,仅测试了 1Mbps 速率开启 ACK 情况下的通信情况。接收不设间隔,发送间隔为 2 - 3 毫秒时达到最高速率,大约每 1.7 秒发送 256 组,每组 32 个字节,速率为 4.8K 字节每秒。
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。