完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
自己想用NRF24L01做一辆无线遥控的小车 现在在通信部分遇到了一点问题
我把MINI开发板中的例程改了一点但是接收不到数据 [C] 纯文本查看 复制代码 int main(void) { u8 key,mode;u16 t=0; u8 adcx1[1]={0},adcx2[1]={0}; delay_init(); NVIC_Configuration(); uart_init(9600); LED_Init(); LCD_Init(); KEY_Init(); NRF24L01_Init(); Adc_Init(); POINT_COLOR=RED; LCD_ShowString(60,50,200,16,16,"Mini STM32");LCD_ShowString(60,70,200,16,16,"NRF24L01 TEST");LCD_ShowString(60,90,200,16,16,"ATOM@ALIENTEK");LCD_ShowString(60,110,200,16,16,"2014/3/12"); while(NRF24L01_Check()){LCD_ShowString(60,130,200,16,16,"NRF24L01 Error");delay_ms(200);LCD_Fill(60,130,239,130+16,WHITE); delay_ms(200);}LCD_ShowString(60,130,200,16,16,"NRF24L01 OK"); while(1){key=KEY_Scan(0);if(key==KEY1_PRES){mode=1;break;}t++;if(t==100)LCD_ShowString(10,150,230,16,16,"KEY0:RX_Mode KEY1:TX_Mode"); if(t==200){LCD_Fill(10,150,230,150+16,WHITE);t=0; }delay_ms(5); } LCD_Fill(10,150,240,166,WHITE); POINT_COLOR=BLUE; if(mode==1){ LCD_ShowString(60,150,200,16,16,"NRF24L01 TX_Mode");NRF24L01_TX_Mode();while(1){ adcx1[0]=Get_Adc(ADC2,ADC_Channel_10)/32;adcx2[0]=Get_Adc(ADC2,ADC_Channel_13)/32;if(NRF24L01_TxPacket(adcx1)==TX_OK&&NRF24L01_TxPacket(adcx2)==TX_OK){LCD_ShowString(60,170,239,32,16,"Sended DATA:");LCD_ShowxNum(170,170,adcx1[0],4,16,0); LCD_ShowxNum(170,190,adcx2[0],4,16,0);}else{ LCD_ShowString(60,170,239,32,16,"Send Failed "); LCD_Fill(0,188,240,218,WHITE); };LED0=!LED0;delay_ms(1500); };} } 下面是接受模块的 [C] 纯文本查看 复制代码 int main(void) { u8 key,mode;u16 t=0; u8 adcx1[1]={0},adcx2[1]={0}; delay_init(); NVIC_Configuration(); uart_init(9600); LED_Init(); LCD_Init(); KEY_Init(); NRF24L01_Init(); POINT_COLOR=RED;printf("Mini STM32n");printf("NRF24L01 TESTn");printf("ATOM@ALIENTEKn");printf("2014/3/12n"); while(NRF24L01_Check()){printf("NRF24L01 Errorn");delay_ms(1000);printf(" n"); delay_ms(1000);} printf("NRF24L01 OK"); while(1){key=KEY_Scan(0);if(key==KEY0_PRES){mode=0; break;}t++;if(t==100)printf("KEY0:RX_Mode KEY1:TX_Moden"); if(t==200){printf(" n");t=0; }delay_ms(5); } printf(" n"); POINT_COLOR=BLUE; if(mode==0)//RX????{printf("NRF24L01 RX_Moden");printf("Received DATA:n");NRF24L01_RX_Mode(); while(1){ if(NRF24L01_RxPacket(adcx1)==0&&NRF24L01_RxPacket(adcx2)==0){printf("RECEIVE:OK/n");printf("adcx1:%s ",adcx1); printf("adcx2:%sn",adcx2);} }}} |
|
相关推荐
4个回答
|
|
发射板子发射成功能在lcd上显示数据
但是接受的板子在串口上数据打印不出来,仿真了一下在 if(NRF24L01_RxPacket(adcx1)==0&&NRF24L01_RxPacket(adcx2)==0) 这个判断中出了问题 我的想法主要是把 发射板子上测得的ADC数据发送到接收板上 |
|
|
|
|
|
|
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
如何使用STM32+nrf24l01架构把有线USB设备无线化?
2535 浏览 7 评论
请问能利用51单片机和nRF24L01模块实现实时语音无线传输吗?
2320 浏览 5 评论
3128 浏览 3 评论
2790 浏览 8 评论
为什么ucosii上移植lwip后系统进入了HardFault_Handler?
2748 浏览 4 评论
请教各位大咖:有没有接收频率32M左右的芯片推荐的?先感谢啦!
591浏览 1评论
842浏览 0评论
949浏览 0评论
604浏览 0评论
426浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-13 06:29 , Processed in 1.174491 second(s), Total 86, Slave 68 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号