硬汉嵌入式论坛

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

[STM32H7] memcpy拷贝错误,for循环拷贝OK,这是什么原因?

[复制链接]

7

主题

22

回帖

43

积分

新手上路

积分
43
发表于 2024-8-21 11:35:24 | 显示全部楼层 |阅读模式
软硬件:请教stm32h750VBT6+freertos+lwip+fatfs ;  stm32cubemx-V6.12.0 + STM32Cube_FW_H7_V1.11.2 配置工程; Keil MDK ;开启cache


tmpdptr是malloc或者pvPortMalloc申请的一块临时内存,webdptr是从网页接收到的信息, 要把webdptr内容拷贝到tmpdptr中;

问题:memcpy拷贝失效,for循环字节逐个拷贝是OK的,可见tmpdptr与webdptr指针都没问题;
指定cache失效SCB_InvalidateDCache_by_Addr()也没搞定,很奇怪的问题。

请教了,多谢!!!  下面是仿真拷贝前  后指针指示的数据:

拷贝前

拷贝前

拷贝后

拷贝后
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115490
QQ
发表于 2024-8-21 12:35:00 | 显示全部楼层
是memcpy有4字节对齐加速问题。手动操作即可。

石锤内存访问不支持非对齐是否STM32H7的硬件bug
https://www.armbbs.cn/forum.php?mod=viewthread&tid=94562

回复

使用道具 举报

7

主题

22

回帖

43

积分

新手上路

积分
43
 楼主| 发表于 2024-8-21 14:30:56 | 显示全部楼层
多谢硬汉哥指导!
回复

使用道具 举报

7

主题

57

回帖

78

积分

初级会员

积分
78
发表于 2024-8-28 16:49:49 | 显示全部楼层
怀疑你的MPU配置有问题,在cacheable的情况下,是不存在无法非对齐访问的情况的
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-4-29 03:22 , Processed in 0.238042 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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