TI_28335硬件设计参考
- 格式:pdf
- 大小:954.91 KB
- 文档页数:9
摘要随着计算机技术、微处理器技术以及电力电子技术的发展,基于数字信号处理器(Digital Signal Processor简称DSP)的脉宽调制(Pulse Width Modulation简称PWM)技术被广泛的应用于变频器,风力发电以及电机调速系统中。
在各种PWM 控制方式中,正弦脉宽调制(Sinusoidal PWM)因其算法简单、硬件实现容易、谐波较小以及能动态的修改幅值和频率等优点得到了广泛的应用。
由于数字信号处理技术的发展以及高性能DSP芯片的不断推出,越来越多的SPWM波形的产生都是基于DSP芯片来实现的,这不仅大大简化了硬件电路以及软件的设计,同时在精度和稳定性方面也得到了极大的提高。
本文介绍了采用TI公司推出的TMS320F28335,利用其ePWM模块,基于规则采样法的原理来产生单相SPWM波形的设计,并在示波器上观察了相关波形,同时利用RC低通滤波电路,验证了产生的SPWM波是正确的。
关键词:TMS320F28335;ePWM模块;SPWM1、实验容一、学习TMS320F28335的ePWM 模块的工作原理及其使用方法;二、单相SPWM 波形产生的设计,并验证生成的SPWM 的正确性;三、设计带死区的SPWM 波形;2、实验器材合众达28335控制板、面包板、电阻、电容、杜邦线、示波器(TDS 2012B )等3、实验原理3.1 SPWM 调制与实现原理如图 3.1所示,为了输出逆变器所需要的正弦波,将等腰三角形作为载波(Carrier wave),正弦波为调制波(Modulation wave),正弦调制波与三角载波的交点确定了逆变器开关器件的通断时刻,从而获得了一系列等幅不等宽的矩形脉冲波形,按照面积等效原理,每一个矩形波的面积与相应位置的正弦波面积相等,因此,该序列脉冲与期望的正弦波等效,这就是正弦脉宽调制原理。
本文采用的是双极性方式,即在正弦调制波的半个周期,三角载波在正负之间变化。
28335之系统时钟28335之系统时钟本系列⽂章由斌斌-龙臻(Mr_D_prince)独⽴完成,⾸发于QQ空间,会在百度空间、⽹易博客同步更新,转载必须注明作者和出处,必须注明原⽂链接。
注:本系列⽂章主要针对TI公司的C28xx系列DSP芯⽚的⼀些功能模块进⾏介绍,并描述基本的配置。
⽂章中提到的DSP芯⽚未说明即默认为TMS320F28335,简称为28335。
28335的系统时钟主要包括锁相环(PLL)、看门狗(WatchDog)、外部时钟(PeripheralClock)等⼏个模块。
⾸先介绍晶振与锁相环的电路模块,如下图所⽰:图1: OSC and PLL Block Diagram由该模块图可知系统时钟(CLKIN)由寄存器PLLCR、PLLSTS来决定。
DSP的时钟电路有多种设计,包括内部时钟模式和外部时钟模式,其中外部时钟模式有两种,⽽常⽤的为内部时钟模式,见图2、3、4。
图2: Using a 3.3-V External Oscillator图3:Using a 1.9 -V ExternalOscillator图4:Using the Internal Oscillator通常选择DSP的外部晶振为30M,则能达到的最⼤⼯作频率为150M,倍频值为5,由上⽂提及的寄存器PLLCR的低四位和寄存器PLLSTS的第7、8位来决定。
锁相环的详细设置见表1。
寄存器PLLSTS的详细介绍可参考⼿册Sprufb0d 的第五章第⼆节。
表1:PLL SETTING锁相环的设置由函数InitPll(DSP28_PLLCR,DSP28_DIVSEL)来完成,其中DSP28_PLLCR、DSP28_DIVSEL分别在头⽂件中⽤宏定义赋值为10、2,这样系统的时钟频率就为150M(外部晶振30M)。
InitPll(Uint16 val, Uint16 divsel)的函数体如下:void InitPll(Uint16 val, Uint16 divsel){if (SysCtrlRegs.PLLSTS.bit.MCLKSTS != 0){asm(" ESTOP0");}if (SysCtrlRegs.PLLSTS.bit.DIVSEL != 0){EALLOW;SysCtrlRegs.PLLSTS.bit.DIVSEL = 0;EDIS;}if (SysCtrlRegs.PLLCR.bit.DIV != val){EALLOW;SysCtrlRegs.PLLSTS.bit.MCLKOFF = 1;SysCtrlRegs.PLLCR.bit.DIV = val;EDIS;DisableDog();while(SysCtrlRegs.PLLSTS.bit.PLLLOCKS != 1){// ServiceDog();}EALLOW;SysCtrlRegs.PLLSTS.bit.MCLKOFF = 0;EDIS;}if((divsel == 1)||(divsel == 2)){EALLOW;SysCtrlRegs.PLLSTS.bit.DIVSEL = divsel;EDIS;}if(divsel == 3){EALLOW;SysCtrlRegs.PLLSTS.bit.DIVSEL = 2;DELAY_US(50L);SysCtrlRegs.PLLSTS.bit.DIVSEL = 3;EDIS;}}以上程序中含有“.bit”的为寄存器的位操作,“.bit”之前的为具体的寄存器。
TMS320x2833x,2823xDSC接口扩展 (XINTF)参考指南文献编号:SPRU949DSeptember2007–Revised January 2010前言 (5)1 功能描述 (7)1.1与TMS320x281x XINTF的区别 (7)1.2与TMS320x2834x XINTF的区别 (8)1.3访问XINTF空间 (8)1.4写操作紧跟读操作的流水线保护 (9)2 XINTF功能配置 (10)2.1外部接口(XINTF)配置寄存器及时序寄存器的设置 (10)2.2XINTF时钟 (11)2.3写缓存 (12)2.4每个XINTF区域的访问建立/激活/跟踪状态的定时 (12)2.5对每个区采样XREADY (13)2.6储体转接 (13)2.7区数据总线宽度 (14)3 外部DMA支持(XHOLD,XHOLDA) (16)4 建立,激活及跟踪状态的配置 (17)4.1忽略USEREADY信号 (17)4.2同步模式(USEREADY=1,READYMODE=0) (18)4.3异步模式(USEREADY=1,READYMODE=1) (18)5配置XBANK 周期 (22)6 XINTF 寄存器 (23)6.1 XINTF定时寄存器 (23)6.2 XINTF配置寄存器 (27)6.3 XBANK寄存器 (29)6.4 XREVISION寄存器 (29)6.5 XRESET寄存器 (29)7信号说明 (31)8波形 (32)附录A修订历史记录 (37)图目录1 外部接口框图 (9)2 访问流程图 (11)3 XTIMCLK和SYSCLKOUT之间的关系 (12)4 XINTF 典型16位数据总线连接 (14)5 XINTF 典型32位数据总线连接 (15)6 XTIMING0/6/7寄存器分布 (23)7 XINTF配置寄存器(XINTCNF2) (27)8 XBANK寄存器 (29)9 XREVISION寄存器 (29)10 XRESET寄存器 (30)11 XTIMCLK和XCLKOUT模式波形 (33)12 通用读周期(XTIMCLK=SYSCLKOUT模式) (34)13 通用读周期(XTIMCLK=½SYSCLKOUT模式) (35)14 通用写周期(XTIMCLK=SYSCLKOUT模式) (36)表目录1 16位模式性能 (15)2 32位模式性能 (15)3 依据XTIMCLK周期的持续脉冲 (17)4 Lead/Trail 数值与XTIMCLK/X2TIMING方式之间的关系 (20)5 Active数值与XTIMCLK/X2TIMING方式之间的关系 (21)6 有效XBANK配置 (22)7 XINTF配置和控制寄存器映射 (23)8 XTIMING0/6/7寄存器字段说明 (23)9 XINTF配置寄存器字段说明 (27)10 XBANK寄存器字段说明 (29)11 XREVISION寄存器字段说明 (29)12 XRESET寄存器字段说明 (30)13 XINTF信号说明 (31)14 修订 (37)前言本文档介绍了在F2833x或F2823x设备中使用的外部接口(XINTF)。
引言TMS320F28335型数字信号处理器是TI公司的一款TMS320C28X系列浮点DSP控制器。
与以往的定点DSP相比,该器件的精度高,成本低,功耗小,性能高,外设集成度高,数据以及程序存储量大,A/D转换更精确快速等。
它采用内部1.9 V供电,外部3.3 V供电,因而功耗大大降低。
且主频高达150 M Hz,处理速度快,是那些需要浮点运算便携式产品的理想选择。
2 TMS320F28335简介TMS320F28335采用176引脚LQFP四边形封装,其功能结构参见参考文献。
其主要性能如下:高性能的静态CMOS技术,指令周期为6.67 ns,主频达150 MHz;高性能的32位CPU,单精度浮点运算单元(FPU),采用哈佛流水线结构,能够快速执行中断响应,并具有统一的内存管理模式,可用C/C++语言实现复杂的数学算法;6通道的DMA控制器;片上256 Kxl6的Flash存储器,34 Kxl6的SARAM存储器.1 Kx16 OTPROM和8 Kxl6的Boot ROM。
其中Flash,OTPROM,16 Kxl6的SARAM均受密码保护;控制时钟系统具有片上振荡器,看门狗模块,支持动态PLL调节,内部可编程锁相环,通过软件设置相应寄存器的值改变CPU的输入时钟频率;8个外部中断,相对TMS320F281X系列的DSP,无专门的中断引脚。
GPI00~GPI063连接到该中断。
GP I00一GPI031连接到XINTl,XINT2及XNMI外部中断,GPl032~GPI063连接到XINT3一XINT7外部中断;支持58个外设中断的外设中断扩展控制器(PIE),管理片上外设和外部引脚引起的中断请求;增强型的外设模块:18个PWM输出,包含6个高分辨率脉宽调制模块(HRPWM)、6个事件捕获输入,2通道的正交调制模块(QEP);3个32位的定时器,定时器0和定时器1用作一般的定时器,定时器0接到PIE模块,定时器1接到中断INTl3;定时器2用于DSP/BIOS的片上实时系统,连接到中断INTl4,如果系统不使用DSP/BIOS,定时器2可用于一般定时器;串行外设为2通道CAN模块、3通道SCI模块、2个McBSP(多通道缓冲串行接口)模块、1个SPI模块、1个I2C主从兼容的串行总线接口模块;12位的A/D转换器具有16个转换通道、2个采样保持器、内外部参考电压,转换速度为80 ns,同时支持多通道转换;88个可编程的复用GPIO引脚;低功耗模式;1.9 V内核,3.3 V I/O供电;符合IEEEll49.1标准的片内扫描仿真接口(JTAG);TMS320F28335的存储器映射需注意以下几点:片上外设寄存器块0~3只能用于数据存储区,用户不能在该存储区内写入程序。
V4 所有外设配置,针对开发板(除CAN口和EQEP)V5 针对项目,配置了对应的外设(包含有EQEP)V6 针对开发板,对EQEP进行了调试和配置V7 添加控制程序PWM初始状态:(1)上电为低电平(2)初始化GPIO之后变为低电平(InitGPio)(3)InitEPwmGpio之后为低电平(EPWM默认为不上拉(其他的为默认上拉),输入脚)(4)InitEPwm之后,高阻态(通过TZ实现的)(6)如果PWM定时器中断的时间不够,可以改变ET的触发次数值来实现延长中断时间的目的,而不改变PWM的周期TZ调试(1)开发板上由于复用了引脚,因此TZ3~TZ6都不可用,程序中使用了TZ1和TZ2 (要修改为TZ5和TZ6,只需用在InitEPwm中修改两处,以及将InitTzGpio中的注释部分去掉)(2)出现TZ将PWM置于高阻态,测量引脚实际是高电平(3)CBC(适用于电流限制)是出现TZ封锁,TZ消失后恢复(自动的);one shot(适用于短路电流和过流)是一旦出现,就一直保持是封锁状态(但也可以手动恢复://EALLOW;//EPwm1Regs.TZCLR.bit.OST = 1;//EPwm1Regs.TZCLR.bit.INT = 1;// EDIS;(4)通过TZ来进行脉冲的封锁与使能逻辑顺序是:关中断——封脉冲(softforce)——开脉冲(清除flag位)——开中断使用232进行控制,232中断里完成清除flag位与开中断的任务。
(5)将机侧和网侧都改为one shot trip sources,CBC在软件trip的时候不是很好用,无法封锁脉冲SCI调试(1)使能FIFO,设置为接收一个数据便进入一次中断(2)串口调试助手应选择16进制发送,即在发送之前把发送内容变为16进制,这样DSP 收到的数才正确(3)ScicRegs.SCIRXBUF.all里的数在读出之后便无效,使用观察窗口看不到接收到的数(4)如果是9600的波特率,5K的开关频率,限于通讯速率,如果发送使用查询模式,一次中断只发送一个数据。
TMS320x281x和TMS320x2833x/TMS320x2823x之间的区别最近在使用TI的28355芯片,由于以前没有接触过,在网上资料也不多,就去TI官网找英文来看;281x和283/23x都是C2000™系列的芯片,后者较前者有很多增强的地方,下面分开一条一条来写:1:CPU(浮点)2833x增加了FPU32位单精度浮点运算单元,不过新的指令是作为标准C28x指令集的扩展来加进去的,所以能够对定点运算100%兼容,锁存上溢和下溢标志位和PIE相连,方便调试;2:CCS开发环境安装后要装专门的升级包,按顺序装好才能使用28335芯片,然后使用2833x的头文件;然后进入ccs后还有设置一下32浮点运算,加入库文件,这部分在网上有详细介绍,编译器,汇编器,连接器最好5.0以上;3:封装管脚不兼容,需重新画板;4:运行频率和供电电压281x:135MHZ以下1.8v,以上到150MHZ1.9v28335:100MHZ以下1.8v,以上到150MHZ1.9vIO口供电电压都是为3.3v5:上电顺序281x:Vddio先,Vdd后28335:可同时上电,也可使用281x的上电顺序;6:SARAM281x:18*16字;28355:34*16字;最大SARAM块4k*16字,变小了;双内存映射;DMA直接访问SARAM;7:FlashF28335: 256K x 16 FlashF2812:128*16 Flash8:外设28355去除了EV,用3个新的外设代替ePWM,eCAP,eQEP增加了DMA:6通道,每个通道有自己的中断,2种运行方式;I2C Bus;文档升级;ADC:电容10uf-2.2uf,电阻24.9k-22k,AD转换接触后有3个中断可以触发,DMA直接读取结果寄存器;CSM密码位置不同;外部存储器接口DMA可直接读取;去除McBSP上的FIFOs,用DMA替代;eCAN增多1个;SCI增多1个9:中断新增外设中断,5个新的外部中断基于TMS320F28335信号处理板的设计与实现TMS320F28335是,TI公司最新推出的一款32位浮点数字信号控制器,兼顾了DSP强大的处理核心和M CU丰富的片上外设。
系统硬件设计图3.1为该系统硬件总体框图,整个系统由功率驱动电路、调理与保护电路、DSP控制电路及无刷直流电机本体四大部分组成。
本节将分为两部分,即功率驱动硬件部分和数字控制硬件部分,阐述该系统的硬件设计。
图3.1 无刷直流电机系统硬件框图3.1功率与驱动电路本节先根据系统的特点,分析电路的拓扑选择,然后按照电路的三级结构,逐级说明其具体实现过程。
3.1.1 功率电路拓扑选择该电路输入单相交流电(220V/50Hz),输出直接驱动无刷直流电机。
电机前级需有三相逆变桥实现换相,由于电机频率较高,因而受三相逆变桥开关频率的限制,无法采用逆变桥PWM脉宽斩波控制实现调速控制。
本功率系统结构选择“交流-直流-直流-交流”方式,即在逆变桥前级加入buck电路,采用buck调压调速方式控制该高速永磁无刷直流电机。
功率电路结构框图如图3.2所示。
图3.2 功率电路结构框图3.1.2 启动缓冲电路图 3.2中第一级采用二极管不控整流,再用大电容滤波后得稳定直流电压1U 。
电路上电时,由于电容1C 两端电压不能突变,上电产生瞬间的大电流给其充电,该电流太大将造成1C 损坏。
为此,电路中加入了启动缓冲电路。
如下图3.3所示,上电时晶闸管1Q 尚未导通,通过11R C 串联回路给1C 充电,充电电流较小,1U 缓慢上升,电容受到保护。
再利用电阻2R 、3R 对1U 分压采样,当1U 上升到约输入电压峰值的90%时,采样电压1s U 将超过设定的门限电压TH U ,通过比较器后驱动光耦,从而触发晶闸管导通。
晶闸管导通后,1R 被短路,电路进入正常工作状态。
此后向后级供电的过程中,晶闸管一直导通,2R 、4R 的阻值非常大,不对后级产生影响。
后级关断或电路掉电时,1Q 关断,4R 为1C 提供放电回路。
图中TH U 由CC V +经电阻分压得到,而CC V +是由/AC DC 模块电源获得。
G AU 1s U Q 1图3.3 启动缓冲电路示意图3.1.3 直流-直流变换该环节实现调压调速功能,直接利用Buck 变换器降压,但电机满载时该电路输出电流很大,所需输出滤波电感太大。
DSP 原理与应用The Technology & Applications of DSPs第八章F28335DSP 硬件设计北京交通大学电气工程学院夏明超郝瑞祥万庆祝mchxia@haorx@qzhwan@DSP 第八章系统应用硬件设计一、DSP 系统电路设计的指导原则;二数字电路系统逻辑接口设计二、数字电路系统逻辑接口设计;三、TMS320F28xxx 最小系统设计;四、数字开关电源及电机控制等电路设计举例;五、DSP 系统设计总结一、DSP、系统电路设计的指导原则首先要了解首先,要了解DSP 芯片的基本参数(从数据手册Datasheet 中查找参数说明),重点关注以下几个参数:1)芯片的工作电源Vcc,Vdd (5V ,3.3V ,2.5V ,1.8V ?);2)信号接口的电平要求(V ,V ,V ,V )信号接的电平要求(IH , IL , OH , OL )和驱动能力;3)CPU 的工作频率f = ?,信号的上升时间t r = ?,下降时间t f =?;4、等);TMS320F28xxx的主要电气参数列表如下TMS320F28xxx 接口时序图1 (上电复位)TMS320F28xxx 接口时序图2 (热复位)TMS320F28xxx接口时序图3(存储器接口读数据)TMS320LF28xxx接口时序图3(存储器接口写数据)二、数字电路系统逻辑接口设计在设计DSP 系统时,除DSP 芯片外,还要设计与其他外围芯片的接口,如果接口芯片的工作电源电压也是33V 那么可以直接相连接否则就需要3.3V, 那么可以直接相连接,否则就需要考虑接口电平兼容的问题。
不同电平接口组合情况电平兼容问题!3.3V与5V 电平转换的4种情形1.5V TTL器件驱动3.3V TTL器件(LVC )。
从上图可以看出两者电平完全兼容,只要3.3V 器件允许承受5V 电压,两者就可以直接相连。
233V TTL 5V TTL 器件由于两者电平完全兼容2. 3.3V TTL器件(LVC )驱动5V TTL器件。