我的数学模型在 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
共2条
1/1 1 跳转至页
使用dsram和psram时AurixTricoreTC277全局变量异常的原因?
关键词: dsram psram Aurix Tricore
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 跳转至页
回复
我要赚赏金打赏帖 |
|
|---|---|
| OK1126B-S开发板下以导航按键控制云台/机械臂姿态调整被打赏¥29元 | |
| 【树莓派5】便携热成像仪被打赏¥36元 | |
| 【树莓派5】环境监测仪被打赏¥35元 | |
| OK1126B-S开发板下多时段语音提示型电子时钟被打赏¥27元 | |
| OK1126B-S开发板下函数构建及步进电机驱动控制被打赏¥25元 | |
| 【S32K3XX】LPI2C 参数配置说明被打赏¥20元 | |
| OK1126B-S开发板的脚本编程及应用设计被打赏¥27元 | |
| 5v升压8.4v两节锂电池充电芯片,针对同步和异步的IC测试被打赏¥35元 | |
| 【S32K3XX】S32DS LPI2C 配置失败问题解决被打赏¥22元 | |
| 【S32K3XX】FLASH 的 DID 保护机制被打赏¥19元 | |
我要赚赏金
