《DSP控制器原理及应用技术》第3章--软件开发基础ppt课件.ppt
《《DSP控制器原理及应用技术》第3章--软件开发基础ppt课件.ppt》由会员分享,可在线阅读,更多相关《《DSP控制器原理及应用技术》第3章--软件开发基础ppt课件.ppt(59页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、为深入学习习近平新时代中国特色社会主义思想和党的十九大精神为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神贯彻全国教育大会精神,充分发挥中小学图书室育人功能充分发挥中小学图书室育人功能第三章第三章 软件开发基础软件开发基础工信部十二五规划教材工信部十二五规划教材DSP控制器原理与应用技术控制器原理与应用技术编写组编写组为深入学习习近平新时代中国特色社会主义思想和党的十九大精神为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神贯彻全国教育大会精神,充分发挥中小学图书室育人功能充分发挥中小学图书室育人功能第第3章章软件开发基础软件开发基
2、础3.1软件开发流程软件开发流程3.2汇编程序开发基础汇编程序开发基础3.3C/C+程序开发基础程序开发基础3.4C/C+和汇编混合编程和汇编混合编程3.5集成开发环境及其应用集成开发环境及其应用3.6基于示例模版的驱动程序开发基于示例模版的驱动程序开发为深入学习习近平新时代中国特色社会主义思想和党的十九大精神为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神贯彻全国教育大会精神,充分发挥中小学图书室育人功能充分发挥中小学图书室育人功能一、软件开发流程图一、软件开发流程图3.1软件开发流程软件开发流程为深入学习习近平新时代中国特色社会主义思想和党的十九大精神为深入
3、学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神贯彻全国教育大会精神,充分发挥中小学图书室育人功能充分发挥中小学图书室育人功能二、软件开发步骤二、软件开发步骤3.1软件开发流程软件开发流程1.编制源程序编制源程序(1)汇编语言)汇编语言:速度快,效率高,直接控制硬件底层资源。:速度快,效率高,直接控制硬件底层资源。(2)C语言:语言:通用性、可移植性好通用性、可移植性好(3)混合编程)混合编程2.产生可执行代码产生可执行代码C工具工具:C编译器编译器(C汇编)汇编)汇编工具:汇编工具:汇编器汇编器(Assembler):汇编文件):汇编文件 COFF目标文件目标文件
4、连接器连接器(Linker):):COFF文件文件可执行模块;可执行模块;3.调试代码调试代码4.固化代码固化代码为深入学习习近平新时代中国特色社会主义思想和党的十九大精神为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神贯彻全国教育大会精神,充分发挥中小学图书室育人功能充分发挥中小学图书室育人功能3.2.1寻址方式与指令系统寻址方式与指令系统一、寻址方式一、寻址方式(1)直接寻址)直接寻址访问数据空间的低访问数据空间的低4M字字C28x模式:模式:16位位DP+6位偏移量位偏移量=22位有效物理地址位有效物理地址C2xLP模式:模式:9位位DP+7位偏移量位偏移
5、量=16位有效物理地址。位有效物理地址。(a)AMODE=0(C28x寻址模式)寻址模式)MOVWDP,#VarA;VarA所在页面装载所在页面装载DPADDAL,VarA;将将VarA的值加至的值加至AL3.2汇编程序开发基础汇编程序开发基础为深入学习习近平新时代中国特色社会主义思想和党的十九大精神为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神贯彻全国教育大会精神,充分发挥中小学图书室育人功能充分发挥中小学图书室育人功能(2)堆栈寻址)堆栈寻址可访问数据空间的低可访问数据空间的低64K低低64K字作为软件堆栈,由堆栈指针字作为软件堆栈,由堆栈指针SP给出。给
6、出。三种方式:三种方式:*-SP6bit、*SP+和和*SP-ADDAL,*-SP5;将(将(SP-5)堆栈单元的)堆栈单元的16位内容位内容加到加到AL中中MOV*SP+,AL;将将16位位AL的内容压入堆栈,且的内容压入堆栈,且SP=SP+1ADDAL,*SP-;将将16位内容弹出并加至位内容弹出并加至AL中,且中,且SP=SP-1一、寻址方式一、寻址方式为深入学习习近平新时代中国特色社会主义思想和党的十九大精神为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神贯彻全国教育大会精神,充分发挥中小学图书室育人功能充分发挥中小学图书室育人功能(3)间接寻址)间接寻
7、址可访问可访问4G字的数据空间字的数据空间操作数地址指定:操作数地址指定:32位辅助寄存器位辅助寄存器XAR0XAR7工作寄存器指定:工作寄存器指定:C28x:直接在指令中给出;:直接在指令中给出;C2xLP:由辅助寄存器指针:由辅助寄存器指针ARP指定。指定。五种方式:五种方式:*XARn+、*-XARn、*+XARnAR0、*+XARnAR1和和*+XARn3bit。一、寻址方式一、寻址方式为深入学习习近平新时代中国特色社会主义思想和党的十九大精神为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神贯彻全国教育大会精神,充分发挥中小学图书室育人功能充分发挥中小学
8、图书室育人功能(3)间接寻址)间接寻址可以访问整个可以访问整个4G字的数据空间字的数据空间MOVLACC,*XAR2+;将将XAR2所指向存所指向存储单元的内容装入储单元的内容装入ACC,之后,之后XAR2+2MOVLACC,*-XAR2;将将XAR2-2,然后将,然后将XAR2所指向存储单元的内容装入所指向存储单元的内容装入ACCMOVLACC,*+XAR2AR0;将(将(XAR2+AR0)所指向存储单元的内容装入所指向存储单元的内容装入ACCMOVLACC,*+XAR2AR1;将(将(XAR2+AR1)所指向存储单元的内容装入所指向存储单元的内容装入ACCMOVLACC,*+XAR25;将
9、(将(XAR2+5)所)所指向存储单元的内容装入指向存储单元的内容装入ACC一、寻址方式一、寻址方式为深入学习习近平新时代中国特色社会主义思想和党的十九大精神为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神贯彻全国教育大会精神,充分发挥中小学图书室育人功能充分发挥中小学图书室育人功能(4)寄存器寻址)寄存器寻址:直接访问寄存器的内容:直接访问寄存器的内容32位寻址:位寻址:ACC、P、XT、XARn等等16位寻址:位寻址:AL、AH、PL、PH、TH、T和和ARn等等MOVLACC,XT;32位寄存器寻址,将位寄存器寻址,将XT寄存器的寄存器的内容装入内容装入A
10、CCADDAH,AL;16位寄存器寻址,位寄存器寻址,AH=AH+AL(5)数据)数据/地址地址/IO空间立即寻址方式空间立即寻址方式(6)程序空间间接寻址方式。)程序空间间接寻址方式。一、寻址方式一、寻址方式为深入学习习近平新时代中国特色社会主义思想和党的十九大精神为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神贯彻全国教育大会精神,充分发挥中小学图书室育人功能充分发挥中小学图书室育人功能3.2.1寻址方式与指令系统寻址方式与指令系统语法:语法:操作码操作码目的操作数目的操作数,源操作数源操作数操作码:操作码:指示处理器所要执行的操作;指示处理器所要执行的操作
11、;操作数:操作数:指示指令执行过程中所需数据(或其地址)。指示指令执行过程中所需数据(或其地址)。例如:例如:ADDACC,#16位常数位常数allocation加加载载的位置。的位置。语语法:法:load=allocation或或 load allocation或或 allocation为深入学习习近平新时代中国特色社会主义思想和党的十九大精神为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神贯彻全国教育大会精神,充分发挥中小学图书室育人功能充分发挥中小学图书室育人功能3.连接器命令文件连接器命令文件 连接时可编写一个通用的连接器命令文件模板:连接时可编写一个通
12、用的连接器命令文件模板:MEMORY:定义存储器及其地址:定义存储器及其地址;SECTIONS:将各输出段定位到相应存储区。将各输出段定位到相应存储区。MEMEORYPAGE0:/*程序空间程序空间*/ZONE0:origin=0 x004000,length=0 x001000/*XINTFzone0*/RAML0:origin=0 x008000,length=0 x001000/*on-chipRAMblockL0*/SECTIONS/*分配程序区域分配程序区域:*/.cinit:FLASHAPAGE=0.pinit:FLASHA,PAGE=0.text:FLASHAPAGE=0为深入学
13、习习近平新时代中国特色社会主义思想和党的十九大精神为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神贯彻全国教育大会精神,充分发挥中小学图书室育人功能充分发挥中小学图书室育人功能3.2.4汇编程序设计汇编程序设计一、一、汇编伪指令汇编伪指令1.定义段的伪指令定义段的伪指令伪指令伪指令语法语法功能描述功能描述.text.text将其后的源语句汇编至将其后的源语句汇编至.text(代码)段(代码)段.data.data将其后的源语句汇编至将其后的源语句汇编至.data(数据)段(数据)段.sect.sect“段名段名”将其后源语句汇编至将其后源语句汇编至“段名段名”规
14、定的段内规定的段内.bss.bss 符号符号,字长字长在在.bss段内保留字长(字数)段内保留字长(字数).usect符号符号.usect“段名段名”,字长,字长在未初始化自定义段在未初始化自定义段“段名段名”中保留字长中保留字长2.初始化常数的伪指令初始化常数的伪指令.space位位长长(在当前段内保留位(在当前段内保留位长长,并填,并填0).word数数值值列表(将一个或者多个列表(将一个或者多个16位初始化数位初始化数值值存存放在当前段内放在当前段内连续连续个存个存储单储单元中。)元中。)为深入学习习近平新时代中国特色社会主义思想和党的十九大精神为深入学习习近平新时代中国特色社会主义思想
15、和党的十九大精神,贯彻全国教育大会精神贯彻全国教育大会精神,充分发挥中小学图书室育人功能充分发挥中小学图书室育人功能(1)语语法:法:.include“文件名文件名”功能:通知功能:通知汇编汇编器从指定文件器从指定文件读读取源取源语语句。句。(2)语语法:法:.def/.ref/.global 符号名列表符号名列表.def(定(定义义):在当前模):在当前模块块定定义义而在其它模而在其它模块块中引用中引用.ref(引用):在当前模(引用):在当前模块块引用而在其它模引用而在其它模块块中定中定义义.global(全局):可以是以上(全局):可以是以上2种情况种情况3.引用其它文件的伪指令引用其它
16、文件的伪指令二、示例文件二、示例文件l例例3.2(10+2)的汇编语言程序代码)的汇编语言程序代码*.global_main.text_main:MOVACC,#10MOVT,#2ADDACC,T为深入学习习近平新时代中国特色社会主义思想和党的十九大精神为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神贯彻全国教育大会精神,充分发挥中小学图书室育人功能充分发挥中小学图书室育人功能3.3.1TMS320 x28xxC/C+优化编译器优化编译器1、C/C+编译器编译器支持支持ANSIC和和ISO/IET14882-1998C+:能将标准能将标准ANSIC/C+程序转换
17、成相应的汇编程序。程序转换成相应的汇编程序。3.3C/C+程序开发基础程序开发基础C编译器中包含了运行支持库编译器中包含了运行支持库(.lib)。2、代码的优化代码的优化优化目的:优化目的:提高程序执行速度,缩减程序代码。提高程序执行速度,缩减程序代码。优化操作:优化操作:简化循环、软件流水线操作、重组语句或简化简化循环、软件流水线操作、重组语句或简化表达式,变量重定位等表达式,变量重定位等优化等级优化等级:0、1、2、3、4数字越大,优化等级越高。数字越大,优化等级越高。为深入学习习近平新时代中国特色社会主义思想和党的十九大精神为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻
18、全国教育大会精神贯彻全国教育大会精神,充分发挥中小学图书室育人功能充分发挥中小学图书室育人功能一、一、C语言数据类型语言数据类型1.变量和标识符变量和标识符:3.3.2C/C+编程基础编程基础2.数据类型数据类型为深入学习习近平新时代中国特色社会主义思想和党的十九大精神为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神贯彻全国教育大会精神,充分发挥中小学图书室育人功能充分发挥中小学图书室育人功能二二、C语言关键词语言关键词1.interrupt关键字关键字作用:定义中断服务程序(中断函数)。作用:定义中断服务程序(中断函数)。voidinterrupt函数名函数名
19、()2.ioport关键字关键字作用:定义作用:定义C中访问中访问IO端口空间的端口变量。端口空间的端口变量。ioport类型标示符类型标示符端口编号端口编号端口编号为端口编号为16进制表示的进制表示的I/O端口的绝对地址。端口的绝对地址。C28xI/O空间与存储空间统一,故不使用该关键字。空间与存储空间统一,故不使用该关键字。3.volatile关键字关键字作用:避免变量被优化。作用:避免变量被优化。通知编译器每次访问被声明变量时均需从其地址读取。通知编译器每次访问被声明变量时均需从其地址读取。4.register关键字关键字作用:定义寄存器变量,以加快访问速度。作用:定义寄存器变量,以加快
20、访问速度。为深入学习习近平新时代中国特色社会主义思想和党的十九大精神为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神贯彻全国教育大会精神,充分发挥中小学图书室育人功能充分发挥中小学图书室育人功能二二、C语言关键词语言关键词5.cregister关键字关键字作用:在作用:在C中直接访问中直接访问IER和和IFR。例如:。例如:externcregistervolatileunsignedintIER;IER|=0 x0100;volume=4.0/3.0*PI*radius*radius*radius6.inline关键字关键字作用:定义可直接插入被调用处的短小函
21、数。作用:定义可直接插入被调用处的短小函数。inlineintvolume_sphere(floatr)retrurn4.0/3.0*PI*r*r*r;volume=volume_sphere(radius);7.const关键字关键字作用:保护变量或数组的值不被改变。作用:保护变量或数组的值不被改变。8.far关键字关键字作用:指定作用:指定22位长度的指针位长度的指针。intfarsym;/*声明声明sym位于远内存,为位于远内存,为far类型的变量类型的变量*/为深入学习习近平新时代中国特色社会主义思想和党的十九大精神为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教
22、育大会精神贯彻全国教育大会精神,充分发挥中小学图书室育人功能充分发挥中小学图书室育人功能#pragma告诉预处理器怎样对待函数告诉预处理器怎样对待函数三三、#pragma预编译器指令预编译器指令1.CODE_ALIGN作用:为某一段程序指定特定的代码存储边界,以保证某函作用:为某一段程序指定特定的代码存储边界,以保证某函数代码存于特定位置。数代码存于特定位置。#pragmaCODE_ALIGN(func,constant)#pragmaCODE_ALIGN(constant)constant必须是必须是2的幂次,以保证内存边界的幂次,以保证内存边界2.CODE_SECTION:作用:为某一段程
23、序指定特定的代码存储段,以便单独分配作用:为某一段程序指定特定的代码存储段,以便单独分配存储空间存储空间为深入学习习近平新时代中国特色社会主义思想和党的十九大精神为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神贯彻全国教育大会精神,充分发挥中小学图书室育人功能充分发挥中小学图书室育人功能作用:为某一段数据指定特定的数据存储段,以便单独分配作用:为某一段数据指定特定的数据存储段,以便单独分配存储空间。存储空间。#pragmaDATA_SECTION(symbol,“section_name”)为变量为变量symbol在在“section_name”段内分配空间,可
24、将段内分配空间,可将其定位至其定位至.bss以外的空间以外的空间例:例:#pragmaDATA_SECTION(bufferB,“BufferB_sect”)charbufferB512;3.DATA_SECTIONSECTIONSBufferB_sect:RAML4PAGE1为深入学习习近平新时代中国特色社会主义思想和党的十九大精神为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神贯彻全国教育大会精神,充分发挥中小学图书室育人功能充分发挥中小学图书室育人功能4.INTERRUPT作用:指明函数为中断处理函数作用:指明函数为中断处理函数5.FAST_FUNC_CA
25、LL作用:允许在作用:允许在C/C+中直接调用汇编编写的函数。中直接调用汇编编写的函数。调用时采用快速函数调用调用时采用快速函数调用(FFC)机制。调用更快速。机制。调用更快速。函数返回时的函数返回时的asm代码是:代码是:LB*XAR76.FUNC_EXT_CALLED作用:保证程序执行期间未调用的函数不被优化掉。作用:保证程序执行期间未调用的函数不被优化掉。混合编程中,可用于防止汇编调用的函数被优化掉。混合编程中,可用于防止汇编调用的函数被优化掉。7.MUST_ITERATE作用:指明循环必须执行的次数,以防止循环被优化掉。语法:作用:指明循环必须执行的次数,以防止循环被优化掉。语法:为深
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- DSP控制器原理及应用技术 DSP 控制器 原理 应用技术 软件 开发 基础 ppt 课件
限制150内