完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
可能的原因是I2C通信和串口使用了相同的中断向量或者优先级冲突了。您可以尝试以下几种方法来解决这个问题:
1. 调整中断优先级:根据数据表中的描述,I2C中断的优先级为3,串口中断的优先级为2。您可以尝试将I2C中断的优先级设置为低于2,或者将串口中断的优先级设置为高于3。 2. 关闭I2C中断:如果您不需要I2C通信时,可以考虑关闭I2C中断,并在需要使用时再打开。这样可以避免I2C中断和串口中断的冲突。 3. 使用DMA传输:如果您需要大量的数据传输,可以考虑使用DMA传输来代替中断传输。这样可以避免中断的竞争,并提高效率。 4. 增加延时:如果您的程序在I2C通信和串口中断之间频繁切换,可以考虑增加一些延时,让两个中断有足够的时间执行完成。 |
|
|
|
只有小组成员才能发言,加入小组>>
854 浏览 0 评论
1181 浏览 1 评论
2558 浏览 5 评论
2890 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2749 浏览 6 评论
keil5中manage run-time environment怎么是灰色,不可以操作吗?
1168浏览 3评论
213浏览 2评论
481浏览 2评论
394浏览 2评论
M0518 PWM的电压输出只有2V左右,没有3.3V是怎么回事?
477浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-1-11 12:10 , Processed in 0.851494 second(s), Total 46, Slave 37 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号