完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
求教各位大佬,我在做nrf24l01的通信实验时,在程序中加了一个PB5的外部中断,这个外部中断加上后发现nrf24l01模块就不能正常的接收数据了,偶尔能接收一次,PB5连的是mpu9250的INT引脚,200Hz的输出速率,求大佬指导
|
|
相关推荐
9个回答
|
|
这个你就要压缩一下故障,
首先反复确认一下是否加PB5中断就不正常; 如果确实如此就临时简化一下PB5中断服务程序(比如直接清中断返回), 如果简化后正常,就说明是PB5现有服务与2401有冲突, 如果简化后仍不正常,那就是引脚冲突等其它问题了。 |
|
|
|
|
|
|
|
|
|
|
|
嗯嗯,PB5和2401没有关系,2401接收用的是原子哥的例程,没有用中断吧,IRQ连的是PB1引脚
|
|
|
|
目测楼主是直接在开发板上进行的实验?MPU9250使用IIC方式还是SPI方式?还有就是你要做什么?准确、具体地描述问题能够让别人更好地帮助你解决问题。
5#的建议不错,我再加一个猜想,有可能是MCU和NRF24L01正在通信中,结果突然外部中断产生,打断了原本正常的和NRF24L01的通讯时序,造成无法正常读取到数据;如果碰巧外部中断产生的时候不在和NRF通讯时,那么楼主就能接受到数据,也就是楼主所说的“偶尔能接收一次”的可能原因。 另外如果使能外部中断,那么MPU9250能否正常工作? |
|
|
|
问题解决了么?
|
|
|
|
有进展,但是还没有完全解决,之前加中断就不能接受数据的原因是没有清除中断标志位,现在改正之后,又出现了一个新问题
|
|
|
|
图中是我的接收端的中断服务函数,发送端和接收端上电后可以进行数据收发,我在发送端用一个按键控制RemoteControl[0] ,让它在0和1之间切换,上电后为初始值0,我发现我现在只要一按这个按键,使RemoteControl[0] = 1 之后,就会发送失败,搞不懂
|
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
如何使用STM32+nrf24l01架构把有线USB设备无线化?
2544 浏览 7 评论
请问能利用51单片机和nRF24L01模块实现实时语音无线传输吗?
2331 浏览 5 评论
3158 浏览 3 评论
2803 浏览 8 评论
为什么ucosii上移植lwip后系统进入了HardFault_Handler?
2761 浏览 4 评论
请教各位大咖:有没有接收频率32M左右的芯片推荐的?先感谢啦!
609浏览 1评论
854浏览 0评论
969浏览 0评论
622浏览 0评论
448浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-24 13:19 , Processed in 1.139975 second(s), Total 93, Slave 76 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号