[STM32H7] STM32H743使用ICAHE和DCAHE后串口中断不触发

[复制链接]
2304|13
 楼主| 可怜的小弗朗士 发表于 2024-5-29 23:17 | 显示全部楼层 |阅读模式
为何STM32H743使用ICAHE和DCAHE后串口空闲中断不触发,一直以为串口配置出了问题,屏蔽就好了,为啥呢
白马过平川 发表于 2024-6-13 15:12 | 显示全部楼层
在STM32H743微控制器中使用ICAHE和DCAHE时,可能会影响串口空闲中断的触发。
西洲 发表于 2024-6-13 18:00 | 显示全部楼层
启用了缓存后,对于串口数据的读取和处理可能会受到缓存的影响,导致串口空闲中断无法正确触发。
捧一束彼岸花 发表于 2024-6-13 20:00 | 显示全部楼层
当启用了缓存后,串口接收到的数据可能会被缓存,而不是立即传递给串口接收缓冲区。这可能导致串口空闲中断无法正确检测到数据的接收情况,从而无法触发中断。
风凉 发表于 2024-6-13 22:00 | 显示全部楼层
通过屏蔽缓存,可能会暂时解决这个问题,因为屏蔽缓存后,数据将不再受到缓存的影响,可以正常传递给串口接收缓冲区,从而使得串口空闲中断能够正确触发。
故意相遇 发表于 2024-6-14 02:00 | 显示全部楼层
为了解决这个问题,可以尝试一下禁用缓存哈
未说出口的像你 发表于 2024-6-14 04:00 | 显示全部楼层
如果串口空闲中断对系统性能要求不高,可以暂时禁用缓存,以确保串口数据能够正常传递和触发中断。
一只眠羊 发表于 2024-6-14 08:00 | 显示全部楼层
尝试调整缓存策略,使得串口数据能够正确地被缓存和传递,同时保证串口空闲中断能够正确触发。
月亮一键变蓝 发表于 2024-6-14 10:00 | 显示全部楼层
联系厂商支持,建议联系STM32H743的厂商技术支持团队,寻求进一步的帮助和建议。
我吃小朋友 发表于 2024-6-14 12:00 | 显示全部楼层
需要注意的是,启用缓存可能会提高系统性能,但也需要谨慎处理与外设交互的情况,以确保外设操作的正确性
在曼谷的春 发表于 2024-6-14 15:00 | 显示全部楼层
那你关闭这个缓存呗,估计很多时候都用不上吧
EmmaTT 发表于 2024-6-18 21:59 | 显示全部楼层
检查一下程序配置呗
突然下起雨 发表于 2024-6-30 14:36 | 显示全部楼层
当使能了指令和数据缓存后,微控制器的缓存机制可能会导致外设访问内存的时间不一致或延迟,这可能会干扰串口空闲中断的触发条件的检测。串口空闲中断通常依赖于一段时间内没有收到新的数据字节来判断。
香水城 发表于 2024-6-30 17:32 | 显示全部楼层
问题过于简洁,开启空闲后有些数据一致性问题,尤其使用DMA的时候。

按理空闲事件及中断不会被cache所影响。

基于STM32H7 uart空闲事件的传输
您需要登录后才可以回帖 登录 | 注册

本版积分规则

101

主题

763

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部