Other Parts Discussed in Thread: C2000WARE
部件号: TMS320F28379D
主题: C2000WARE 中讨论的其他器件
你好,我期待着周末,当我的代码开始失败的有线方式。
在初始化期间、我将相同的地址分配给两个结构的成员、这两个结构的类型都是相同的。
但在调试期间,我看到一个成员没有得到新的值,在同一时间,另一个结构关闭得到了一个奇怪的值..
我把它缩小到编译器计算的一个错误的地址,对于其中一个 metebers。
C 代码片段。

如调试器中所示

和相同的装配体突出显示,球杆在 CCS 暗模式下是有点破碎;-)

存储器布局的一个片段

用于写入第一个结构的汇编代码为:
`08cf80: A83C MOVL @0x3c、XAR4`Ω
当 DP = 0x5f4 时、`@0x3c`指向地址 0x17d3c、这与存储器中的闪存计算机位置相匹配。
但是、用于写入第二个结构的汇编代码是:
`08cf81: A804 MOVL @0x4、XAR4`Ω
仍然是 DP = 0x5f4 时、`@0x4`指向地址 0x17d04、这与结构成员不匹配、但会写入变量`_localSyslogDoneQueueNextReadIdx `和` level `的区域。 因为您还可以看到在 Momory 视图中突出显示的调试器。
据我所见、正确的装配体应该是:
`08cf81: A844 MOVL @0x44、XAR4`Ω
这是接近周末,所以我没有时间设置一个演示项目,我也不知道是什么触发了这个 bug ,所以它可能是困难的(阅读:需要很多时间)。
我的编译器设置:
cl2000“--cmd_ffile=“diagnostic_options.opt“ -v28 -ml -mt --cla_support=cla1 --float_support=fpu32 --tmu_support=tmu0 --vcu_support=vcu2 -vcu2 -O1 --fp_mode=relaxed --cmd_directory=“src“--cmd_fram_file=“syscfg/board.syscfg=“opt_link_cfg=“opt_link=“opt_cpu=“-link_cpu=“opt=“/link_cpu=“opt=“file=link_cpu2 -link_cfg“- link_cpu=“file=“opt=“opt=“/link_cfg“
CMD_FILE=“diagnostic_options.opt“:
10247.
第 183 章,我是你的女人
第 195 章我是你的女人
第 225 章
第 2709 章
10205.
第 383 章我是你的女人
-pdr
-PDV
-pden
CMD_FILE=“syscfg/board.opt“:
-i“C:/ti/c2000Ware/C2000Ware_5_01_00_01/device_support/f2837xd/common/include /“
-i“C:/ti/c2000Ware/C2000Ware_5_01_00_01/driverlib/f2837xd/driverlib /“
-DCPU2.
CMD_FILE=“syscfg/device_cmd.opt“
-DCMDTOOL
-DRUN_IN_FLASH
CMD_FILE=“syscfg/c2000ware_libraries.opt“为空
对于完成状态、此处是寄存器的状态、

编辑:忘记编译器版本:
cl2000 -version
TMS320C2000 C/C++编译器 v22.6.0.LTS
内部版本号 1WF5K-2LI-RZASS-TAQ-C08D
TMS320C2000 C/C++解析器 v22.6.0.LTS
内部版本号 1WF5K-2LI-RZASS-TAQ-C08D
TMS320C2000 EABI C/C++解析器 v22.6.0.LTS
内部版本号 1WF5K-2LI-RZASS-TAQ-C08D
TMS320C2000 C/C++文件合并 v22.6.0.LTS
内部版本号 1WF5K-2LI-RZASS-TAQ-C08D
TMS320C2000 C/C++优化器 v22.6.0.LTS
内部版本号 1WF5K-2LI-RZASS-TAQ-C08D
TMS320C2000 G3 C/C++ Codegen v22.6.0.LTS
内部版本号 1WF5K-2LI-RZASS-TAQ-C08D
TMS320C2000 汇编器 v22.6.0.LTS
内部版本号 1WF5K-2LI-RZASS-TAQ-C08D
TMS320C2000 嵌入实用程序 v22.6.0.LTS
内部版本号 1WF5K-2LI-RZASS-TAQ-C08D
TMS320C2000 C 源代码交叉列表器 v22.6.0.LTS
内部版本号 1WF5K-2LI-RZASS-TAQ-C08D
TMS320C2000 链接器 v22.6.0.LTS
内部版本号 1WF5K-2LI-RZASS-TAQ-C08D
TMS320C2000 绝对列表器 v22.6.0.LTS
内部版本号 1WF5K-2LI-RZASS-TAQ-C08D
TMS320C2000 符号去除实用程序 v22.6.0.LTS
内部版本号 1WF5K-2LI-RZASS-TAQ-C08D
TMS320C2000 XREF 实用程序 v22.6.0.LTS
内部版本号 1WF5K-2LI-RZASS-TAQ-C08D
TMS320C2000 C++还原器 v22.6.0.LTS
内部版本号 1WF5K-2LI-RZASS-TAQ-C08D
TMS320C2000 十六进制转换器 v22.6.0.LTS
内部版本号 1WF5K-2LI-RZASS-TAQ-C08D
TMS320C2000 名称实用程序 v22.6.0.LTS
内部版本号 1WF5K-2LI-RZASS-TAQ-C08D
TMS320C2000 目标文件显示 v22.6.0.LTS
内部版本号 1WF5K-2LI-RZASS-TAQ-C08D
TMS320C2000 归档器 v22.6.0.LTS
内部版本号 1WF5K-2LI-RZASS-TAQ-C08D
