找回密码
 立即注册
楼主: zhx

完成DMA TFT显示后,访问Xdata 的数据就会错误

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:9
  • 最近打卡:2025-06-26 10:23:11

20

主题

99

回帖

818

积分

高级会员

积分
818
发表于 前天 14:42 | 显示全部楼层

BIN.h (6.79 KB, 下载次数: 3)
STCPinit.H (2.57 KB, 下载次数: 2)

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:9
  • 最近打卡:2025-06-26 10:23:11

20

主题

99

回帖

818

积分

高级会员

积分
818
发表于 前天 14:45 | 显示全部楼层
erci*** 发表于 2025-6-26 13:27
这个好像是P2P操作空间和str声明空间重叠导致的
将操作空间减小#define DMA_AMT_LEN         (20480UL)
将 ...

我用的是 P2P,不应该有Xram 参与了
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:248
  • 最近打卡:2025-06-28 00:00:35
已绑定手机

9

主题

107

回帖

1271

积分

金牌会员

积分
1271
发表于 前天 15:20 | 显示全部楼层
好的,解决了就好
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:9
  • 最近打卡:2025-06-26 10:23:11

20

主题

99

回帖

818

积分

高级会员

积分
818
发表于 前天 15:21 | 显示全部楼层
原因找到了:
使用 DMA_QSPI时,虽然选的P2P模式,DMA还是要有一块缓存的,
定义一个缓存
DMA_QSPI_RXAH = (uint8_t)&DMA_buff;    //设置 DMA 缓冲区起始地址
DMA_QSPI_RXAL = (uint16_t)&DMA_buff >> 8;
就不会冲掉其他的数据,而且MCU好像并不从这个缓存里读数据给 LCM,我把它设置到 RAM 地址之外都可以!

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:9
  • 最近打卡:2025-06-26 10:23:11

20

主题

99

回帖

818

积分

高级会员

积分
818
发表于 前天 15:25 | 显示全部楼层
C_w*** 发表于 2025-6-26 15:20
TFT_ShowStart(x, y,avi[index].width,avi[index].height);

  j=(u16)(len / DMA_AMT_LEN);

程序没问题,只要我不用Xdata 数据就没事,不是这个原因
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-6-28 17:31 , Processed in 0.250012 second(s), 74 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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