tms320f28xdsp基础培训讲义.ppt_第1页
tms320f28xdsp基础培训讲义.ppt_第2页
tms320f28xdsp基础培训讲义.ppt_第3页
tms320f28xdsp基础培训讲义.ppt_第4页
tms320f28xdsp基础培训讲义.ppt_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

TMS320F28XDSP基础培训讲义,孙文娟2009.5.20,一、功能概述二、存储器三、寻址方式四、指令系统五、CCS使用六、应用实例,一、功能概述,1、概念2、特性概述3、器件概述4、引脚,1、概念,数字信号处理(DigitalSignalProcessing)是指利用计算机或专用设备,以数值计算的方式对实时信号进行采集、变换、综合、估计与识别等加工处理,从而达到提取信息和便于应用的目的。而DSP芯片(数字信号处理器(DigitalSignalProcessors)就是这样的一种微处理器。其中TI公司推出的TMS320F28X处理器具有较高的信号处理和控制功能,在数字控制领域拥有广阔的应用前景。TMS320F2810及TMS320F2812是工业界首批32位的控制专用、内含闪存以及高达150MIPS的数字信号处理器,专门为工业自动化、光学网络及自动化控制等应用而设计。,2、特性概述,采用高性能的静态CMOS技术:主频达150MHz(时钟周期6.67ns);低功耗设计;Flash编程电压为3.3V支持JTAG边界扫描接口。,2、特性概述,高性能的32位CPU:16X16位和32X32位的乘法累加操作;16X16位的双乘法累加器;哈佛总线结构;快速中断响应和处理能力;统一寻址模式;4MB的程序/数据寻址空间;高效的代码转换功能(支持C/C+和汇编);与TMS320F24X/LF240X处理器的源代码兼容,2、特性概述,片内存储器有多达128K16的FLASH存储器1K16的OTP型只读存储器L0和L1:两块4K16的单口随机存储器(SARAM)H0:一块8K16的单口随机存储器M0和M1:两块1K16的单口随机存储器根只读存储器(BootROM)(4k16)软件启动模式数学运算表,2、特性概述,外部存储器扩展接口(F2812)有多达1MB的寻址空间可编程等待状态数可编程读/写选择时序;三个独立的片选信号时钟与系统控制支持动态的改变锁相环的频率片内振荡器看门狗定时器模块三个外部中断外部中断扩展(PIE)模块可支持45个外部中断,2、特性概述,128位的密钥保护Flash/掩膜存储器OTP和L0/L1SARAM防止ROM中的程序被盗三个32位的CPU定时器马达控制外围设备两个事件管理器(EVA,EVB)与240兼容的器件串口外围设备串行外围接口(SPI)两个串行通信接口(SCIs),标准的UART增强的Ecan2.0B接口模块多通道缓冲串行接口(McBSP)和串行外围接口模式,2、特性概述,12位的ADC,16通道28通道的输入多路选择器两个采样保持器最快的转换周期:60ns/12.5MSPS可以使用两个事件管理器顺序触发8对模数转换。最多有56个独立的可编程、多用途通用输入/输出(GPIO)引脚高级的仿真特性分析和设置断点的功能实时的硬件调试,2、特性概述,开发工具包括:ANSIC/C+编译器/汇编程序/连接器支持TMS320C24/240X的指令代码编辑集成环境DSP/BIOSJTAG扫描控制器(TI或第三方的)硬件评估板支持大多数的第三方的数字马达控制低功耗模式和节能模式支持空闲模式,等待模式,挂起模式停止单个外围的时钟封装方式带外部存储器接口179球形触点的MicroStarBGA封装带外部存储器接口176引脚的贴片正方扁平封装没有外部存储器的128引脚的LQFP封装温度的选择:A:-40到85S:-40到125(SPRS174F第1页),3、器件概述,见1.4器件概述表一:硬件特征见1.5:功能框图封装:带外部存储器接口176引脚的贴片正方扁平封装,4、引脚,所有的输入均与TTL兼容。输出均为3.3V的CMOS电平。输入不能承受5-V电压。上拉电流/下拉电流为100A所有引脚的输出缓冲器驱动能力(有输出功能的)典型值是4mAI:输入,O:输出,Z:高阻态PU:引脚有上拉功能,PD:引脚有下拉功能详见:p11引脚功能GPADIR=0,设定响应的GPIO引脚为输入。GPADIR=1,设定响应的GPIO引脚为输出。,4、引脚,二、存储器,框图对偶地址进行32位存取的排列,1、框图,C28x具有32位的数据地址和22位的程序地址。总的地址空间可达4G字(1个字=16位)的数据空间和4M字的程序空间。在C28x中所有存储器块都统一映像到程序空间和数据空间,SPRS174NP303.1表示了在程序空间和数据空间地址是如何分配的。片内SARAM:单口随机读/写存储器,在单个机器周期内只能被访问一次。,2、对偶地址进行32位存取的排列,对于16位和32位的存取,C28x支持特殊的字节存取指令,它能访问地址字的最低位字节(LSByte)或者最高位字节(MSByte)C28xCPU希望存储器的外围或外围设备接口逻辑对任意一个对偶地址的32位读写操作进行排列。如果地址产生逻辑产生了一个奇地址,则CPU必须在之前的偶地址开始进行读或写操作。这种排列不会不影响由地址产生逻辑所产生的地址值。许多从程序空间取指的指令是作为32位读操作来完成,并相应的作了排列。然而,对取来的指令进行排列对于编程者的影响并不明显。当指令存储在程序空间时,它们并不一定要排列为偶地址。指令被约束在CPU内部进行译码。在执行从数据空间进行32位读写的指令时必须注意这种排列。,三、C28x的寻址方式,寻址方式直接寻址方式(DP)堆栈寻址方式(SP)间接寻址方式寄存器寻址方式数据/程序/IO空间立即寻址方式程序空间间接寻址方式字节寻址方式32位操作的定位,寻址方式,C28xCPU支持四种基本的寻址方式:直接寻址方式DP(数据页指针):在这种寻址方式中,16位的DP寄存器作为固定的页指针,在指令中提供6位或7位的偏移量,这些偏移量与DP寄存器中的值相连接。这种寻址方式对固定寻址的数据结构,例如对外围寄存器和C/C+中的全局或静态变量来说,都是一种有效的方法。堆栈寻址方式SP(栈指针):在这种寻址方式中,16位的SP指针用于访问软件堆栈的信息。C28x的软件堆栈从存储器的低地址变化到高地址,堆栈指针总是指向下一个空位置。在指令中提供6位的偏移量,这些偏移量是从当前栈指针值中抽取出来用于访问堆栈数据的,或者在数据入栈和出栈时,分别用在栈指针操作后增加或操作前减小。,1、寻址方式,间接寻址方式XAR0到XAR7(辅助寄存器指针):在这种寻址方式中,32位的XARn寄存器作为一般性数据指针。指令可根据一个3位立即数偏移量或另外的16位寄存器的内容,对当前寄存器的内容进行几种操作:操作后增加、操作前/后减小或进行变址。寄存器寻址方式在这种寻址方式中,另一个寄存器可作为访问的源操作数或目的操作数,这就使在C28x结构中寄存器到寄存器的操作成为可能。,1、寻址方式,另外可用的几种寻址方式有:数据/程序/IO空间立即寻址方式在这种寻址方式中,存储器操作的地址就存在于指令中。程序控间接寻址某些指令可以通过使用间接指针对程序空间中的存储器进行访问。因为C28xCPU的存储器是标准一致的,这就使在一个机器周期中进行两次读操作成为可能。只有少数指令使用上述的寻址方式,典型地,它们都与loc16/loc32语法组合起来使用。,2、直接寻址方式(DP),实例:MOVWDP,#VarA;LoadDPpointerwithpagevaluecontainingVarAADDAL,VarA;AddmemorylocationVarAtoregisterALMOVVarB,AL;StoreALintomemorylocationVarB;VarBislocatedinthesame64wordpageasVarAMOVWDP,#VarC;LoadDPpointerwithpagevaluecontainingVarCSUBAL,VarC;SubtractmemorylocationVarCfromregisterALMOVVarD,AL;StoreALintomemorylocationVarD;VarCislocatedinthesame64wordpageasVarD;VarCAdd16-bitcontentsfromstacklocation;5wordsfromtopofstacktoALregisterMOV*-SP8,AL;Store16-bitALregistertostacklocation;-8wordsfromtopofstackADDLACC,*SP12;Add32-bitcontentsfromstacklocation;12wordsfromtopofstacktoACCregister.MOVL*-SP34,ACC;Store32-bitACCregistertostacklocation;34wordsfromtopofstack,3、堆栈寻址方式(SP),实例:MOV*SP+,AL;Pushcontentsof16-bitALregisterontotop;ofstackMOVL*SP+,P;Pushcontentsof32-bitPregisterontotop;ofstack,3、堆栈寻址方式(SP),实例:ADDAL,*SP;Popcontentsfromtopofstackandaddto16-bit;ALregisterMOVLACC,*SP;Popcontentsfromtopofstackandstorein;32-bitACCregister注意:这种寻址方式只能访问C28x数据地址低端的64K空间。,4、间接寻址方式,C28x的间接寻址方式(XAR0-XAR7),实例:MOVLXAR2,#Array1;LoadXAR2withstartaddressofArray1MOVLXAR3,#Array2;LoadXAR3withstartaddressofArray2MOVAR0,#N1;LoadAR0withloopcountNLoop:MOVLACC,*XAR2+;LoadACCwithlocationpointedtobyXAR2,;postincrementXAR2MOVL*XAR3+,ACC;StoreACCintolocationpointedtobyXAR3,;postincrementXAR3BANZLoop,AR0;LoopuntilAR0=0,postdecrementAR0,4、间接寻址方式,4、间接寻址方式,循环间接寻址方式(XAR6,XAR1),5、寄存器寻址方式,32位寄存器寻址方式,P、XT、XARn,5、寄存器寻址方式,16位寄存器寻址方式,AL、AH、PL、PH、TH、SP、ARn,6、数据/程序/IO空间立即寻址方式,7、程序空间间接寻址方式,8、字节寻址方式,四、指令系统,略,五、CCS使用,开发环境CCS的安装创建一个新项目添加项目文件建立和运行程序使用编辑器浏览源代码,1、开发环境,仿真器(Emulator),含驱动程序SDConfig;仿真器只是起一个协议转换的作用,内部无任何MEMORY和处理器DSP工程师通过软件开发平台将CCS生成的机器码下载(DOWNLOAD)至目标板运行,仿真更接近DSP实际产品的程序运行CCS(CodeComposerStudio):我们可以称之为代码创作室。它是DSP开发所需的最主要的软件开发环境,它主要用于软件工程的创建、源程序文件的编辑、软件的编译、软件的链接和软件的仿真调试,,2、CCS的安装,SDConfig:若要使用硬件仿器,首先要运行SDConfig,对仿真器的型号、仿真器所用PC机端口进行必要的设置,设置完成后保存生效。可用R按钮来复位仿真器以验证仿真器联接是否正常。当仿真不正常时也需要用SDConfig来复位仿真器。SetupCCS(软件仿真、硬件仿真):对SetupCCS作如下几点说明:SetupCCS属于CCS的一部分,它的主要功能是在运行CCS前对CCS所支持的软件仿真器,硬件仿真器,或评估板,或DSK作出必要的选择。若工程师没有硬件仿真器或评估板或DSK,在SetupCCS时可选择simulator即软件仿真器。若在SetupCCS选择了硬体,而又没有硬体(或硬体未上电),在运行CCS时会提示错误信息,此时选择忽略(ignore)仍然可以进入CCS,但只能进行软件的编写和BUILD,即试验所编写的软件能否通过编译和链接。,六、CCS使用,创建一个新项目,六、CCS使用,2、,添加项目文件,五、CCS使用,3、扫描所需文件和include4、建立和运行程序5、使用编辑器浏览源代码选定页边空白(SelectionMargin)关键字(Keywords)快捷键(KeyboardShortcuts)书签(Bookmarks)代码艺术大师(CodeMaestro)设置外部编辑器,五、CCS使用,5、CCS调试工具软件断点(SoftwareBreakpoints)硬件断点(HardwareBreakpoints)监视(watch)窗口探针(ProbePoints),六、应用实例,9639-C重点在于软件架构(源文件和CMD文件)。,数据类型,#pragma,公共目标文件格式介绍,汇编器和连接器创建可以被TMS320C28x器件执行的目标文件。这些目标文件的格

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论