当前位置:
文档之家› codewarrior使用指南
codewarrior使用指南
CodeWarrior 快速入门
1、安装 CodeWarrior 软件 安装 CodeWarrior 所需要的电脑的硬件资源如下,目前一般的电脑都可以满足这个要求。
16 位单片机的编程环境:CodeWarrior V4.6,V4.7,V5.0,V5.1 CodeWarrior V5.1 的下载链接: /lgfiles/devsuites/HC12/CW_HC12_v5.1_SPECIAL.exe 软件安装很简单,和其它软件的安装过程是一样的,按照默认的设置直接点击“下一步” 即可完成安装。 2、创建新工程(单片机以以 MC9S12XS128 为例,调试工具以 BDM 为例) 1) 点 击电 脑 左下 角 的 开始 菜 单, 开 始 >所 有 程 序>Freescale CodeWarrior> CodeWarrior development studio for S12(X) V5.0> CodeWarriorIDE。IDE 开始运行,出现下图 1 所示的窗口。
图11
图12 接下来给核心板供电,核心板的供电电压是 5V。有的 BDM 有 5V 供电模式,这个时候 直接用 BDM 供电就可以。 2)在新建的工程中键入如下代码 #include <hidef.h> #include "derivative.h" #define LEDCPU PORTK_PK4 #define LEDCPU_dir DDRK_DDRK4 void delay(void) { unsigned int i; for(i=0;i<50000;i++); } void main(void) { LEDCPU_dir=1; EnableInterrupts;
图8
图9 8)在单选框中选择 No,点击“完成”,一个新的工程建成了。IDE 会自动生成工程文件。双 击“main.c”文件可对其进行修改。见图 10。
3、调试新建工程 1)连接好硬件环境。
图 10
这一步很重要,请仔细阅读。首先将BDM头插到电脑的USB口上,再将BDM头核心板上 的JA1相连。连接时特别需要注意的是要将BDM头的1管脚和JA1的1管脚对应连接。BDM头的 1管脚有两个识别标志:一是排线的红线对应的是1管脚;另一个是1管脚处有个倒三角的标 志。见图11的红线中的标志。JA1的1管脚电路板上已经标出。连接好的图如图12所示,特别 需要注意的是BDM头的方向不要插反,否则会烧毁BDM头或单片机。
图13
图14 调试环境窗口 3)熟悉调试窗口。调试窗口是一个用户可自定义的调试环境。 其中:
Source:源文件窗口,在该串口单击鼠标右键可以添加/取消断点,添加/取消触収点等操作, 支持最多4个断点。 Assembly :汇编窗口,该窗口为Source 中C 语言程序对应的汇编程序,在该窗口单击鼠标 右键可以添加/取消断点,添加/取消触点等操作。 Register :寄存器窗口,显示CPU各寄存器的内容,双击可修改寄存器的值。 Memory :存储器窗口,显示整个存储器的内容,双击某个存储单元可修改该存储单元的内 容。在该窗口单击鼠标右键输入地址,可查看该地址的存放的数据。 Command :命令窗口,显示整个调试系统的通信命令。 Procedure:过程窗口,在该窗口显示整个工程所使用到的函数。 Data:1,Data:2:数据窗口,该窗口显示各种变量的存储地址,内容。在窗口单击右键,选择 “Add Expression… ”可以增加要显示的变量。
图1 2)点击此窗口中的“Create New Project”(或关闭此窗口再点击菜单栏的 File>New Project…), 出现如图 2 所示的窗口
图2 3)在左边的框中点开 HCS12X,再点开其中的 HCS12XS Family,选中其中的 MC9S12XS128。 在右边的框中选中 TBDML,如图 3 所示。此步的操作时选择单片机的型号和调试工具,单 片机选择的是 MC9S12XS128,调试工具选择的是飞思卡尔的开源 BDM 头 TBDML。接下来点 击“下一步”,出现如图 4 的窗口。
单击该按钮,程序将开始运行。如有断点,程序运行到断点处停止。快捷键F5。
程序停止状态下,单击该按钮,程序single step方式运行,会停止在子函数内部。快捷键F11。
程序停止状态下,单击该按钮,程序step over方式运行,不会停止在子函数内部。快捷键F10。
当single step运行方式下,进入某一个子函数内部后,单击该按钮,程序执行完该子函数, 停止在紧பைடு நூலகம்该子函数的外部的下一条语句。快捷键shift+F11。
图3
图4 4)在图 4 窗口左侧的复选框中选择“C”,确定编程语言,在此窗口的右侧设定工程名和
工程的保存位置,这两项是使用者可以随意修改的,但不要改变工程的扩展名。设置好之后 点击“下一步”,出现如图 5 所示的窗口。
图5 5)这一步不需要进行任何设置,直接点击“下一步”即可。出现如图 6 所示的窗口。
for(;;) {
LEDCPU=1; delay(); LEDCPU=0; delay(); } } 或者直接打开“测试程序\ledcpu.mcp” CodeWarrior IDE调试过程:编译->汇编->连接->程序下载->调试 。 首先,确定调试工具选择的是TBDML,如图13所示。之后单击 按钮会依次出现如图 14的对话框。再单击 程序开始运行,此程序的功能是使核心板上的指示灯闪烁。
图5 6)这一步也不需要设置,直接点击“下一步”即可。出现如图 7 所示的窗口。
图7 7)在上图的窗口中,最上边的单选框选择“ANSI startup code”,中间的单选框选择“Banked”,
最下边的单选框选择“None”。最下边的单选框是用来设置浮点数格式的,由于单片机对浮 点数运算比较慢,不推荐使用浮点数,所以此项选择“None”。点击“下一步”,出现如图 8 所示的窗口。直接点击下一步,如图 9 所示。
程序停止状态下,单击该按钮,程序assembly step方式运行,该方式与single step方式相似, 但是以汇编语句为一单步。捷键ctrl+F11。
当程序运行时,单击该按钮,程序当停止。
单击该按钮,程序将复位。