DSP技术及应用系统设计PPT电子课件教案-第二章 定点DSP芯片TMS320f

上传人:小**** 文档编号:240743484 上传时间:2024-05-04 格式:PPT 页数:143 大小:4.08MB
返回 下载 相关 举报
DSP技术及应用系统设计PPT电子课件教案-第二章 定点DSP芯片TMS320f_第1页
第1页 / 共143页
DSP技术及应用系统设计PPT电子课件教案-第二章 定点DSP芯片TMS320f_第2页
第2页 / 共143页
DSP技术及应用系统设计PPT电子课件教案-第二章 定点DSP芯片TMS320f_第3页
第3页 / 共143页
点击查看更多>>
资源描述
DSPDSP技术及应用系统设计技术及应用系统设计胡景春胡景春叶水生叶水生1第二章第二章 定点定点DSPDSP芯片芯片TMS320f2812TMS320f28122.1TMS320F2812性能特点性能特点2.2TMS320F2812硬件结构硬件结构2.3TMS320F2812指令系统简介指令系统简介22.1TMS320F2812性能特点性能特点 (1)采用了高性能的静态)采用了高性能的静态CMOS技术,时钟频技术,时钟频率可达率可达150MHZ(6.67ns),其核心电压为),其核心电压为1.8V,I/O口口电压电压3.3V,Flash编程电压也为编程电压也为3.3V。(2)高性能的)高性能的32位位CPU。能够实现。能够实现16X16和和32X32乘法操作,哈佛总线结构,快速的中断操作,寻乘法操作,哈佛总线结构,快速的中断操作,寻址程序空间可达址程序空间可达4M,寻址数据空间可达,寻址数据空间可达4G,在,在C/C+和汇编语言中代码可得到优化,另外还可向下兼容和汇编语言中代码可得到优化,另外还可向下兼容TMS320F24X/LF240X处理器的代码;处理器的代码;(3)片上存储器:闪存)片上存储器:闪存128K字,单访问双口字,单访问双口RAM(SARAM)18k字;字;(4)引导)引导(BOOT)ROM4K字,具有软件启动模式并字,具有软件启动模式并包含标准的数学表;包含标准的数学表;(5)时钟和系统控制采用锁相环技术)时钟和系统控制采用锁相环技术PLL来控制来控制系统各模块所需要的频率;系统各模块所需要的频率;3(6)具有)具有3个外部中断和外围中断扩展模块个外部中断和外围中断扩展模块PIE(PeripheralInterruptExpansion),PIE可支持多可支持多达达45个外部中断;个外部中断;(7)128位的代码安全模块位的代码安全模块CSM(CodeSecurityModule),更好地保护了开发者的知识产权;,更好地保护了开发者的知识产权;(8)具有)具有3个个32位的位的CPU定时器和适合电机控制定时器和适合电机控制的事件管理模块的事件管理模块EVA和和EVB;(9)具有很强的外围通讯功能)具有很强的外围通讯功能:包括同步串行口包括同步串行口SPI,通用异步串行口,通用异步串行口SCI,增强的,增强的eCAN和多通道缓和多通道缓存串行口存串行口MCBSP;(10)16个通道、个通道、12位精度的位精度的A/D转换器。转换器。(11)56个独立可编程的多路通用输入个独立可编程的多路通用输入/输出输出(GPIO)引脚。引脚。42.2TMS320F2812硬件结构硬件结构2.2.1 TMS320F28122.2.1 TMS320F2812内部结构及总线内部结构及总线TMS320F2812TMS320F2812主要由主要由C28xC28x核的核的CPUCPU(C28x C28x CPUCPU)、系统时钟控制模块)、系统时钟控制模块(系统控制部分系统控制部分)、事件和外设管理模块(事件和外设管理模块(EVAEVA、EVBEVB和外设中断和外设中断控制等),片内存储模块(控制等),片内存储模块(FLASHFLASH、ROMROM、RAMRAM等)、等)、CPUCPU定时器模块定时器模块(CPU(CPU定时器定时器)、1212位位A/DA/D转换模块(转换模块(12bit ADC12bit ADC)、扩展接口模块(扩)、扩展接口模块(扩展接口)、以及内部总线等构成。展接口)、以及内部总线等构成。56总线包括外部扩展总线和内部总线总线包括外部扩展总线和内部总线.扩展接口:扩展接口:A18-A0A18-A0和和D15-D0D15-D0是表示是表示28122812外外部扩存储器的能力,部扩存储器的能力,28122812外扩的存储空间最大外扩的存储空间最大是是219*16 bit219*16 bit(512K512K字)。字)。812812的内部存储器空间被分成了的内部存储器空间被分成了2 2块,一块块,一块是程序空间,一块是数据空间,对它们的访问是程序空间,一块是数据空间,对它们的访问通过地址总线和数据总线进行。通过地址总线和数据总线进行。28122812的存储器的存储器接口具有接口具有3 3条地址总线和条地址总线和3 3条数据总线。条数据总线。7(1 1)PAB PAB(Program Address BusProgram Address Bus)2222位程序位程序地址总线,用于传送程序空间的读写地址。地址总线,用于传送程序空间的读写地址。(2 2)DRABDRAB(Data-Read Address BusData-Read Address Bus)3232位数位数据读地址总线,用于传送数据空间的读地址。据读地址总线,用于传送数据空间的读地址。(3 3)DWABDWAB(Data-Write Address BusData-Write Address Bus)3232位位数据写地址总线,用于传送数据空间写地址。数据写地址总线,用于传送数据空间写地址。(4 4)PRDWPRDW(Program-Read Data BusProgram-Read Data Bus)3232位程位程序读数据总线,用于传送读取程序空间时的指令或序读数据总线,用于传送读取程序空间时的指令或者数据。者数据。(5 5)DRDBDRDB(Data-Read Data BusData-Read Data Bus)3232位数据位数据读数据总线,用来读取数据空间的数据。读数据总线,用来读取数据空间的数据。(6 6)DWDBDWDB(Data/Program-Write Data Data/Program-Write Data BusBus)3232位数据位数据/程序写数据总线,向数据空间程序写数据总线,向数据空间/程程序空间写相应的数据。序空间写相应的数据。82.2.2TMS320F2812引引脚脚 91、XINTF信号信号2、JTAG和其他信号和其他信号 3、ADC模拟输入信号模拟输入信号4、电源信号、电源信号 5、GPIOA或或EVA信号信号6、GPIOD或或EVA信号信号 7、GPIOE或中断信号或中断信号8、GPIOF或串行通信接口或串行通信接口A(SCIA)信号)信号 9、GPIOF或多通道缓冲串行口(或多通道缓冲串行口(McBSP)信号信号 10、GPIOF或或XFCPU输出信号输出信号 11、GPIOG或串行通信接口或串行通信接口B(SCI-B)信)信号号 了解引脚信号名称、了解引脚信号名称、功能、特性、状态功能、特性、状态102.2.3中央中央处理单元处理单元(C28xCPU)1.CPU结构结构11(1)算术逻辑单元)算术逻辑单元(ALU):32位位ALU完成完成2的补的补码的算术运算和布尔运算。通常情况下,中央处码的算术运算和布尔运算。通常情况下,中央处理单元对于用户是透明的。例如,完成一个算术理单元对于用户是透明的。例如,完成一个算术运算,用户只需要写一个命令和相应的操作数据,运算,用户只需要写一个命令和相应的操作数据,读取相应的结果寄存器的数据就可以了。读取相应的结果寄存器的数据就可以了。(2)乘法器)乘法器:乘法器完成乘法器完成32x32位的位的2的补码的的补码的乘法运算,产生乘法运算,产生64位的补码结果。乘法器能够完位的补码结果。乘法器能够完成两个符号数,两个无符号数或一个符号数和一成两个符号数,两个无符号数或一个符号数和一个无符号数的乘法运算。个无符号数的乘法运算。(3)移位器)移位器:完成数据的左移或右移操作,最完成数据的左移或右移操作,最大可移大可移16位。在位。在C28lx的内核中,总计有的内核中,总计有3个移位个移位寄存器寄存器:输入数据定标移位寄存器,输出数据定标输入数据定标移位寄存器,输出数据定标移位寄存器和乘积定标移位寄存器。移位寄存器和乘积定标移位寄存器。12(4)寻址运算单元)寻址运算单元(ARAU):主要完成数据主要完成数据存储器的寻址运算以及地址的产生。存储器的寻址运算以及地址的产生。(5)独立的寄存器空间)独立的寄存器空间:CPU内的寄存器,内的寄存器,并不映射到数据存储空间。寄存器主要包括系并不映射到数据存储空间。寄存器主要包括系统控制寄存器,算术寄存器和数据指针。系统统控制寄存器,算术寄存器和数据指针。系统控制寄存器可以通过专用的指令访问,其他的控制寄存器可以通过专用的指令访问,其他的寄存器可以采用专用的指令和特定的寻址模式寄存器可以采用专用的指令和特定的寻址模式来访问。来访问。(6)带保护流水线)带保护流水线:带保护流水线能够防带保护流水线能够防止同时对一个地址空间的数据进行读止同时对一个地址空间的数据进行读/写写132CPU的寄存的寄存器器142.2.5存储器及扩展接口存储器及扩展接口1、TMS320F2812存贮空间的配置存贮空间的配置 TMS32OF2812为哈佛结构的为哈佛结构的DSP,在逻辑上有,在逻辑上有4M*l6位程序空位程序空间和间和4G*l6位数据空间,但物理上已将程序空间和数据空间统位数据空间,但物理上已将程序空间和数据空间统一为一个一为一个4M*16位的存储空间。位的存储空间。(1)F2812片上有片上有128K*16位位FLASH、18K*l6位位SRAM、4K*16位位BootROM和和1Kx16位的位的OTPROM。(2)18K*16位单周期单次访问随机存储器位单周期单次访问随机存储器SARAM,分成,分成5个块,它们分别称为个块,它们分别称为M0、M1、L0、L1I和和H0。MO和和M1块均为块均为1K*16位,都可以映射到程序区和数据区。位,都可以映射到程序区和数据区。L0和和L1块均为块均为4K*16位,可映射到位,可映射到F2812的程序存储空间和的程序存储空间和数据存储空间,而且数据存储空间,而且LO和和L1受片上受片上FLASH中的密码保护,以中的密码保护,以免存放在免存放在LO和和L1中的程序或数据被非法拷贝。中的程序或数据被非法拷贝。HO块为块为8K*16位,可映射到位,可映射到F2812的程序存储空间和数据的程序存储空间和数据存储空间。存储空间。1516(3)片上)片上128K*16位嵌入位嵌入式式FLASH存储器和存储器和1K*16位一次位一次可编程可编程EPROM(OTP)存储器,存储器,它们均受片上它们均受片上FLASH中的密码中的密码保护。保护。FLASH存储器由存储器由4个个8K*16位的扇区和位的扇区和6个个16K*16位位的扇区组成,用户可以对其中任的扇区组成,用户可以对其中任何一个扇区进行擦除、编程和校何一个扇区进行擦除、编程和校验,而其它扇区不变。但是,不验,而其它扇区不变。但是,不能在其中能在其中1个扇区上执行程序来个扇区上执行程序来擦除和编程其他的扇区擦除和编程其他的扇区(4)BootROM存储器是掩存储器是掩模型片内存储器,在出厂时固化模型片内存储器,在出厂时固化了了BootLoader软件,根据引导软件,根据引导模式信号(模式信号(BootMode)确定上)确定上电引导装载方式,可以从内部电引导装载方式,可以从内部Flash引导装载程序,也可以从引导装载程序,也可以从外部存储器引导程序。此外,外部存储器引导程序。此外,BootROM中还包括一些标准的中还包括一些标准的数学运算表。数学运算表。BootROM的空间的空间分配如图分配如图2-10所示。所示。图2-10 Boot ROM的空间分配17(5)F2812的外部存储器接口包括的外部存储器接口包括:19位地址线,位地址线,16位数据线、位数据线、3个片选线及读个片选线及读/写控制线。这写控制线。这3个片选线个片选线映射到映射到5个外部存储区域,个外部存储区域,zone0、1、2、6和和7。其中,。其中,Zone0和和Zone1共用共用1个片选线个片选线XZCSOAND1,Zone6和和Zone7共用一个片选线共用一个片选线XZCS6AND7。这这5个存储区域可以分别设置为不同的等待周期。个存储区域可以分别设置为不同的等待周期。Zone0存储区域存储区域:0 x002000-0 x003FFF,8K*16位位Zone1存储区域存储区域:0 x004000-0 x005FFF,8K*16位位Zone2存储区域存储区域:0 x080000-0 x0FFFFF,512K*16位位Zone6存储区域存储区域:0 x100000-0 xl7FFFF,512K*16位位Zone7存储区域存储区域:0 x3FC000-0 x3FFFFF,16K*l6位位18(6)外设帧()外设帧(PeripheralFrames0、1、2)。)。F2812把把片上外设分在三个空间,称为外设帧,片上外设分在三个空间,称为外设帧,3个外设帧映射空间个外设帧映射空间及其包含有关外设的相关寄存器如下:及其包含有关外设的相关寄存器如下:PF0:0 x0008000 x000CFF,4K*16位,包含位,包含XINTF、PIE、Flash、Timers、CSM的相关寄存器;的相关寄存器;PF1:0 x0060000 x006FFF,4K*16位,包含位,包含eCAN的的相关寄存器;相关寄存器;PF2:0 x007000-0 x007FFF,4K*16位,包含位,包含SYS、GPIO、EV、McBSP、SCI、SPI、ADC的相关寄存器;的相关寄存器;(7)CPU中断向量(中断向量(vector)。在程序空间里也保留了)。在程序空间里也保留了64个地址作为个地址作为CPU的的32个中断向量。通过个中断向量。通过CPU的的ST1寄存器寄存器中的中的VMAP位来将这一段地址映射到程序空间的底部或者顶位来将这一段地址映射到程序空间的底部或者顶部。部。(8)F2812的的Reserved(保留保留)空间,可以用来进行外部空间,可以用来进行外部存储器扩展。其中数据空间里面某些地址被保留作为存储器扩展。其中数据空间里面某些地址被保留作为CPU的的仿真寄存器使用,这些地址是不向用户开放的。仿真寄存器使用,这些地址是不向用户开放的。19 2、TMS320F2812的片内外设简介的片内外设简介由于由于28lx数字信号处理器集成了很多内核可数字信号处理器集成了很多内核可以访问和控制的外部设备,以访问和控制的外部设备,28lx内核需要通过内核需要通过某种方式来读某种方式来读/写外设。为此,处理器将所有的写外设。为此,处理器将所有的外设都映射到了数据存储器空间,主要包括配外设都映射到了数据存储器空间,主要包括配置寄存器、输入寄存器、输出寄存器和状态寄置寄存器、输入寄存器、输出寄存器和状态寄存器。每个外设只要通过简单的访问存储器中存器。每个外设只要通过简单的访问存储器中的寄存器就可以使用该设备。外设通过外设总的寄存器就可以使用该设备。外设通过外设总线线(PBUS)连接到连接到CPU的内部存储器接口上,如的内部存储器接口上,如图图2-12所示。所有的外设所示。所有的外设(包括看门狗和包括看门狗和CPU时钟时钟)在使用前必须配置相应的控制寄存器。在使用前必须配置相应的控制寄存器。20图图2-12 F28122-12 F2812片内外设连接框图片内外设连接框图212.2.6TMS320F2812的时钟及系统控制的时钟及系统控制1.TMS320F2812的时钟的时钟TMS320F2812上有多个片上外设部件需要时钟上有多个片上外设部件需要时钟:看门狗电路看门狗电路watchDog、CPU定时器定时器(3个个32一位定时器一位定时器)、eCAN总线控制器总线控制器;SCI(2个异步串行通信控制器个异步串行通信控制器)、SPI(l个个4线制同步串口线制同步串口)、McBSP(1个多通道缓冲型同步串口个多通道缓冲型同步串口);EV(2个事件管理器,每个事件管理个事件管理器,每个事件管理器包括器包括:2个通用定时器、个通用定时器、3个全比较器个全比较器/PWM单元、单元、3个事件捕捉个事件捕捉单元、单元、QEP正交编码脉冲正交编码脉冲Quadrature一一EncoderPulse、外部时、外部时钟输入、外部比较输入和外部触发输入钟输入、外部比较输入和外部触发输入)、ADC(16通道、通道、12位、位、0-3v输入范围输入范围)。片上外设按输入时钟分为。片上外设按输入时钟分为4个组个组:(1)SYSOUTCLK组组:CPU定时器、定时器、eCAN总线总线(2)OSCCLK组组:看门狗电路看门狗电路(3)低速组低速组:SCI、SPI、McBSP,其输入时钟由,其输入时钟由SYSOUTCLK经经低速外设分频器分频得到。低速外设分频器分频得到。(4)高速组高速组:EVA、EVB、ADC,其输入时钟由,其输入时钟由SYSOUTCLK经高经高速外设分频器分频得到。速外设分频器分频得到。22F281X的锁相环、时钟、看门狗、以及低功耗模式的锁相环、时钟、看门狗、以及低功耗模式都是通过相应的寄存器控制,各寄存器如表都是通过相应的寄存器控制,各寄存器如表2-7所示所示 232812基于基于PLL的时钟模块可以采用两种模式,即的时钟模块可以采用两种模式,即PLL未被禁止(旁路或使能)和未被禁止(旁路或使能)和PLL禁止。禁止。2、晶体振荡器和锁相环晶体振荡器和锁相环243低功率模式低功率模式F2812的低功率模式如表的低功率模式如表2-10所示。所示。IDLE模式:模式:低功耗模块(低功耗模块(LPM)不完成任何工作。)不完成任何工作。STANDBY模式:模式:所有外设被关闭,只有看门狗起作用。所有外设被关闭,只有看门狗起作用。HALT模式:模式:所有外设被关闭,晶振、锁相环、看门狗均不所有外设被关闭,晶振、锁相环、看门狗均不工作。工作。低功耗模式由设置低功耗模式由设置LPMCR0、LPMCR1寄存器寄存器进行控制进行控制254看门狗模块看门狗模块1)看门狗功能结构看门狗功能结构看门狗电路有一个看门狗电路有一个8位的看门狗加法计数器位的看门狗加法计数器WDCNTR,如果,如果WDCNTR计数到最大值时,看门狗模块就会产生一个输出脉冲(宽度为计数到最大值时,看门狗模块就会产生一个输出脉冲(宽度为512个振荡器时钟)。为了防止个振荡器时钟)。为了防止WDCNTR溢出,通常可以采用两种方法:溢出,通常可以采用两种方法:一种是禁止看门狗;另一种就是定期的通过软件向看门狗复位控制寄存一种是禁止看门狗;另一种就是定期的通过软件向看门狗复位控制寄存器(器(8位的位的WDKEY)写入)写入0 x55+0 xAA,能够清除,能够清除WDCNTR。262.看门狗寄存器看门狗寄存器为了实现看门狗的功能,需要使用其为了实现看门狗的功能,需要使用其内部功能寄存器。内部功能寄存器。这些寄存器是:这些寄存器是:(1)看门狗计数器寄存器:看门狗)看门狗计数器寄存器:看门狗时钟时钟WDCLK连续计数的当前的计数值连续计数的当前的计数值(2)看门狗复位器寄存器)看门狗复位器寄存器:看门狗:看门狗计数器清零或看门狗复位计数器清零或看门狗复位 (3)看门狗控制寄存器)看门狗控制寄存器:看门狗时:看门狗时钟钟WDCLK的倍率设置、模块屏蔽等的倍率设置、模块屏蔽等(4)系统控制和状态寄存器)系统控制和状态寄存器:看门:看门狗中断控制和状态。狗中断控制和状态。275 TMS320F2812定时器 F2812有有3个个32位定时器,其中定时器位定时器,其中定时器1、定时器定时器2预留给实时操作系统使用,定时器预留给实时操作系统使用,定时器0用用户可以使用。户可以使用。图2-25 定时器功能框图28图2-26 3个定时器在系统中的的连接29(1)定定时时器器的的寄寄存存器器30TMS32OF2812芯片提供了芯片提供了56个多功能引脚,用户个多功能引脚,用户可以通过将可以通过将GPxMUX设置为不同数值,从而可以将这设置为不同数值,从而可以将这些引脚作为片内外设的输入些引脚作为片内外设的输入/输出引脚输出引脚(片内外设片内外设I/0),或者在不使用片内外设时,也可以用作数字或者在不使用片内外设时,也可以用作数字I/O口驱动口驱动外围电路。其逻辑如图外围电路。其逻辑如图2-31所示。所示。TMS320F2812的的GPIO多路复用器在将有关引脚多路复用器在将有关引脚用作数字用作数字I/0口时,包括两个口时,包括两个16位的位的I/0口口GPIOA、GPIOB;一个;一个4位的数字位的数字I/O口口GPIOD;一个;一个3位的数位的数字字I/O口口GPIOE及一个及一个2位的数字位的数字I/O口口GPIOF。在实。在实际的使用中,可以使用际的使用中,可以使用GPIO的有关寄存器选择和控制的有关寄存器选择和控制这些共享引脚的操作特性这些共享引脚的操作特性;当选择某个引脚用作当选择某个引脚用作I/0口口时,可以通过时,可以通过GPxDIR寄存器来设置引脚的信号,去寄存器来设置引脚的信号,去除噪声对信号的干扰。除噪声对信号的干扰。F812的通用的通用I/O引脚绝大部分引脚绝大部分是复用功能引脚,通过是复用功能引脚,通过GPIO的寄存器可以配置和改变的寄存器可以配置和改变引脚功能。引脚功能。GPIO寄存器如表寄存器如表2-14所示。所示。6TMS320F812的通用的通用I/O31图图2-31 2-31 多功能多功能GPIOGPIO选择框图选择框图3233如果多如果多功能引脚配功能引脚配置为数字量置为数字量I/O模式,模式,又可以通过又可以通过GPIO数据数据寄存器来对寄存器来对相应的引脚相应的引脚进行操作。进行操作。GPIO数据数据寄存器如表寄存器如表2-15所示。所示。342.2.7TMS320F2812的中断系统的中断系统 1TMS320F2812中断概述中断概述F2812的的CPU能够支持一个不可屏蔽中断能够支持一个不可屏蔽中断NMI和和16个可个可屏蔽的中断屏蔽的中断INT1-INT14、RTOSINT和和DLOGINT,其中可,其中可屏蔽中断中的屏蔽中断中的INT1-INT12,是平时经常使用的中断。,是平时经常使用的中断。F2812中设计了一个专门处理外设中断的扩展模块中断控制中设计了一个专门处理外设中断的扩展模块中断控制器器PIE(thePeripheralInterruptExpansionblock),它能),它能够对各种中断请求源够对各种中断请求源F2812的中断系统框图如图的中断系统框图如图2-32所示。所示。PIE可以支持可以支持96个不同的中断,这些中断分成了个不同的中断,这些中断分成了12个组,个组,每个组有每个组有8个中断,而且每个组都被反馈到个中断,而且每个组都被反馈到CPU内核的内核的12条条中断线中的某一条上(中断线中的某一条上(INT1-INT12),这里其实也是用到),这里其实也是用到了多路复用的原理。值得一提的是,了多路复用的原理。值得一提的是,PIE目前只使用了目前只使用了96个个终端中的终端中的45个,其他的等待将来的功能扩展。个,其他的等待将来的功能扩展。F2812的中断的中断分组如表分组如表2-16所示。所示。35图图2-32 F28122-32 F2812的中断系统框图的中断系统框图362812的中断是的中断是3级中断机制,分别是外设级,级中断机制,分别是外设级,PIE级以及级以及CPU级,其结构如图级,其结构如图2-33所示。一个外设中断所示。一个外设中断请求,任意一级的不许可,请求,任意一级的不许可,CPU最终都不会执行该外最终都不会执行该外设中断。设中断。图2-33 F2812的3级中断结构37(1)外设级)外设级。程序执行过程中,某个外设产。程序执行过程中,某个外设产生了中断事件,那么这个外设的某个寄存生了中断事件,那么这个外设的某个寄存器中与该中断事件相关的中断标志位器中与该中断事件相关的中断标志位IF被被置为置为1。此时,如果该中断相应的中断使能。此时,如果该中断相应的中断使能位位IE=1,外设就向,外设就向PIE控制器发出中断请求。控制器发出中断请求。但是若但是若IE=0,外设就不会向,外设就不会向PIE发出中断请发出中断请求,相应的中断标志位会一直保持置位状求,相应的中断标志位会一直保持置位状态,一旦该中断被使能了,那么外设立刻态,一旦该中断被使能了,那么外设立刻会向会向PIE发出中断申请。发出中断申请。需要注意的是,不需要注意的是,不管在什么情况下,外设寄存器中的中断标管在什么情况下,外设寄存器中的中断标志位都必须人工清除。志位都必须人工清除。38(2)PIE级级。当外设产生中断事件,相关中断标志位置位,当外设产生中断事件,相关中断标志位置位,中断使能位使能之后,外设中断请求提交给中断使能位使能之后,外设中断请求提交给PIE模块。模块。PIE模块模块将将96个外设和外部引脚的中断分成个外设和外部引脚的中断分成12组,分别是组,分别是PIE1-PIE12。每个组的中断被多路汇集进入每个组的中断被多路汇集进入1个个CPU中断,中断,PIE1组中断都汇集组中断都汇集到到CPU中断的中断的INT1,同样的,同样的,PIE2的中断都被汇集到的中断都被汇集到CPU中断中断的的INT2,INT12组的中断都被汇集到了组的中断都被汇集到了CPU中端的中端的INT12。和外设级类似,和外设级类似,PIE控制器中的每个组都会有一个中断控制器中的每个组都会有一个中断标志寄存器标志寄存器PIEIFRx和和中断使能寄存器和和中断使能寄存器PIEIERx(x=1,2,12)。每个寄存器的低)。每个寄存器的低8位对应于位对应于8个外设中断,高个外设中断,高8位位保留。为了使每一组同一时间只能是一个中断被响应,保留。为了使每一组同一时间只能是一个中断被响应,PIE除了除了每组具有每组具有PIEIERx,PIEIFRx寄存器之外,还有一个寄存器之外,还有一个PIEACK寄寄存器,它的低存器,它的低12位分别对应着位分别对应着12个组,即个组,即INT1-INT12。假如。假如T1的周期中断被响应了,则该组(对应于的周期中断被响应了,则该组(对应于INT2)的)的PIEACK寄存寄存器的第器的第2位就会被置位,并且一直保持直到手动清除这个标志位。位就会被置位,并且一直保持直到手动清除这个标志位。当当CPU在响应在响应T1PNT的时候,的时候,PIEACK的第的第2位一直是位一直是1,这时,这时候如果候如果PIE2组内发生其他的外设中断,则暂时不会被组内发生其他的外设中断,则暂时不会被PIE响应,响应,必须等到必须等到PIEACK的第的第2位被复位之后,则立刻由位被复位之后,则立刻由PIE控制块将控制块将中断请求送至中断请求送至CPU。所以,每个外设中断被响应之后,一定要。所以,每个外设中断被响应之后,一定要对对PIEACK的相关位进行手动复位,否则同组内的其他中断都的相关位进行手动复位,否则同组内的其他中断都不会被响应。不会被响应。39(3)CPU级级。CPU也有标志寄存器也有标志寄存器IFR和使能和使能寄存器寄存器IER。当某外设中断请求通过。当某外设中断请求通过PIE发送到发送到CPU时,时,CPU级中与级中与INTx相关的中断标志位就会被置位。相关的中断标志位就会被置位。例如,例如,T1的周期中断的周期中断T1PINT的请求到达的请求到达CPU时,与时,与其相关的其相关的INT2的标志位被置位,该标志位被保存在的标志位被置位,该标志位被保存在IFR中。这时,中。这时,CPU不会马上去执行相应的中断,而不会马上去执行相应的中断,而是等待是等待CPU使能使能IER寄存器的相关位,并且对寄存器的相关位,并且对CPU寄寄存器存器ST1中的全局中断屏蔽位使能。如果中的全局中断屏蔽位使能。如果IER相关位相关位被置位,并且被置位,并且INTM的值为的值为0,则中断就会被,则中断就会被CPU响响应。应。CPU接到了中断的请求,会暂停正在执行的程接到了中断的请求,会暂停正在执行的程序,将相应的序,将相应的IER和和IFR位进行清除,位进行清除,EALLOW也也被清除,被清除,INTM被置位,并存储返回地址和自动保存被置位,并存储返回地址和自动保存相关的信息,从相关的信息,从PIE块中取出对应的中断向量块中取出对应的中断向量ISR,转而去执行中断服务程序。转而去执行中断服务程序。CPU级对中断标志位、级对中断标志位、中断使能位的操作都是自动的。中断使能位的操作都是自动的。402TMS320F2812PIE中断向量表及映射中断向量表及映射 F2812有有5个可用的中断向量表个可用的中断向量表,使用哪个取决于中断向量使用哪个取决于中断向量表映射模式的选择。控制中断向量表映射的比特位有表映射模式的选择。控制中断向量表映射的比特位有VMAP、M0M1MAP、MP/MC、ENPIE,它们对模式选择的影响如表它们对模式选择的影响如表2-17所示。其中所示。其中M1、M0模式保留,只供模式保留,只供TI测试使用。每个中断测试使用。每个中断向量占用向量占用2个单元(个单元(16位位2)。)。413TMS320F2812中断处理过程中断处理过程(1)接收中断请求。当有中断源发出中断申请后)接收中断请求。当有中断源发出中断申请后,F2812在处理完必要的指令后会立即对中断申请进行响应。在处理完必要的指令后会立即对中断申请进行响应。(2)响应中断。)响应中断。F2812接收中断申请后接收中断申请后,要对中断源进行要对中断源进行识别。如果是可屏蔽中断识别。如果是可屏蔽中断,则首先要检查中断源对应的屏蔽位是则首先要检查中断源对应的屏蔽位是否屏蔽了该中断否屏蔽了该中断;对于外设复用的中断对于外设复用的中断,要接着检查要接着检查PIE模块对模块对应的屏蔽位是否被屏蔽应的屏蔽位是否被屏蔽(PIE-IER寄存器寄存器),响应标志位是否被清响应标志位是否被清除除(PIEACK寄存器寄存器);最后还要检查该中断对应的最后还要检查该中断对应的CPU级中断是级中断是否被屏蔽了否被屏蔽了(IMR寄存器寄存器),F2812是否开放了可屏蔽中断是否开放了可屏蔽中断(INTM=0?)。如果是。如果是NMI(不可屏蔽中断不可屏蔽中断)或是软件中断或是软件中断,则则F2812立即进行响应。立即进行响应。(3)执行中断服务程序。中断响应后)执行中断服务程序。中断响应后,F281根据中断向量根据中断向量表取出中断服务程序表取出中断服务程序(ISR)的入口地址的入口地址,然后转入然后转入ISR中执行。中执行。可见,可见,1个外设复用的中断有个外设复用的中断有5个开关控制个开关控制:外设本身的中外设本身的中断使能控制位、对应的断使能控制位、对应的PIE中断使能控制位、中断使能控制位、PIEACK响应控响应控制位、制位、IMR寄存器中的使能位和总的使能控制位。寄存器中的使能位和总的使能控制位。424、PIE寄存器寄存器 435中断程序的编写中断程序的编写 TI自带的例程结构作为编写程序的框架,自带的例程结构作为编写程序的框架,其例程框架中已经将所有与其例程框架中已经将所有与2812相关的外设相关的外设函数及其地址都定义好了,只需根据中断处函数及其地址都定义好了,只需根据中断处理的要求,向相应的中断函数里填写相应的理的要求,向相应的中断函数里填写相应的内容。以下以内容。以下以T1的周期中断为例介绍中断程的周期中断为例介绍中断程序的编程结构。序的编程结构。44(1)主函数中的处理)主函数中的处理voidmain(void)./禁止和清除所有禁止和清除所有CPU中断中断DINT;IER=0 x0000;IFR=0 x0000;/初始化中断向量初始化中断向量InitPieCtrl();/初始化中断向量表初始化中断向量表InitPieVectTable();/使能使能PIE中断中断PieCtrlRegs.PIEIER2.bit.INTx4=1;/使能使能T1周期中断周期中断/开开CPU中断中断IER|=M_INT2;/开中断开中断2EINT;/使能全局中断使能全局中断ERTM;/使能实时中断使能实时中断45(2)在)在TI的例程的例程DSP28_DefaultIsr中断函数中根中断函数中根据中断服务要求填写中断处理程序。据中断服务要求填写中断处理程序。interruptvoidT1PINT_ISR(void).EvaRegs.EVAIFRA.bit.T1PINT=1;/清除中断标志清除中断标志位位PieCtrlRegs.PIEACK.bit.ACK2=1;/响应同组中断响应同组中断EINT;/开全局中断开全局中断461.SCI特点特点(1)2个外部引脚个外部引脚:SCITXD:SCI输出引脚;输出引脚;SCIRXD:SCI输输入引脚。如果不用入引脚。如果不用SCI功能,这两个引脚可设置成通用功能,这两个引脚可设置成通用I/O。(2)64K种可编程的通信速率种可编程的通信速率:当当BRRO时时:波特率波特率=LSRCLK(BRR+1)8)当当BRR=0时时:波特率波特率=LSRCLK16。(3)数据格式数据格式:一位起始位;一位起始位;1-8位数据长度位,可编程;位数据长度位,可编程;可选择奇校验、偶校验或无校验;可选择奇校验、偶校验或无校验;1或或2个停止位。个停止位。(4)4种错误检测标志种错误检测标志:奇偶校验错误、超时错误、帧错奇偶校验错误、超时错误、帧错误和间断检测错误。误和间断检测错误。(5)全)全/半双工通信模式。半双工通信模式。(6)接收和发送双缓冲。)接收和发送双缓冲。(7)串口数据发送和接收过程可以通过中断方式或查询)串口数据发送和接收过程可以通过中断方式或查询方式完成。方式完成。(8)2种多处理器唤醒方式:空闲线唤醒和地址位唤醒。种多处理器唤醒方式:空闲线唤醒和地址位唤醒。(9)13个个SCI模块控制寄存器。模块控制寄存器。(10)16级发送级发送/接收接收FIFO。2.2.8SCI串行通信接口串行通信接口472、SCI与与CPU连接连接图2-37是SCI模块与CPU的连接示意图。图图2-37 SCI2-37 SCI模块与模块与CPUCPU的连接的连接484 SCI模块结构 图2-38 SCI模块框图491)多处理器异步通信模式)多处理器异步通信模式SCI支持多处理器异步通信,有支持多处理器异步通信,有2种通信模式:种通信模式:空闲线多处理器模式和地址位模式。空闲线多处理器模式和地址位模式。地址位模式地址位模式中的中的“add/data”位用来进行多位用来进行多处理器之间的通信联络,对于发送方,该位为处理器之间的通信联络,对于发送方,该位为“1”表示本帧发送的数据是表示将要通信方处表示本帧发送的数据是表示将要通信方处理器的地址,为理器的地址,为“0”表示本帧发送的是数据,表示本帧发送的是数据,接收方与本身地址相比较,发送方和接收方地址接收方与本身地址相比较,发送方和接收方地址一致,才能建立通信关系。一致,才能建立通信关系。空闲线模式空闲线模式下处理多处理器通信,是以数据下处理多处理器通信,是以数据块的形式传送。通常一个数据块中可以有若干帧,块的形式传送。通常一个数据块中可以有若干帧,其中第一帧固定为地址帧,用来发送或接收地址,其中第一帧固定为地址帧,用来发送或接收地址,其后是数据帧,地址帧和数据帧之间的空闲位要其后是数据帧,地址帧和数据帧之间的空闲位要求求10位以上,而数据帧之间的空闲位位以上,而数据帧之间的空闲位10位。数位。数据块之间的空闲位必须据块之间的空闲位必须10位以上。位以上。50图2-39 SCI数据帧格式512)SCI发送发送/接收中断控制接收中断控制SCI发发送送/接接收收都都是是通通过过一一个个16级级FIFO,当当发发送送/接接收收数数据据进入进入FIFO0,将产生,将产生RXINT或或TXINT中断。中断。图2-40 SCI中断控制逻辑52533)SCI的寄存器的寄存器SCI通信的操作主要通过对其内部的寄存器来设置和控制来实现。542.2.9 SPI串行外设接口 SPI(SerialPeripheralInterface)是一个高速同步的串行)是一个高速同步的串行输入输入/输出口。输出口。1、SPI特点特点(1)可编程主、从两种工作方式。)可编程主、从两种工作方式。(2)2种传输方式种传输方式:2线制(半工)和线制(半工)和3线制(全双工)。线制(全双工)。(3)波特率可编程:有)波特率可编程:有125种不同的设置。种不同的设置。当当SPIBRR=3-127时,波特率时,波特率=LSPCLK/(SPIBRR+l);当当SPIBRR=0,1,或或2时,波特率时,波特率=LSPCLK/4。(4)数据字长)数据字长:可编程的可编程的1-16个数据长度。个数据长度。(5)4种时钟模式种时钟模式(由时钟极性和时钟相位控制由时钟极性和时钟相位控制);(6)接收和发送可同时操作)接收和发送可同时操作(可以通过软件屏蔽发送功能可以通过软件屏蔽发送功能)。(7)通过中断或查询方式实现发送和接收操作。)通过中断或查询方式实现发送和接收操作。(8)9个个SPI模块控制寄存器模块控制寄存器(SPI模块的寄存器都是模块的寄存器都是16位,位,当访问这些寄存器时,低字节当访问这些寄存器时,低字节(位位7-0)是寄存器的数据,对高字是寄存器的数据,对高字节节(位位15-8)进行读操作返回进行读操作返回0,写操作没有影响,写操作没有影响)。(9)16级发送级发送/接收接收FIFO。(10)延时发送控制。延时发送控制。55 2PCI功能框图及连接信号功能框图及连接信号 PCI模块主要由主/从控制单元、速率控制单元、RX FIFO缓冲寄存器、TX FIFO缓冲寄存器、发送/接收中断控制单元等组成。PCI模块对外的连接信号主要有4个外部引脚连接信号,2个和CPU连接的中断信号和1个时钟控制信号,SPI信号如表2-33 所示。图2-53 SPI与CPU连接56图2-54 SPI模块功能框图573SPI的操作的操作SPI有3种发送数据方式:(1)主控制器发送数据,从控制器发送伪数据;(2)主控制器发送数据,从控制器发送数据;(3)主控制器发送伪数据,从控制器发送数据 58图2-55 SPI主-从控制器的连接591)主从操作模式主从操作模式SPI接口有主和从接口有主和从2种操作方式。种操作方式。主模式:主模式:Master/Slave=1,SPI产生串行时钟由产生串行时钟由SPICLK引脚输出,系统从引脚输出,系统从SPISIMO输出数据(最输出数据(最高位高位MSB开始),由开始),由SPISOMI引脚输入数据并锁存引脚输入数据并锁存(移入(移入SPIDAT的最低有效位的最低有效位LSB),),/SPISTE为为SPI的片选信号。通过的片选信号。通过SPIBRR寄存器可以设置寄存器可以设置SPI的的126种不同的数据传输率。种不同的数据传输率。从模式:从模式:Master/Slave=0,串行时钟由,串行时钟由SPICLK引脚输入,系统从引脚输入,系统从SPISIMO输入数据,由输入数据,由SPISOMI引脚输出数据,引脚输出数据,/SPISTE为为SPI的片选信号。的片选信号。602)SPI中断中断(1)五个控制位(五个控制位(SPICTL.0、SPIST.6、SPICTL.4、SPIST.7、SPIPRI.6)可以用于初始化)可以用于初始化SPI中断,这些中断,这些控制位的应用见于控制位的应用见于“2.2.8.5SPI的寄存器的寄存器”。(2)SPI数据格式数据格式当数据少于当数据少于1616位时,位时,SPISPI操作按以下规则处理:操作按以下规则处理:当数据写入当数据写入SPIDATSPIDAT和和SPITXBUFSPITXBUF寄存器时,必须左对寄存器时,必须左对齐;齐;当数据从当数据从SPIRXBUFSPIRXBUF寄存器读取时,必须右对齐;寄存器读取时,必须右对齐;SPIRXBUFSPIRXBUF寄存器中包含了最新接收到的右对齐的数寄存器中包含了最新接收到的右对齐的数据,再加上已移位到左边的上次留下的位。据,再加上已移位到左边的上次留下的位。613)波特率和时钟设置波特率和时钟设置SPI波特率通过波特率控制寄存器波特率通过波特率控制寄存器SPIBRR进行设置,进行设置,SPI的时钟模式通过的时钟模式通过SPI配置控制寄存器和配置控制寄存器和SPI操作控制操作控制寄存器进行控制。寄存器进行控制。SPI有以下有以下4种时钟模式:种时钟模式:62(1)无相位延时的下降沿无相位延时的下降沿:SPICLK为高电平有效。为高电平有效。在在SPICLK信号的下降沿发送数据,在信号的下降沿发送数据,在SPICLK信信号的上升沿接收数据。号的上升沿接收数据。(2)有相位延时的下降沿有相位延时的下降沿:SPICLK为高电平有效。为高电平有效。在在SPICLK信号的下降沿之前的半个周期发送数据,信号的下降沿之前的半个周期发送数据,在在SPICLK信号的下降沿接收数据。信号的下降沿接收数据。(3)无相位延迟的上升沿无相位延迟的上升沿:SPICLK为低电平有效。为低电平有效。在在SPICLK信号的上升沿发送数据,在信号的上升沿发送数据,在SPICLK信信号的下降沿接收数据。号的下降沿接收数据。(4)有相位延迟的上升沿有相位延迟的上升沿:SPICLK为低电平有效。为低电平有效。在在SPICLK信号的下降沿之前的半个周期发送数据,信号的下降沿之前的半个周期发送数据,而在而在SPICLK信号的上升沿接收数据。信号的上升沿接收数据。634)SPIFIFOSPI有有2个个1616位的位的FIFO,RXFIFO用于数据接收,用于数据接收,TXFIFO用于数据发送,如图用于数据发送,如图2-56所示。所示。发送缓冲区发送缓冲区TXBUF和接收缓冲区和接收缓冲区RXBUF作为作为FIFO和移位和移位寄存器之间的缓冲器。对于发送,只有当移位寄存器最后一位寄存器之间的缓冲器。对于发送,只有当移位寄存器最后一位移出后,移出后,TXBUF才能由才能由TXFIFO中装载新的数据。中装载新的数据。TXBUF数据装载到数据装载到TXFIFO中的速度是可编程的,即发送中的速度是可编程的,即发送2个数据之间的延时是可以对个数据之间的延时是可以对SPIFFCT寄存器设置来控制,可寄存器设置来控制,可以选择以选择0255个串行时钟周期,以适合不同速度设备的串行通个串行时钟周期,以适合不同速度设备的串行通信。信。SPI中断有中断有SPI接收中断(接收中断(SPIRXINT)和)和SPI发送中断发送中断(SPITXINT),都具有可编程中断触发的功能,当都具有可编程中断触发的功能,当FIFO状态状态位位(RXFFST、TXFFST)和中断级别触发位和中断级别触发位(RXFFIL、TXFFIL)匹匹配,就会产生中断。接收配,就会产生中断。接收FIFO中断级别触发位默认值是中断级别触发位默认值是0 x11111,发送,发送FIFO中断级别触发位默认值是中断级别触发位默认值是0 x00000。64图2-56 SPI FIFO结构图655)SPI的寄存器的寄存器SPI模块的操作和控制主要通过对其内部的寄存器控制来模块的操作和控制主要通过对其内部的寄存器控制来实现。表实现。表2-35中给出的是与中给出的是与SPI有关的寄存器。这些寄存器被有关的寄存器。这些寄存器被映射到映射到F2812定义的第定义的第2个外设帧空间(个外设帧空间(PeripheralFrames2)。)。该空间只允许该空间只允许16位的访问,所有寄存器都是位的访问,所有寄存器都是16位格式。位格式。662.2.10 事件管理器1事件管理器概述事件管理器概述TMS320F2812包含两个事件管理器包含两个事件管理器(EV)模模块块EVA和和EVB,这两个,这两个EV模块具有相同的功模块具有相同的功能,每个事件管理器模块包括能,每个事件管理器模块包括2个个16位通用定位通用定时器时器(GP)、3个全比较个全比较PWM单元、单元、1个正交个正交编码电路以及编码电路以及3个捕获单元。事件管理器接口个捕获单元。事件管理器接口如图如图2-69所示,事件管理器的信号名称如表所示,事件管理器的信号名称如表2-44所示。所示。67图2-69 事件管理器接口6869图2-70 事件管理器A功能框图70(1)可编程通用定时器)可编程通用定时器。可用于产生采样周期,作为比较单元可用于产生采样周期,作为比较单元产生产生PWM输出以及软件定时的时基。在向上或向下记数操作中,每输出以及软件定时的时基。在向上或向下记数操作中,每个通用定时器有个通用定时器有3种连续工作方式,具有可编程预定标器的内部或外种连续工作方式,具有可编程预定标器的内部或外部输入时钟。通用定时器也可为其他事件管理器子模块提供时基部输入时钟。通用定时器也可为其他事件管理器子模块提供时基;周周期和比较寄存器的双缓冲允许定时器期和比较寄存器的双缓冲允许定时器(PWM)周期和比较周期和比较/PWM脉冲宽度脉冲宽度被高速编程改变。通用定时器可独立工作或互相同步工作,与通用定被高速编程改变。通用定时器可独立工作或互相同步工作,与通用定时器有关的比较寄存器可用作比较功能和时器有关的比较寄存器可用作比较功能和PWM波形的产生。波形的产生。(2)比较单元。)比较单元。主要用来生成主要用来生成PWM波形,每个比较单元可以生波形,每个比较单元可以生成一对(两路)互补的成一对(两路)互补的PWM波形,生成的波形,生成的6路路PWM波形正好可以驱波形正好可以驱动一个三相桥电路。动一个三相桥电路。F2812的两个事件管理器可产生的两个事件管理器可产生16路独立路独立PWM信号。由信号。由3个具有可编程死区的全比较单元产生独立的个具有可编程死区的全比较单元产生独立的3对对PWM信号,信号,由通用定时器比较单元产生独立的两路由通用定时器比较单元产生独立的两路PWM信号。对每一个比较单信号。对每一个比较单元输出,死区的产生可单独被使用元输出,死区的产生可单独被使用/禁止。利用双缓冲的禁止。利用双缓冲的ACTRx寄存寄存器,死区产生器的输出状态可以被高速配置及改变。器,死区产生器的输出状态可以被高速配置及改变。(3)正交解码电路。)正交解码电路。正交编码脉冲正交编码脉冲(QEP)电路可以对引脚电路可以对引脚CAP1/QEP1和和CAP2/QEP2上的正交编码脉冲进行解码和计数,可以上的正交编码脉冲进行解码和计数,可以直接处理光电码盘的直接处理光电码盘的2路正交编码脉冲进行鉴相和路正交编码脉冲进行鉴相和4倍频。另外,倍频。另外,F2812允许引脚允许引脚CAP-QEPI(EVA的的CAP3-QEPI1和和EVB的的CAP6-QEPI2)复位定时器复位定时器2。(4)捕获单元。)捕获单元。用于捕获输入引脚上信号的跳变,两个事件管用于捕获输入引脚上信号的跳变,两个事件管理器模块共有理器模块共有6个捕获单元。每个单元各有一个两级的个捕获单元。每个单元各有一个两级的FIFO缓冲堆栈。缓冲堆栈。当捕获发生时,相应的中断标志被置位,并向当捕获发生时,相应的中断标志被置位,并向CPU发中断请求。发中断请求。712事件管理的通用定时器事件管理的通用定时器图2-71 通用定时器功能框图72(1)通用定时器功能通用定时器功能定时器具有以下功能:定时器具有以下功能:一个可读写的一个可读写的16位递增位递增/递减定时器计数器递减定时器计数器TxCNT;一个可读写的一个可读写的16位定时器比较寄存器位定时器比较寄存器TxCMPR;一个可读写的一个可读写的16位定时器周期寄存器位定时器周期寄存器TxPR;一个可读写的一个可读写的16位定时器控制寄存器位定时器控制寄存器TxCON;定时器时钟可以选择内部时钟或外部时钟,可对内部时钟定时器时钟可以选择内部时钟或外部时钟,可对内部时钟或外部时钟输入预倍频和分频;或外部时钟输入预倍频和分频;四个可屏蔽中断四个可屏蔽中断:下溢(下溢(TxCNT=0 x0000)、上溢)、上溢(TxCNT=0 xFFFF)、定时器比较()、定时器比较(TxCNT=TcCMPR)
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 商业管理 > 营销创新


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!