12
返回列表 发新帖我要提问本帖赏金: 40.00元(功能说明)

[方案相关] DMA串口超时中断+DMA数据传输

[复制链接]
7759|40
 楼主| woai32lala 发表于 2024-3-8 10:29 | 显示全部楼层
李旭昂 发表于 2024-3-8 09:56
不是的哥,我现在配置的是接收中断+超时中断的方式,没有去用DMA进行数据接收,现在的问题是接收中断可以 ...

看看清除中断时候是不是一起清掉了 或者使能开了没
小夏天的大西瓜 发表于 2024-3-27 10:27 | 显示全部楼层
串口通信是目前单片机常用的一种,方便简单
yu770908408 发表于 2024-4-10 21:24 | 显示全部楼层
太感谢了!!! 我看了一整天,头都大了,确实是Timer0时钟源的问题!!!
 楼主| woai32lala 发表于 2024-4-10 22:15 | 显示全部楼层
yu770908408 发表于 2024-4-10 21:24
太感谢了!!! 我看了一整天,头都大了,确实是Timer0时钟源的问题!!!

哈哈,我也被坑了好久
rrr335201 发表于 2024-7-11 18:11 | 显示全部楼层
很好,也有全面,专业,实在值得感谢。对于基础不高的网友,可以启发。
WT418995874 发表于 2025-4-25 15:42 | 显示全部楼层
请问下。需要开启超时中断。必须是内部32.768K时钟或者外部32.768K时钟吗?
 楼主| woai32lala 发表于 2025-4-27 08:33 | 显示全部楼层
WT418995874 发表于 2025-4-25 15:42
请问下。需要开启超时中断。必须是内部32.768K时钟或者外部32.768K时钟吗?

可以使用内部低速RC
 楼主| woai32lala 发表于 2025-4-27 08:37 | 显示全部楼层
woai32lala 发表于 2025-4-27 08:33
可以使用内部低速RC

84850680d7c1f61e3e.png 目前来看,内部低速RC也是32K的
WT418995874 发表于 2025-4-27 13:41 | 显示全部楼层
woai32lala 发表于 2025-4-27 08:37
目前来看,内部低速RC也是32K的

是的,已经试过内部32K时钟,确认可以,PLL时钟也可以
 楼主| woai32lala 发表于 2025-4-27 15:22 | 显示全部楼层
WT418995874 发表于 2025-4-27 13:41
是的,已经试过内部32K时钟,确认可以,PLL时钟也可以

Ok
原来是wjc 发表于 2025-5-31 17:25 | 显示全部楼层
注意DMA缓冲区溢出处理
小熊01 发表于 2025-6-4 14:29 | 显示全部楼层
项目用上这功能真不错,又涨知识了!
死不低头 发表于 2025-6-4 23:16 | 显示全部楼层
小华这个有点复杂,没有空闲中断。串口这玩意如果有DMA,直接开启DMA放轮询里去检查状态收发460800波特率也没什么问题
weifeng90 发表于 2025-6-5 08:09 来自手机 | 显示全部楼层
利用DMA实现外设的数据收发效率是最高的
单芯多芯 发表于 2025-6-5 08:51 | 显示全部楼层
DMA传输支持连续传输,它允许数据块之间无缝切换,提高传输效率。
dreamCar 发表于 2025-6-9 15:39 | 显示全部楼层
具体多少个时钟周期算超时,取决于单片机时钟配置和中断设置。
AIsignel 发表于 2025-6-11 21:20 | 显示全部楼层
超时中断通常由定时器计数溢出、外部事件或特定指令执行超时触发。
MintMilk 发表于 2025-6-12 22:40 | 显示全部楼层
使用DMA时,确保中断服务程序中处理完所有相关任务,如接收数据校验和,以避免数据在传输过程中的损坏。
明日视界 发表于 2025-6-18 13:44 | 显示全部楼层
DMA能让外设直接与内存通信,减少CPU干预,从而大幅提升数据收发效率。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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