主题中讨论的其他器件: CCStudio、 HALCOGEN
工具/软件:Code Composer Studio
我有一个具有 RM41L232微控制器的电路板、我将使用 HAL CC 4.06和 Code Composer Studio 7.1.0.00016。
我能够使用 XDS110调试探针通过 JTAG 对芯片进行编程。 但是、当我尝试写入寄存器时、我会得到一个错误
CortexR4:写入长度0x4第0页0xf7c108上的内存块时遇到问题:(错误-2130 @ 0xFFF7C108)无法访问设备内存。 验证内存地址是否在有效内存中。 如果错误仍然存在、请确认配置、对电路板进行下电上电和/或尝试更可靠的 JTAG 设置(例如、较低的 TCLK)。 (仿真包6.0.576.0)
我正在尝试写入 ADCEVTSET 寄存器。
我创建项目所遵循的步骤为:
1) 1)在 CCStudio 中创建一个空项目(同时选择合适的微控制器)
2) 2)在 HAL CC 中打开项目并生成代码。 我只启用了一些驱动程序、并配置了一组引脚用作 GIO。 我没有更改任何与闪存或 RAM 相关的内容。
阅读一些论坛主题后、我认为链接器命令文件可能存在问题。 请注意、我对 C 语言比较陌生、我不确定该文件的用途是什么。 通过分析我在默认情况下发现的构建日志、工程将使用文件 sys-link.cmd
'Building target:testing.out' '调用:arm Linker' "C:/ti/ccsv7/tools/compiler/ti-cgt-arm_16.9.1.LTS/bin/armcl -mv7R4 --code_state=32 -me -g --diag_warning=225 --diag_wrap=off --display_error_number --verbose_diagnostics --enum_type=packed --abi=eabi -m"-mdiag_warn=off --display_error-map_size=-out-linkg-out-ex-map-display_linkg-ex-display_size-display_link-out-display_size-display_size-display-display_size-out-display-display-link-out-display_size-display-display-display-link-display_size-display_size-display_testing-ines=-link-ines=-ines=-/ti/ccsv7/tools/compiler/ti-cgt-arm_16.9.1.LTS/include /ti/ccsv7/tools/compiler/ti-cgt-arm_16.9.1.LTS/lib rom_model -o "Testing.out""./source/adc.obj ""./source/can.obj ""./source/crc.obj ""./source/dabort.obj ""./source/dcc.obj ""./source/eqep.obj ""./source/esm.obj ""./source/gio.obj ""./source/sys_core.obj ""./source/lin.obj ""./source/sys_pcr.obj ""./source/mibspi.obj ""./source/notification.obj ""./source/pinmux.obj /source/sys_mpu.obj /source/sys_pmu.obj /source/sys_vim.obj ""./source/rti.obj ""./source/sys_intvecs.obj ""./source/sys_selftest.obj ""./source/system.obj "./source/het.obj /source/spi.obj /source/sys_main.obj /source/sys_phantom.obj /source/sys_startup.obj /source/sys_link.cmd '已完成的构建目标:testing.out' ''''
当我打开项目属性时、链接器命令文件的字段为空。 如果我选择 RM41L232FlashLnk.cmd、我在构建一些已经定义的内容时会遇到错误。 我认为这是因为文件 sys-link.cmd 仍然存在。 因此、我将 sys-link.cmd 重命名为 sys-link.cmd.old。 这会导致在建筑过程中发出警告:
'Building target:testing.out' '调用:arm Linker' "C:/ti/ccsv7/tools/compiler/ti-cgt-arm_16.9.1.LTS/bin/armcl -mv7R4 --code_state=32 -me -g --diag_warning=225 --diag_wrap=off --display_error_number --verbose_diagnostics --enum_type=packed --abi=eabi -m"-mdiag_warn=off --display_error-map_size=-out-linkg-out-ex-map-display_linkg-ex-display_size-display_link-out-display_size-display_size-display-display_size-out-display-display-link-out-display_size-display-display-display-link-display_size-display_size-display_testing-ines=-link-ines=-ines=-/ti/ccsv7/tools/compiler/ti-cgt-arm_16.9.1.LTS/include /ti/ccsv7/tools/compiler/ti-cgt-arm_16.9.1.LTS/lib rom_model -o "Testing.out""./source/adc.obj ""./source/can.obj ""./source/crc.obj ""./source/dabort.obj ""./source/dcc.obj ""./source/esm.obj ""./source/gio.obj ""./source/sys_intvecs.obj ""./source/lin.obj ""./source/sys_selftest.obj ""./source/mibspi.obj ""./source/notification.obj ""./source/pinmux.obj /source/sys_core.obj /source/sys_mpu.obj /source/sys_pmu.obj /source/sys_vim.obj ""./source/rti.obj ""./source/sys_pcr.obj ""./source/eqep.obj ".dl.c "./source/system.obj "."."./source/het.obj /source/spi.obj /source/sys_main.obj /source/sys_phantom.obj /source/sys_startup.obj 警告#10247-D:在没有段规范 的情况下创建输出段".sysme"'finished building target:testing.out'' '''
调试会话仍会启动、但存在相同的问题。
这两个链接器命令文件是不同的、这让我感到惊讶、因为这两个文件都应该与 RM41L232一起使用。
我有点迷路了。 如果有人能对这个问题有所了解、那将会很棒。