30、51单片机应用之............无线通讯模块 NRF24L01+(一)基础知识篇 今天刚调试好,先看图吧!这张是AT89C2051控制NRF24L01+做发射调试。 看看NRF24L01细节吧! 这是LCD 屏显示: AT89S52做接收测试: 正在接收时的显示: 接收到数据后显示32个数据值: 无线模块NRF24L01+应用上篇结束,敬请期待NRF24L01+下篇的调试部分。。。。 31、51单片机应用之............无线通讯模块NRF24L01+(二)模块调试篇 32、51单片机应用之............无线通讯模块 NRF24L01+(三)发送与接收模块的联调 33、51单片机应用之............无线通讯模块 NRF24L01+(四)举例应用 34、补充 NRF24L01+之————LED 调试篇 写了前面四篇关于 NRF24L01通讯调试的文章,看来大家还是很喜欢,有帮助的。有很多大学生朋友问我说,我们没有两个 LCD 来显示调试状态,连一个也没有,能不能用几个 LED 来显示调试状态呢?因此我就写这篇补充调试的文章,就用 P0口的8个 LED 来显示调试 NRF24L01到成功进行数据通讯。 先把51单片机的最小系统准备好,还有8个 LED 的小电路板,如果你的 LED 就在系统板上那省了这一步。 8个 LED 的小板子电路很简单,但你焊接要可靠,不然电路本身都不稳定,后面对判断故障会产生很大影响。 NRF24L01+模块电路还是前面说过的那样: 相同的两个模块的板子。 好!假设我们用P0口来作LED 显示、用P1口来作模块接口,下面我们先写一段最简单的程序,来确认 LED 电路,和 P0、P1口的完好! #include #include #define uint unsigned int typedef unsigned char uchar; //********************************* // 延时函数 // 在晶振为12MHz 时,延时 count 毫秒 //********************************* void Delayms(uint count) { uint i; while(count--) { for(i=0;i<80;i++){} } _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); } //********************************* // 主函数 //********************************* void main() { P0=0x00; //P0口LED 点亮 P1=0x00; //P1口LED 点亮 P2=0x00; P3=0x00; Delayms(2000); //延时2秒 while(1) { P0=~P0;//将P0口数据取反,原来亮的就熄灭 P1=~P1;//将P1口数据取反,原来亮的就熄灭 P2=~P2; P3=~P3; Delayms(500); //延时半秒 } } 这是段极简单的程序,用来检测...