我正在尝试编写一个 PRACTICE 脚本来加载带有预构建(.elf 格式)应用程序的 MCU MC9S12ZVML128 并启动它进行调试。我的一般做法是基于demo文件,位于:C:\T32\demo\m68hc12\flash\flash.cmm
我正在使用 BDM。
我的脚本,基本上是这样的:
; select the ICD device prompt
B::
; clear all windows
WinCLEAR
// prepare target system
SYStem.RESet
SYStem.BdmClock AUTO
; select CPU
SYStem.CPU MCS12ZVML128
; bring out of reset
SYStem.Up
FLASH.Program ALL
// load application
Data.LOAD.Elf "~~~~/../../some_app_name.elf" ;/Verify
FLASH.Program off
PRINT "flash programming ready"
Register.RESet
; start program execution
Go main
; open some windows
;WinCLEAR
Mode.Hll
WinPOS 0. 0. 110. 24.
List.auto
WinPOS 115. 0. 90. 8.
Frame.view /Locals /Caller
WinPOS 115. 15. 90. 25.
Var.Watch %SpotLight
WinPOS 0. 30.
per.view.~~/pers12zvm.per /SpotLight /DualPort
ENDDO
加载过程中脚本执行失败,出现“数据对齐错误”。elf 使用 Free Scale 的“s12lisa”编译器编译。
我猜我的脚本缺少正确的内存配置 - 一些地址映射如下:
;Move the internal registers to 0x0800 by writing the INITRG register
Data.Set 0x11 0x08
所以我的问题是:
如何找出正确的内存配置?有人看过关于 S12ZVML MCU 的更全面的演示 PRACTICE 脚本吗?我的整体方法是否合理……?
谢谢你。