TMS320f2812.docx
《TMS320f2812.docx》由会员分享,可在线阅读,更多相关《TMS320f2812.docx(29页珍藏版)》请在冰豆网上搜索。
TMS320f2812
tms320f2812中文资料介绍:
简介:
德州仪器所生产的TMS320F2812数字讯号处理器是针对数字控制所设计的DSP,整合了DSP及微控制器的最佳特性,主要使用在嵌入式控制应用,如数字电机控制(digitalmotorcontrol,DMC)、资料撷取及I/O控制(dataacquisitionandcontrol,DAQ)等领域。
针对应用最佳化,并有效缩短产品开发周期,F28x核心支持全新CCS环境的Ccompiler,提供C语言中直接嵌入汇编语言的程序开发介面,可在C语言的环境中搭配汇编语言来撰写程序。
值得一提的是,F28xDSP核心支持特殊的IQ-math函式库,系统开发人员可以使用便宜的定点数DSP来发展所需的浮点运算算法。
F28x系列DSP预计发展至400MHz,目前已发展至150MHz的Flash型式。
1.高性能静态CMOS制成技术
(1)150MHz(6.67ns周期时间)
(2)省电设计(1.8VCore,3.3VI/O)
(3)3.3V快取可程序电压
2.JTAG扫描支持
3.高效能32BitCPU
(1)16x16和32x32MACOperations
(2)16x16DualMAC
(3)哈佛总线结构
(4)快速中断响应
(5)4M线性程序寻址空间(LinearProgramAddressReach)
(6)4M线性数据寻址空间(LinearDataAddressReach)
(7)TMS320F24X/LF240X程序核心兼容
4.芯片上(On-Chip)的内存
(1)128Kx16Flash(4个8Kx16,6个16Kx16)
(2)1Kx16OTPROM(单次可程序只读存储器)
(3)L0和L1:
2组4Kx16SARAM
(4)H0:
1组8Kx16SARAM
(5)M0和M1:
2组1Kx16SARAM
共128Kx16Flash,18Kx16SARAM
5.外部内存接口
(1)支持1M的外部内存
(2)可程序的WaitStates
(3)可程序的Read/WriteStrobeTi最小g
(4)三个独立的芯片选择(ChipSelects)
6.频率与系统控制
(1)支持动态的相位锁定模块(PLL)比率变更
(2)On-Chip振荡器
(3)看门狗定时器模块
7.三个外部中断
?
8.外围中断扩展方块(PIE),支持45个外围中断
9.128位保护密码
(1)保护Flash/ROM/OTP及L0/L1SARAM
(2)防止韧体逆向工程
10.三个32位CPUTimer
11.电动机控制外围
(1)两个事件管理模块(EVA,EVB)
(2)与240xADSP相容
12.
(1)同步串行外围接口SPI模块
(2)两个异步串行通讯接口SCI模块,标准UART
(3)eCAN(EnhancedControllerAreaNetwork)
(4)McBSPWithSPIMode
13.16个信道12位模拟-数字转换模块(ADC)
(1)2x8通道的输入多任务
(2)两个独立的取样-保持(Sample-and-Hold)电路
(3)可单一或同步转换
(4)快速的转换率:
80ns/12.5MSPS
图1TMS320F2812功能方块图。
2.2TMS320F2812硬件结构介绍
2.2.1OSC与PLL方块
F2812芯片上设计了一个相位锁定模块(PLL),这个模块将会提供整个芯片所需频率源。
PLL模块方块图如图2所示。
PLL提供了4位(PLLCR[3:
0])的PLL倍率选择,共10种放大倍率,可动态改变CPU的频率频率。
如表1所示为PLLCR缓存器的格式,缓存器的位说明如表2所示。
XCLKIN:
外部频率源输入。
OSCCLK:
与XCLKIN的频率一样。
CLKIN:
CPU维持正常工作所需的频率源。
这是整个芯片的最高频率。
SYSCLKOUT:
与CLKIN的频率一样,提供给外围电路使用。
图2OSC与PLL方块图。
表1PLLCR缓存器位格式表:
15-4
3210
Reserved
DIV
R-0
R/W-0
R:
读取;R/W:
可读可写;-0=重置后的值
NOTE:
EALLOW-protectedregister
表2PLLCR缓存器位说明表:
位
名称
功能描述
15-4
Reserved
保留
3-0
DIV
DIV可以控制(不论PLL是否在旁路状态皆可控制)及设定(仅在PLL为非旁路状态时才可设定)PLL的频率比:
=0000,CLKIN=OSCCLK/2(PLLbypass)
=0001,CLKIN=(OSCCLK*1.0)/2
=0010,CLKIN=(OSCCLK*2.0)/2
=0011,CLKIN=(OSCCLK*3.0)/2
=0100,CLKIN=(OSCCLK*4.0)/2
=0101,CLKIN=(OSCCLK*5.0)/2
=0110,CLKIN=(OSCCLK*6.0)/2
=0111,CLKIN=(OSCCLK*7.0)/2
=1000,CLKIN=(OSCCLK*8.0)/2
=1001,CLKIN=(OSCCLK*9.0)/2
=1010,CLKIN=(OSCCLK*10.0)/2
=1011-1111,保留
2.2.2系统频率控制
如图3所示,所有外围电路的频率都是由SYSCLKOUT经过除频而
来,F2812将所有外围分成两类,分别是:
1.高速外围:
包括事件管理模块(EVA,EVB)及ADC。
2.低速外围:
包括SCI-A/B、SPI、McBSP。
HSPCLK:
高速外围的频率,可经由HISPCP缓存器改变其频率,如表
2-3所示为HISPCP缓存器的格式,缓存器的位说明如表4所示。
LSPCLK:
低速外围的频率,可经由LOSPCP缓存器改变其频率,如表
2-5所示为LOSPCP缓存器的格式,缓存器的位说明如表6所示。
图3系统频率方块图。
表3HISPCP缓存器位元格式表:
15-3
210
Reserved
HSPCLK
R-0
R/W-001
R:
读取;R/W:
可读可写;-0=重置后的值
NOTE:
EALLOW-protectedregister
表4HISPCP缓存器位元说明表:
位元
名称
功能描述
15-3
Reserved
保留
2-0
HSPCLK
这些位元设定高速外围频率比(HSPCLK)与SYSCLKOUT的关系:
如果HISPCP≠0,HSPCLK=SYSCLKOUT/(HISPCPx2)
如果HISPCP=0,HSPCLK=SYSCLKOUT
=000,高速频率=SYSCLKOUT/1
=001,高速频率=SYSCLKOUT/2(预设值)
=010,高速频率=SYSCLKOUT/4
=011,高速频率=SYSCLKOUT/6
=100,高速频率=SYSCLKOUT/8
=101,高速频率=SYSCLKOUT/10
=110,高速频率=SYSCLKOUT/12
=111,高速频率=SYSCLKOUT/14
表5LOSPCP缓存器位元格式图:
15-3
210
Reserved
LSPCLK
R-0
R/W-010
图7CPU-Timers方块图
2.5事件管理模块(EVA,EVB)
如图8事件管理模块包括一般用途定时器(General-Purpose,GPTimers)、全比较(full-compare)/PWM单元、补抓单元(capture)及四象限编码器(QEP)电路,如此丰富的功能足以用于动态控制(motioncontrol)及电机控制(motorcontrol)的应用。
如表9所示,这两个事件管理模块(EVA和EVB)
有相同的外围,能够控制2个三相电动机,可以应用于多轴动态控制。
图8事件管理模块(EVA)之功能方块图。
表9事件管理模块和信号名称:
2.5.1脉波宽度调变(PWM)
PWM的功能包括:
1.拥有宽广可程序的Dead-time长度。
2.PWM载波频率实时的改变。
3.PWM脉波宽度实时的改变。
4.可以透过程序来产生非对称、对称及空间向量PWM信号。
5.提供外部保护接脚PDPINTx来保护功率级板,当这个接脚为”LOW”时,PWM信号将会强制变为高阻抗.如图9所示为PWM电路的方块图,其动作流程大致为:
比较器的值(CMPRx)进来与T1CON所设定的对称或非对称之波形比较,然后产生方波PHx输出进入Dead-time产生电路产生出两个有
Dead-time的信号,再透过输出逻辑电路来设定每个PWM的输出逻辑,如此就可产生所需要的PWM信号。
图9PWM电路方块图
如图10所示为非对称PWM波形图,其中PWM1、PWM3、PWM5输出逻辑设为ActiveHigh,PWM2、PWM4、PWM6输出逻辑设为ActiveLow,如此设定Dead-time会使得PWMx与PWMX+1两讯号不同时为High,适用于IGBT为ActiveHigh之功率级板。
图10非对称PWM信号波形图(x=1,3,or5)。
如图11所示为对称PWM波形图,其中PWM1、PWM3、PWM5输出逻辑设为ActiveLow,PWM2、PWM4、PWM6输出逻辑设为ActiveHigh,如此设定Dead-time会使得PWMx与PWMX+1两信号不同时为Low,适用于IGBT为ActiveLow之功率级板,本系统就是用这个设定方式。
图11对称PWM信号波形图(x=1,3,or5)。
2.5.2QEP单元
每个事件管理模块都有一个四象限编码计数电路(QEP电路),使用者可以藉由这个电路将光编码器两个相差90度的信号送到EVA的CAP1/QEP1及CAP2/QEP2或EVB的CAP4/QEP3及CAP5/QEP4,来取得位置与速度的信息。
F2812能够透过EVA和EVB撷取两个Encoder的信号。
EVA的QEP电路以GPtimer2为频率基础,而EVB的QEP电路以GPtimer4为频率基础,与F240最大的差异在于无法合并两个16位的定时器来扩展成32位的定时器,只能以16位的定时器来使用。
QEP电路的定时器之计数模式必需操作于”方向性上数/下数计数模式”。
EVA的QEP电路方块图如图12所示。
EVB的QEP电路方块图如图13所示。
图12EVA的QEP电路方块图。
图13EVB的QEP电路方块图。
如图14所示为典型的Encoder输出信号,在图的左半部,看到QEP1领先QEP2为90度,所以定时器使用上数型。
在图的右半部,看到QEP2领先QEP1为90度,所以定时器使用下数型。
图14QEP的解碼时序及方向图。
2.6通用输入/输出(GPIO)接口
图15为GPIO的方块图,F2812许多外围都与GPIO共享接脚,使用时需要设定GPxMUX、GPxDIR、GPxQUAL、GPxDAT等缓存器来达到硬件上的运用。
GPxMUX:
每个I/O端口都有一个多任务缓存器(GPxMUX),GPxMUX缓存器是用来选择这些接脚被拿来当做数字I/O(GPxMUX.bit=0)还是外围I/O(GPxMUX.bit=1)。
当DSP重置时,所有I/O预设为数位I/O。
GPxDIR:
每个I/O端口都有一个方向控制缓存器(GPxDIR),用来设定为数字I/O时,其接脚为输入(GPxDIR.bit=0)或输出(GPxDIR.bit=1)。
当DSP
重置时,所有I/O预设为数字I/O。
GPxQUAL:
输入取样控制缓存器,用来设定做为数字I/O输入(INPUT)
时,其资料的取样率。
GPxDAT:
每个I/O端口都有一个数据缓存器(GPxDAT),用来读写接脚的状态。
图15GPIO方块图。
2.7模拟数字转换(Analog-to-DigitalConverter,ADC)模块图16为ADC模块。
ADC模块包括内建于取样/保持(sample-and-hold,S/H)的12-bitADC,ADC模块功能包括:
1.内建取样/保持(sample-and-hold,S/H)之12位ADC核心
2.模拟输入范围:
0.0V~3.0V
3.快速转换速率:
80nsat25-MHzADCclock,12.5MSPS
4.共16通道(channels)的多任务输入
取得输入模拟电压之数字电压值:
12-bit的ADC模块有25-MHzADC频率于80ns之快速转换,ADC模块有16个信道,可以设定成两个独立的8信道模块来服务事件管理(EVA,EVB)。
图16ADC模块方块图。
如图17所示为TI建议之连接图,其中若ADC模块的频率操作于1~18.75MHz时ADCRESEXT的电流偏压电阻使用24.9KΩ,若操作于18.75MHz~25MHz,ADCRESEXT的电流偏压电阻使用20KΩ。
本2812数
位控制板之ADC模块希望操作于25MHz,所以需使用20KΩ来做偏压电阻。
图17ADC管脚之连接。
2.8串行通讯接口(SerialCommunicationsInterface,SCI)模块
F2812如图18所示包含两个串行通讯接口(SCI)模块,SCI模块提供了DSP与其它标准non-return-to-zero(NRZ)格式的异步外围之间的数字通讯。
SCI的接收者和传输者皆采用双总线模式(Double-Buffered),每一个皆有自已独自的允许和中断位。
为了保证数据的完整性,SCI有中断侦测、
同位检测、过载和框架错误去检查接收进来的数据。
SCI模块主要的功能如
下所示:
1.两个外部的引脚位
.SCITXD:
SCI传送输出引脚位
.SCIRXD:
SCI接收输入引脚位
2.鲍率有64K种不同的速率,可藉由缓存器设定改变传输速率
3.数据字符(Data-word)格式
.一个开始位
.传输数据位长度格式,可从1到8之间作程序化选择
.奇同位检测/偶同位检测/不使用同位检测的选择
.可选用1或2个停止位
4.四种错误侦测旗标:
同位(Parity)、过载(Overrun)、框架(Framing)和中
断(Break)错误侦测
5.可选择使用半双工或是全双工操作模式
6.接收和与传输皆采用双总线模式(Double-buffered)
7.传输方法采用NRZ(non-return-to-zero)格式
图18串行通讯接口(SCI)模块之方块图。
增强型SCI的特色:
自动鲍率侦测硬件逻辑
16-level传输/接收FIFO
2.9串行外围接口(SerialPeripheralInterface,SPI)模块
F2812如图19所示包含四引脚位串行外围接口(SPI)模块。
SPI模块使用于DSP控制器和外部外围或另一个处理器两者之一的通讯。
典型的应用包含外部I/O或外围延伸装置,例如:
移位缓存器、显示装置和ADCs。
SPI之Master/Slave操作支持多重装置通讯。
SPI模块装置主要功能共有如下所述:
1.四个外部引脚位:
.SPISOMI:
SPIslave-输出/master-输入引脚位
.SPISIMO:
SPIslave-输入/master-输出引脚位
.SPISTE:
SPIslave传送-允许引脚位
.SPICLK:
SPI串行-频率引脚位
2.两个操作模式:
Master和Slave
3.鲍率:
125个不同可程序速率
4.数据字符(Data-word)长度:
1到16个数据位增强型SPI的特色:
16-level传输/接收FIFO
延迟传递控制
图19串行外围接口(SPI)模块之方块图。
2.10Bootloader开机模式
TMS320F2812单芯片提供多种的Boot开机模式供使用者选择和使用,这一小节主要描述Boot开机模式的方法。
如表10为Boot开机模式经由GPIOF中的四个接脚(GPIOF2、3、4、12)在开机时的状态来选择六种的开机动作。
表10Boot模式之GPIOF引脚位状态。
GPIOF4(SCITXDA)
GPIOF12(MDXA)
GPIOF3(SPISTEA)
GPIOF2(SPICLK)
模式选择(ModeSelected)
1
X
X
X
至Flash地址(0x3F7FF6)
0
1
X
X
至外部EEPROM呼叫SPI_Boot下载
0
0
1
1
至SCI-A呼叫SCI_Boot下载
0
0
1
0
至H0SARAM地址(0x3F8000)
0
0
0
1
至OTP地址(0x3D7800)
0
0
0
0
至GPIOB呼叫Parallel_Boot下载
图20Bootloader模式流程图。
如图20为Bootloader模式流程图,下列是Bootloader模式分析。
1.至FlashMemory:
在这个模式中,DSP会先跳去执行内部的FlashMemory地址(0x3F7FF6),所以使用者必需在0x3F7FF6这个地址烧录一段跳至Boot主程序的机械码,如:
LB_c_int00。
2.至H0SARAM:
在这个模式中,BootROM软件将设定F2812装置然后直接跳去地址0x3F8000(在H0SARAM内存方块的第一个地址)。
3.至OTP内存:
在这个模式中,BootROM软件将设定F2812装置然后直接跳去地址0x3D7800(在OTP内存方块之第一个地址)。
4.标准串行Boot模式(SCI):
在这个模式中,经由SCI-A端口加载程序代码到on-chip内存里,执后在内存里执行Boot程序。
5.SPIEEPROMBoot模式:
在这个模式中,经由SPI埠从外部EEPROM加载程序代码和数据到on-chip内存里。
6.从GPIO埠Boot:
在这个模式中,利用GPIOB从外部来加载程序代码和数据,这个模式分别支持8位和16位的数据串。
本文如需正确应用需结合英文原版资料配合查阅
R:
读取;R/W:
可读可写;-0=重置后的值
NOTE:
EALLOW-protectedregister
表6LOSPCP缓存器位元说明表。
位元
名称
功能描述
15-3
Reserved
保留
2-0
LSPCLK
这些位元设定低速外围频率比(LSPCLK)与SYSCLKOUT的关系:
如果LOSPCP≠0,LSPCLK=SYSCLKOUT/(LOSPCPx2)
如果LOSPCP=0,LSPCLK=SYSCLKOUT
=000,低速频率=SYSCLKOUT/1
=001,低速频率=SYSCLKOUT/2
=010,低速频率=SYSCLKOUT/4(预设值)
=011,低速频率=SYSCLKOUT/6
=100,低速频率=SYSCLKOUT/8
=101,低速频率=SYSCLKOUT/10
=110,低速频率=SYSCLKOUT/12
=111,低速频率=SYSCLKOUT/14
PCLKCR(外围频率控制缓存器)是用来允许或禁能各个外围模块的频率,当外围要使用时就必需将其频率允许,如此一来外围才能使用,而若不需使用的外围,可以将其频率关掉,如此可以达到节省功率的作用。
如表7所示为PCLKCR缓存器的格式,缓存器的位元说明如表8所示。
表7PCLKCR缓存器位元格式表*。
15
14
13
12
11
10
9
8
Reserved
ECANENCLK
Reserved
MCBSPENCLK
SCIBENCLK
SCIAENCLK
Reserved
SPIENCLK
R-0
R/W-0
R-0
R/W-0
R/W-0
R/W-0
R-0
R/W-0
7-4
3
2
1
0
Reserved
ADCENCLK
Reserved
EVBENCLK
EVAENCLK
R-0
R/W-0
R-0
R/W-0
R/W-0
R:
读取;R/W:
可读可写;-0=重置后的值
NOTE:
EALLOW-protectedregister
*如果外围区块没有使用,则此外围的频率将可以被关掉已达成最小的电力消耗
表8PCLKCR缓存器位元说明表:
位元
名称
功能描述
15
Reserved
保留
14
ECANENCLK
如果此位元被设定,在CAN外围范围内的系统频率将被致能。
在低电力操作下,此位将被使用者或重置设为0。
13
Reserved
保留
12
MCBSPENCLK
如果此位元被设定,在McBSP外围范围内的低速频率(LSPCLK)将被致能。
在低电力操作下,此位将被使用者或经由重置设为0。
11
SCIBENCLK
如果此位元被设定,在SCI-B外围范围内的低速频率(LSPCLK)将被致能。
在低电力操作下,此位元将被使用者或经由重置设为0。
10
SCIAENCLK
如果此位元被设定,在SCI-A外围范围内的低速频率(LSPCLK)将被致能。
在低电力操作下,此位将被使用者或经由重置设为0。
9
Reserved
保留
8
SPIAENCLK
如果此位元被设定,在SPI外围范围内的