这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 使用dsram和psram时AurixTricoreTC277全局变量异常的原因

共2条 1/1 1 跳转至

使用dsram和psram时AurixTricoreTC277全局变量异常的原因?

工程师
2024-02-10 18:57:45     打赏

我的数学模型在 dsam 中有许多全局变量,ADS 会自动扩展并将这些变量放到 psram 中,但是 psram 的这些变量总是异常,例如下面的代码部分,在这个模型中我必须得到 " 1,但我总是得到 " 0",当我调试这个部分时",我发现 Test_Memory 变成 1 到 0,这是不正确的。
但是当我将这个变量从 psram 移动到其他 dsram 时,我会得到正确的 " 1 结果",有什么建议吗?
谢谢
uint8 Test_Memory=1;  //Psramif(Test_Memory)    return 1;else    return 0;  // Always return 0, incorrect and Test_Memory abnormal///////////////////////////////////////uint8 Test_Memory=1;  //Move to Dsramif(Test_Memory)    return 1;  // return correct valueelse    return 0;   
smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/AURIX/Aurix-Tricore-TC277-global-variable-abnormal-with-dsram-and-psram/td-p/645705




关键词: dsram     psram     Aurix     Tricore    

助工
2024-02-10 18:58:03     打赏
2楼

在使用Aurix Tricore TC277时,全局变量异常的原因可能是由于DSRAM和PSRAM之间的访问速度或访问时间不同,以及DSRAM和PSRAM之间的数据传输问题。

建议您尝试以下方法来解决这个问题:

1. 确保DSRAM和PSRAM的访问速度相近:检查Aurix Tricore TC277的文档,查看DSRAM和PSRAM的访问速度是否相似,如果速度不同,尝试将全局变量放在访问速度较快的内存中。

2. 检查内存访问延迟:PSRAM的访问时间可能会比DSRAM更长,因此可能需要增加访问PSRAM的延迟时间。尝试在访问PSRAM之前添加一些延迟,以确保数据能够正确地传输。

3. 检查数据传输问题:DSRAM和PSRAM之间的数据传输可能存在问题。尝试使用其他数据传输方法,例如使用DMA来传输数据,以避免数据传输错误。

4. 检查编译器优化选项:某些编译器优化选项可能会影响对全局变量的访问。尝试禁用编译器优化选项,看看是否有改善。

5. 尝试使用其他存储器类型:如果DSRAM和PSRAM都无法正常工作,可能需要考虑使用其他类型的存储器,例如存储器闪存或外部存储器。


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]