wujique 发表于 2019-11-14 14:14:02

RT1052的DCACHE使用问题

项目选用了RT1052,第一次用M7,遇到一些以前没遇到的问题,特发帖请教:

1 项目我们自己设计了一个BOOT,从BOOT跳到应用程序。
2 在应用程序中,调试代码过程,经常发现程序死机。
经过测试,发现以下一些现象:
如果增加一点调试信息(用串口printf),程序又正常了。
如果在应用程序开头禁止DCACHE,程序也正常。
如果把应用程序编译到起始地址,不用BOOT,程序也正常。

不知道大家有没有遇到这样的事情?
1 会是Dcache的问题吗?
看了网上一些对M7 Dcahce的解释,通常是由用DMA的时候才会出现数据差异。
工程并没有用DMA。还会有其他操作造成CACHE和RAM不同步吗?
还有,MPU用官方的配置,是不是配置不对?
2 会不会是使用了BOOT造成?boot调过来应用程序后,应用程序还是执行了整个启动代码的内容。

谢谢!

eric2013 发表于 2019-11-14 15:37:31

大概率是你的板子有问题。

一般DMA和CPU共同操作支持Cache的RAM区才会有Cache问题。
页: [1]
查看完整版本: RT1052的DCACHE使用问题