CodeWarrior仿真与调试要点
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
另一个需要关心的文件是 自动生成的 .inc包含文件, 主要是内存映像地址和寄存 器地址的别名定义。
重庆大学通信工程学院 任勇
3. 编译程序 点选Make(或F7)---进行编译和链接项目,如果源程序有错误,CW IDE会弹 出错误或警告信息。按提示修改,重新编译,直到没有错误为止,为通 过。(自动存盘)
重庆大学通信工程学院 任勇
一些图例--仿真与调试界面: 未接BDM时:
运行方式:
led仿真效果:
重庆大学通信工程学院
任勇
三、BDM在线调试和程序下载
首先:设置Project Set default Target TBDML BDM调试器硬件连接---一端接PC机USB接口,另一端插接在板上的BDM 插针口(别反),PC机会自动识别安装此设备。都通电,可带电插拔。 同样点选Debug(或F5)---进入在线调试环境后,功能和方法与软件仿真完 全相同,如运行/停止、单步、复位等,但已是针对板的实时、在线的调试 运行。其间弹出的“LOADER WARNING”按OK,“Set Derivative”选择为 MC9SXDT512,还可能要进行菜单TBDML Unsecure操作……。最后 正确的状态应该是Source栏内有程序代码。 重新编译过的工程可以再次点选Debug重新进入调试窗口;也可以在调试 窗口的菜单TBDML load 中直接调入新的目标文件TBDML.abs,它可 在工程所在的文件夹下的bin子目录中找到。 上述过程实际已完成对MCU NVM的擦除和程序下载,并可以在线调试或 脱机运行了。
重庆大学通信工程学院
任勇
编辑main.asm文件,将main之后的替换称自己的代码,如下图。 一个需要关心的文件是自 动生成的 .prm链接文件, 主要是代码地址定位信息; 其中最后:
VECTOR 0 Entry
给出了复位向量地址是标号 Entry的地址,而Entry在 main.asm中,也就意味着 复位后首先执行main.asm 文件中的内容。
选MCU型号,如MC9S12XDT512
重庆大学通信工程学院
任勇
New Project Wizard - Page 4: 选编程语言,此处选Assembly
New Project Wizard - Page 6: 选硬件调试工具,此处加选TBDML
New Project Wizard的其它页用默认 最后点完成。结束新工程的建立 以后通过File open,选 .mcp即可 重新打开这个工程
其中Source中的源程序行,右击可设置断点、执行到光标处等; 调试运行:开始/继续、单步运行、跨步运行、单步跳出、汇编单步、停止、复位。 调试观察:程序存放位置、寄存器值、运行位置、内存区域值等。
Component菜单Open 选择并设置一些仿真部件进行模拟实验。
例选Io-led,为使该部件和程序对应,在部件图形上右击 setup 设置:数据寄存器PORT为PORTB,其地址DDR为01 此时,全速运行程序,可看到8只LED灯的跑马灯效果。
二、完全软件仿真和调试
首先:设置Project Set default Target Full Chip Simulation 点选Debug(或F5)---在没有开发板的情况下,可进行软件仿真;也可在用 板、制板之前的程序逻辑正确性验证。 在弹出的True-Time Simulator & Real-Time Debugger 窗口软件中进行 各种信息观察和调试操作。
重庆大学通信工程学院 任勇
一、CodeWarrior for S12使用方法入门
1. 建立工程文件 选择File New
重庆大学通信工程学院
任勇
New页:
输入工程的名字,如HorseLED 选择存放位置,如E:\CodeCW
New Project Wizard - Page 2 :
HCS12(X)仿真与调试
本文档内容适用于Freescale HCS12(X)系列MCU; 仿真与调试使用Codewarrior IDE 软件 + BDM调试器. 软件版本:CodeWarrior (for HC12) V4.6
CodeWarriBaidu Nhomakorabear---简称CW
一种国际通用的软件集成开发环境(IDE),联合子公司Metrowerks开发; 支持Freescale所有微控制器; 支持不同的操作系统,如Windows、Macintosh、Linux等; 支持汇编语言,以及C/C++、Java高级语言; 支持各种调试、仿真功能; 包括多个功能模块:编辑器、编译器、源码浏览器、搜索引擎、构造系 统、调试器、工程管理器; 各种版本:特别版、标准版和专业版,特别版是免费的、用于教学目 的,后两种须付费;授权文件和功能限制有区别;
注:CW功能庞杂,其它深入操作须在实践中摸索。
重庆大学通信工程学院
任勇
四、中断程序的安排
在整个源程序的末尾声 明中断子程序的所对 应的矢量地址,格式 如例; 该程序实现当IRQ引脚电 平有下降沿时触发跑 马灯显示,按复位键 后恢复等待。
注:CW中外部中断寄存 器的名字为IRQCR, 而不是INTCR
重庆大学通信工程学院
任勇
重庆大学通信工程学院 任勇
2. 左栏内是CW系统自动生成的各种文件,其中用户需要修改、开发的应用程序是 sources中的main.asm文件;点开后是一个自动生成的例子程序框架,保留前面 部分,在Insert here your data definition 之后改造、输入、编辑自己的源代码。