硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1136|回复: 7
收起左侧

[其它] 求助一个DMA+串口的问题

[复制链接]

17

主题

84

回帖

135

积分

初级会员

积分
135
QQ
发表于 2022-2-17 14:25:39 | 显示全部楼层 |阅读模式
发送消息,第一次发送从机有接收到,但是收到的数据都是0,后面发送,从机收到的都是上一次发送的内容?
回复

使用道具 举报

2

主题

269

回帖

275

积分

高级会员

积分
275
发表于 2022-2-17 15:27:23 | 显示全部楼层
如果是H7并且开了缓存,那么缓冲区需要特别处理下
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106790
QQ
发表于 2022-2-18 00:31:34 | 显示全部楼层
用的你那个F7系列吗,估计是Cache问题。
回复

使用道具 举报

17

主题

84

回帖

135

积分

初级会员

积分
135
QQ
 楼主| 发表于 2022-2-18 10:23:55 | 显示全部楼层
但是,我如果给发送的数组,在声明的时候,设置一个非零的初值就可以正常使用了
回复

使用道具 举报

17

主题

84

回帖

135

积分

初级会员

积分
135
QQ
 楼主| 发表于 2022-2-18 10:24:37 | 显示全部楼层
或者字节使用串口循环发送也是正常的.用的是HAL库里的函数
回复

使用道具 举报

17

主题

84

回帖

135

积分

初级会员

积分
135
QQ
 楼主| 发表于 2022-2-18 10:48:16 | 显示全部楼层
谢谢,问题已经解决了,我在数据更改之后加一个 SCB_CleanDCache(); 就可以了
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106790
QQ
发表于 2022-2-19 08:35:05 | 显示全部楼层
linminghui 发表于 2022-2-18 10:48
谢谢,问题已经解决了,我在数据更改之后加一个 SCB_CleanDCache(); 就可以了

嗯,看来确实是Cache问题。
回复

使用道具 举报

17

主题

84

回帖

135

积分

初级会员

积分
135
QQ
 楼主| 发表于 2022-2-21 10:24:00 | 显示全部楼层
现在发的也出现了类似的问题,该怎么对缓冲区做操作
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-6 01:21 , Processed in 0.265207 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表