STM32
直播中

风尚男人

8年用户 900经验值
私信 关注
[问答]

为什么NRF24L01接收端更新程序或者按复位键后其通讯就无法正常运行呢

为什么NRF24L01接收端更新程序或者按复位键后其通讯就无法正常运行呢?这是什么原因?怎样去解决呢?

回帖(1)

宁晓蕾

2021-12-16 14:12:27
问题:在调通一对NRF24L01后,当NRF24L01接收端更新程序或者按复位键后,通讯就无法正常运行,只有接收端断电重启后才能继续通讯
原因:STM32复位时,NRF24L01并没有复位,接收端依旧再接收,并产生中断,不再接收数据,但是STM32外部中断设置的是跳变沿触发,并不会进行处理
解决方法:在设置RX模式的函数中加入了清除RX FIFO和清除所有中断的指令
这是我第一次写博客,本人是自学STM32的,NRF24的使用是根据网上很多例程写的,之前使用就发现这个问题,但是一直在网上找不到原因(应该是我没搜到),直到这次重新梳理程序做实验,找到了这个错误点,就决定分享出来给可能遇到这个问题的同志。因为我技术水平还比较低,如果有错误的地方,请各位大神帮忙指正。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分