文档详情

第4章软件设计与开发.ppt

发布:2015-09-21约1.15万字共62页下载文档
文本预览下载声明
第4章 软件设计与开发 开发工具与软件开发流程 汇编语言程序设计: 常用汇编命令,公共目标文件格式,命令文件,汇编程序举例 C语言程序设计:C24x C 基础, C程序举例 集成开发环境CCS:软件安装与设置,集成环境与使用,调试功能与实例 硬件软件成本比较 开发工具 开发工具硬件: TI XDS510(Extended Development System)硬件仿真器(Emulator) (JTAG接口:基于扫描的仿真) DSK初学者开发套件(DSP Starter Kit) 闻亭XDS-EPP DSP开发系统 (PC机插卡式-EISA,PCI总线, 并口式, USB接口式, RS232 串口式-PC机通过串口与评估板相连) EVM评估板( Evaluation, DEMO板,实验板板上资源): DSP芯片(定时器,WD),JTAG接口,A/D转换,PWM 输出,捕获单元输入,QEP输入,并行接口,RS232串口, SPI接口, CAN接口,片外扩展的程序存储器与数据存储器,键盘显示人机交互接口,电源(如5V转3.3V芯片TI TPS77666),有源晶体振荡器,复位电路 软件: 集成开发环境CC/CCS 开发工具:仿真器 开发工具: 评估板(EVM) 软件开发流程 编辑:生成源程序(*.asm, *.c)与命令文件(*.cmd) 编译与汇编:生成目标文件(*.obj 为COFF格式)及列表文件(*.lst) 连接:生成可执行代码(*.out)及映射文件(*.map) 调试:通过JTAG接口下载到目标系统EVM 程序固化烧写到Flash EPROM 软件开发流程 几种基本文件 源文件 源程序: 汇编语言文件(*.asm),C文件(*.c) 头文件(*.h): 定义寄存器映射地址,用户自定义的常量等 命令文件(*.cmd)实现程序存储器空间和数据存储器空间的分配 库文件(*.lib) 生成文件 目标文件(*.obj):COFF目标文件格式 列表文件(*.lst):汇编生成的文件 映射文件(*.map): 存储器分配 可执行代码文件(*.out) 汇编语言命令(伪指令) 段(块、Section)定义命令 共用目标文件格式COFF:TI 的汇编与联接程序建立的目标文件采用共用目标文件格式COFF(Common Object File Format)。其核心是程序员在编写DSP程序时基于代码块和数据块的概念,而不是一条条指令,一个个数据。基于这种文件格式编写的DSP程序,具有可读性强,可移植性好等特点。便于模块化编程、管理代码段和存储器,即不必为程序代码或变量指定目标地址。 段是目标文件的最小单位,是在存储器中占据连续空间的代码和数据块,各段相互独立。 COFF文件格式包括三个缺省的段: .text段, 通常包含可执行代码。 .data段, 通常包含已初始化的数据。 .bss段, 通常为未初始化的数据保留空间。 汇编语言命令 段可分为已初始化段与未初始化段: 已初始化段:包含程序代码和数据, .text, .data .sect, .asect 汇编命令创建的段; 未初始化段:为未初始化的数据在存储器中保留空,.bss, .usect汇编命令创建的段。 确定段的地址由连接程序完成。 定义已初始化段的命令: .text ;建立的段名为.text .data ;建立的段名为.data .sect “段名”; 自定义段 .asect“段名”,地址 ;建立的段具有绝对地址,一般不用 汇编语言命令 定义未初始化段的命令: .bss 符号,字数 .符号 usect “段名” ,字数 (自定义段) 常数初始化命令 .word 将一个或多个16 bit 的值,放入当前段中的连续字中 .byte将一个或多个8 bit 的值,放入当前段中的连续字中 .bes, .space 在当前段内保留特定的bit数 .float 计算单精度32 bit IEEE浮点的数值, 并将其存入当前段中的两个连续的字中 .int 将一个或多个16 bit 的数,放入当前段中的连续字中 .long 将32bit 的数,放入当前段的连续字中 .string 将一个或多个8 bit 的字符放入当前段 汇编语言命令 例, 使用.word, .byte, .float, .int, .string汇编指令的例子。 0000 aa .byte 0AAH,0BBH 0001 bb 0002 cccc .word 0CCCCH 0003 dddd .int 0DDDDH 0004 ffff .long 0EEEEFFFFH 0005 ee
显示全部
相似文档