打印
[STM32F1]

MDK中串口DMA软件仿真异常

[复制链接]
1029|43
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
tdh03z|  楼主 | 2023-7-28 07:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
MDK软件仿真串口功能,程序用DMA方式进行数据收发,串口无数据。
程序改用printf和中断方式接收,串口仿真正常。

有人知道啥问题吗?串口两种方式在硬件上可以正常收发数据,就是软件仿真不行

使用特权

评论回复
沙发
香水城| | 2023-7-31 13:23 | 只看该作者
会不会是DMA配置有问题?
你可以参考下例程。不难实现的。

使用特权

评论回复
板凳
yangjiaxu| | 2023-7-31 14:18 | 只看该作者
仿真 有些时候可能会有影响吧,但是也不会影响你的DMA啊?你这估计是哪里配置没OK吧

使用特权

评论回复
地板
香水城| | 2023-7-31 22:11 | 只看该作者
还有就是注意 不要总是将寄存器观察窗口打开,有时会影响程序的运行。
单片机调试过程中的第三只眼

使用特权

评论回复
5
earlmax| | 2023-8-4 13:12 | 只看该作者
如果DMA传输时访问了非法的内存地址,可能会导致异常

使用特权

评论回复
6
burgessmaggie| | 2023-8-4 14:18 | 只看该作者
在DMA传输过程中,建议添加适当的错误处理机制。

使用特权

评论回复
7
wengh2016| | 2023-8-4 15:14 | 只看该作者
需要检查DMA数据缓冲区大小设置是否正确

使用特权

评论回复
8
plsbackup| | 2023-8-4 15:44 | 只看该作者
DMA通道与串口的DMA请求线连接正确,并且优先级设置正确。

使用特权

评论回复
9
tifmill| | 2023-8-4 16:00 | 只看该作者
在DMA传输完成后对接收到的数据进行处理,可能会出现异常。

使用特权

评论回复
10
mickit| | 2023-8-4 16:11 | 只看该作者
串口DMA软件仿真异常可能有多种原因。

使用特权

评论回复
11
cashrwood| | 2023-8-4 16:39 | 只看该作者
正确处理串口DMA传输完成的中断。

使用特权

评论回复
12
alvpeg| | 2023-8-4 17:23 | 只看该作者
在中断处理程序中,应检查传输是否成功,并根据需要进行错误处理或数据处理。

使用特权

评论回复
13
hilahope| | 2023-8-4 17:31 | 只看该作者
通过检查寄存器的值和DMA传输的状态,可以了解到底是哪个环节出现问题,进一步进行故障排除。

使用特权

评论回复
14
plsbackup| | 2023-8-4 17:39 | 只看该作者
在DMA传输完成时使用中断来处理数据,可能会出现异常。

使用特权

评论回复
15
sdlls| | 2023-8-4 19:50 | 只看该作者
串口和DMA控制器之间的连接是否正确

使用特权

评论回复
16
mollylawrence| | 2023-8-4 20:45 | 只看该作者
检查DMA通道配置、中断配置、DMA数据缓冲区大小设置、DMA传输模式设置等

使用特权

评论回复
17
febgxu| | 2023-8-4 21:01 | 只看该作者
检查驱动程序和库是否正确安装和配置。确保使用的库和驱动程序与硬件和操作系统兼容。

使用特权

评论回复
18
sanfuzi| | 2023-8-4 21:20 | 只看该作者
DMA中断的优先级应低于其他必要的中断,例如系统滴答定时器或其他关键任务的中断。

使用特权

评论回复
19
xiaoyaodz| | 2023-8-4 21:36 | 只看该作者
缓冲区的大小应足够容纳接收或发送的数据,并且地址应正确对齐。

使用特权

评论回复
20
10299823| | 2023-8-4 22:54 | 只看该作者
查看数据手册              

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

23

主题

202

帖子

4

粉丝