工程组织及第一个样例程序.ppt
第4章 HCS12工程组织及第一个样例程序,嵌入式系统-使用HCS12微控制器的设计与应用,2,本章目录,4.1 HCS12开发环境4.2 嵌入式系统工程文件组织4.3 MT环境下的第一个汇编工程4.4 MT环境下的第一个C工程4.5 CW环境下的第一个汇编工程4.6 CW环境下的第一个C工程4.7 MT环境与CW环境的工程互移说明,嵌入式系统-使用HCS12微控制器的设计与应用,3,4.1 HCS12开发环境,苏州大学 MT-IDE for HCS12集成开发环境 简称MT环境 Freescale公司 Code Warrior for HCS12集成开发环境 简称CW环境,嵌入式系统-使用HCS12微控制器的设计与应用,4,MT环境功能和特点 友好的人机界面 扩展性强 MT环境安装 MT-IDE12的安装 USB驱动的安装,4.1 HCS12开发环境,4.1.1 MT-IDE for HCS12集成开发环境,嵌入式系统-使用HCS12微控制器的设计与应用,5,4.1 HCS12开发环境,4.1.2 Code Warrior for HCS12集成开发环境,CW环境功能和特点 三个版本 CW环境安装 安装后需要上网注册,嵌入式系统-使用HCS12微控制器的设计与应用,6,4.2 嵌入式系统工程文件,4.2.1 嵌入式系统工程文件组织,嵌入式系统-使用HCS12微控制器的设计与应用,7,4.2 嵌入式系统工程文件,4.2.1 嵌入式系统工程文件组织,嵌入式系统-使用HCS12微控制器的设计与应用,8,4.2 嵌入式系统工程文件,4.2.2 列表文件(*.LIS或*.LST),4036:18 01 ae 10movw1019403a:19403b:7f 10 19sts1019403e:a7nop,嵌入式系统-使用HCS12微控制器的设计与应用,9,4.2 嵌入式系统工程文件,4.2.3 目标代码文件(*.S19),S01E00002E2F4F424A2F4330315F4447313238B3CCD0F2BFF2BCDC2E733139BCS1134000A7CF1FFF79003C1640F01801AE1D06181BS113FFF0400A400A400A400A400A400A400A4000B7S9034000BC,目标代码文件是以S记录(八种)格式表示的机器码文件,嵌入式系统-使用HCS12微控制器的设计与应用,10,4.2 嵌入式系统工程文件,4.2.4 与链接相关的地址信息文件,嵌入式系统-使用HCS12微控制器的设计与应用,11,4.3 MT环境下的第一个汇编工程,4.3.1 小灯闪烁汇编工程在MT环境下的文件组织,嵌入式系统-使用HCS12微控制器的设计与应用,12,4.3 MT环境下的第一个汇编工程,4.3.1 小灯闪烁汇编工程在MT环境下的文件组织,1.与芯片相关的程序文件 DG128ASM.h-定义芯片映像寄存器名 Vector.s-定义中断向量表 Isr.s-中断处理子程序 Start12.s-系统启动文件 MCUInit.h-芯片初始化头文件 MCUInit.s-芯片初始化文件,嵌入式系统-使用HCS12微控制器的设计与应用,13,4.3 MT环境下的第一个汇编工程,4.3.1 小灯闪烁汇编工程在MT环境下的文件组织,2.硬件对象控制文件 LED.h 小灯控制引脚宏定义 包含小灯驱动所需头文件 小灯控制引脚宏定义 小灯驱动子程序声明 LED.s 小灯驱动子程序 定义子程序LEDInit:初始化 定义子程序LED_L_A:驱动小灯亮,暗,嵌入式系统-使用HCS12微控制器的设计与应用,14,4.3 MT环境下的第一个汇编工程,4.3.1 小灯闪烁汇编工程在MT环境下的文件组织,3.通用程序文件 Includes.h 总头文件 工程中用到的头文件 有关常量命名 GeneralFun.s 通用子程序 定义子程序DelayX:延时,嵌入式系统-使用HCS12微控制器的设计与应用,15,4.3 MT环境下的第一个汇编工程,4.3.1 小灯闪烁汇编工程在MT环境下的文件组织,4.主程序文件 main.s 主程序 工程描述 包含总头文件 主程序 内部直接调用子程序,嵌入式系统-使用HCS12微控制器的设计与应用,16,4.3 MT环境下的第一个汇编工程子程序编写规范(以 LED.s 为例),/*LED.s小灯驱动-*本文件包含:*(1)LEDInit:定义控制小灯的MCU的I/O引脚为输出*(2)LED_L_A:驱动小灯亮,暗*硬件连接:*(1)本处的小灯是一个发光二极管,由MCU的I/O引脚控制*(2)控制引脚为高电平时,小灯暗;反之,小灯亮*-*/.include LED.h/*小灯驱动头文件*/*LEDInit:定义控制小灯的MCU引脚为输出-*功 能:定义控制小灯的MCU引脚为输出,并使小灯初始为暗*入 口:无*出 口:无*堆栈深度:2*-*/LEDInit:BSET Light_D,Light_Pin/*令小灯引脚为输出*/BSET Light_P,Light_Pin/*初始时,小灯暗*/RTS,子程序2说明,嵌入式系统-使用HCS12微控制器的设计与应用,17,4.3 MT环境下的第一个汇编工程,4.3.2 MT环境下第一个汇编工程的链接信息文件,链接信息文件linker.ld 链接有两种模式 内存直接模式 内存扩展模式,嵌入式系统-使用HCS12微控制器的设计与应用,18,4.3 MT环境下的第一个汇编工程,4.3.3 MT环境下第一个汇编工程的执行过程,嵌入式系统-使用HCS12微控制器的设计与应用,19,4.4 MT环境下的第一个C工程,4.4.1 小灯闪烁C工程在MT环境下的文件组织,嵌入式系统-使用HCS12微控制器的设计与应用,20,4.4 MT环境下的第一个C工程,4.4.2 MT环境下第一个C工程的链接信息文件,链接信息文件linker.ld 内容与汇编链接信息相同,嵌入式系统-使用HCS12微控制器的设计与应用,21,4.4 MT环境下的第一个C工程,4.4.3 MT环境下第一个C工程的执行过程,嵌入式系统-使用HCS12微控制器的设计与应用,22,4.5 CW环境下的第一个汇编工程,4.5.1 小灯闪烁汇编工程在CW环境下的文件组织4.5.2 CW环境下第一个汇编工程中的链接信息文件4.5.3 CW环境下第一个汇编工程的执行过程,嵌入式系统-使用HCS12微控制器的设计与应用,23,4.6 CW环境下的第一个C工程,4.6.1 小灯闪烁C工程在CW环境下的文件组织4.6.2 CW环境下第一个C工程中的链接信息文件4.6.3 CW环境下第一个C工程的执行过程,嵌入式系统-使用HCS12微控制器的设计与应用,24,4.7 MT环境与CW环境的工程互移说明,映像寄存器名 C工程中调用汇编语句的格式 中断函数的声明,嵌入式系统-使用HCS12微控制器的设计与应用,25,谢 谢!,Ver 1.0,