发 帖  
[问答]

NRF24L01自动应答和不自动应答的区别是什么?

2941 nRF24L01
2020-7-25 01:30:05   评论 分享淘帖 邀请回答 举报
10个回答
2020-7-25 09:45:20 评论

举报









[C] 纯文本查看 复制代码
发送函数:
[C] 纯文本查看 复制代码
//启动NRF24L01发送一次数据//txbuf:待发送数据首地址//返回值:发送完成状况unsigned char NRF24L01_TxPacket(unsigned char *txbuf){unsigned char sta;//SPI_InitTypeDef SPI_InitStructure;//////设置SPI1的速率   //SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_8;//SPI_Init(SPI1,&SPI_InitStructure);//SPI_Cmd(SPI1,ENABLE); //使能SPI1NRF24L01_CE_Reset;NRF24L01_Write_Buf(NRF24L01_Command_WRITE_RX_PAYLOAD ,txbuf,TX_PLOAD_WIDTH);//写数据到TX BUF  32个字节NRF24L01_CE_Set;//启动发送while(NRF24L01_IRQ != 0);//等待发送完成//while(CheckACK());sta = NRF24L01_Read_Register( NRF24L01_Register_STATUS );  //读取状态寄存器的值   //USART_SendData(USART1,sta);NRF24L01_Write_Register(NRF24L01_Command_WRITE_RESISTER + NRF24L01_Register_STATUS,sta); //清除TX_DS或MAX_RT中断标志if(sta & MAX_TX)//达到最大重发次数{NRF24L01_Write_Register(NRF24L01_Command_FLUSH_TX,0xff);//清除TX FIFO寄存器 return MAX_TX; }if(sta & TX_OK)//发送完成{return TX_OK;}return 0xff;//其他原因发送失败}




[C] 纯文本查看 复制代码
主函数:
[C] 纯文本查看 复制代码
int main(void){        RCC_Configuration();   //用外部的晶振 来产生时钟Usart_Configuration();    Systick_configuration();NRF24L01_Init();delay_ms(100);printf(" Hello..rn"); printf("SPI Test--NRF24L01 Test...rn");printf("两个嘴巴笑rn");printf("2014-07-13rnrn");delay_ms(1000);while(NRF24L01_Check()){printf("NRF24L01 Check Failed!rn");printf("两个嘴巴笑rn");printf("2014-07-13rnrn");delay_ms(1000);}printf("NRF24L01 Check Success!rn");printf("两个嘴巴笑rn");printf("2014-07-13rnrn");delay_ms(1000);while(1){NRF24L01_TX_Mode();if(NRF24L01_TxPacket(buff) == TX_OK){printf("NRF24L01 Send Success!rn");printf("两个嘴巴笑rn");printf("2014-07-13rnrn");delay_ms(100);}else{printf("NRF24L01 Send Failed!rn");printf("两个嘴巴笑rn");printf("2014-07-13rnrn");delay_ms(1000);}}}



运行结果:但是在另外一块战舰的板子上接收不到数据。




2020-7-25 09:54:59 评论

举报

2020-7-25 10:02:33 评论

举报

2020-7-25 10:20:29 评论

举报

2020-7-25 10:28:48 评论

举报

2020-7-25 10:41:26 评论

举报

2020-7-25 10:47:03 评论

举报

2020-7-25 10:54:36 评论

举报

2020-7-25 11:11:34 评论

举报

头像被屏蔽
2020-7-25 11:23:20 评论

举报

只有小组成员才能发言,加入小组>>

460个成员聚集在这个小组

加入小组

创建小组步骤

快速回复 返回顶部 返回列表
关注微信公众号

电子发烧友网

电子发烧友论坛

社区合作
刘勇
联系电话:15994832713
邮箱地址:liuyong@huaqiu.com
社区管理
elecfans短短
微信:elecfans_666
邮箱:users@huaqiu.com
关闭

站长推荐 上一条 /6 下一条

快速回复 返回顶部 返回列表