经过4到5天的学习, 终于把 NRF24L01 调通了, 之前是在论坛上看到 各位高人的 指点, 自己在 摸索了一下,
学习时间不长, 可能 还有许多 东西没搞懂, 还需要继续努力啊。 大家也来分享一下 自己的学习经历吧。
下面是我的程序, 希望对初学者 有所帮助!!热烈欢迎大侠们来指点下我的程序 哪里有不足的地方。
C程序 注释的 已经很清楚了。
最后说说 我的一个问题吧, 就是一对多的数据传输问题。
我是采用广播的方式 好呢? 还是 按照 自己的程序里写的单点指定发送好?
我个人觉得 如果是广播方式,可以有N个接收设备。
而单点指定发送,那么仅仅只能有6个接收设备,因为只能发送6个地址。
期盼大家来指点哦。
24L01函数
ourdev_672677FN4BZY.rar(文件大小:1.03M) (原文件名:无线2401.rar)
/*************************接收数据*********************************************/
void GetDate()
{
unchar RX_P_NO;//接收通道号
sta=NRFReadReg(R_REGISTER+STATUS);//发送数据后读取状态寄存器
if(RX_DR) // 判断是否接收到数据
{
RX_P_NO=sta&0x0e;//获取通道号
CE=0;//待机
switch(RX_P_NO)
{
case 0x00:NRFReadRxDate(R_RX_PAYLOAD,RevTempDate0,RX_DATA_WITDH);break;// 从RXFIFO读取数据通道0
case 0x02:NRFReadRxDate(R_RX_PAYLOAD,RevTempDate1,RX_DATA_WITDH);break;// 从RXFIFO读取数据通道1
如果要再增加一个通道2,怎么写,地址该设为什么。。望能指点,谢谢了!
一周热门 更多>