




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 毕 业 设 计(论 文)题 目:基于DSP的电机控制系 别:电子信息科学系专 业:电子信息科学与技术班 级:学生姓名:学 号:指导教师:学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。本人完全意识到本声明的法律后果由本人承担。作者签名: 2005年 6 月 12 日 学位论文版权使用授权书本学位论文作者完全了解学校有关保障、使用学位论文的规定,同意学校保留并向有关学位论文管理部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权省级优秀学士学位论
2、文评选机构将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。本学位论文属于1、 保密 ,在_年解密后适用本授权书。2、 不保密。(请在以上相应方框内打“”)作者签名: 2005年6月12日 导师签名: 2005年6月13日 摘 要本文设计了基于DSP的电机PWM控制器。DSP控制器由TMS320LF2407A和H桥电路组成,TMS320LF2407A完成PWM的产生、调节和转速的CAP捕捉以及参数的显示,H桥电路实现对电机负载的驱动。与传统的控制器相比较,该控制器具有灵活性好,可控制性高的特性。基于DSP的电机控制已运用在工业控制方面,
3、效果好。本文主要完成以下的要求:1. 研究DSP2000的内置PWM调制电路;2. 编制DSP软件控制程序;3. 搭建硬件电路;4. 完成PWM的输出控制。关键词:DSP;PWM;H桥电路;捕捉单元CAPAbstractThe paper has designed a PWM controller for electromotor based on DSP. The DSP controller is made up of TMS320LF2407A and H-bridge. TMS320LF2407A accomplish the PWM producing, adjusting and
4、the CAP catching of rotate speed and the showing of parameter. The H-bridge realizes the drive of the electromotor load. Comparing with traditional controller, it has the characteristic with good agility and controlled easily. The electromotor controlling based on DSP has been exercised on industry
5、control, and has got a good effect. The paper has accomplished the need as follows mostly:1. Studying the inner PWM modulate circuit of DSP2000;2. Programming the DSP software control program;3. Building the hardware circuit;4. Accomplish the output control of PWM. Keywords: DSP;PWM;H bridge;circuit
6、;Catch cell CAP. 目 录第一章 概 述11.1 引言11.2 本文的工作2第二章 TMS320LF240x芯片介绍及其实时模式32.1 TMS320系列DSP概况32.2 TMS320LF240x 芯片概况32.2 TMS320LF240x 内部资源52.2.1 CPU结构62.2.2 DSP内部地址和数据总线72.2.3存储器和I/O空间82.2.4 中断92.3实时模式的概念及特点9第三章 TMS320LF240X 实验平台介绍133.1 TMS320LF2407 实验平台133.1.1以TMS320LF2407为核心的系统结构框图133.1.2 试验箱资源配置133.2
7、CCS使用简单介绍17第四章 系统整体设计184.1 DSP系统的设计194.2参数的输入194.3 H桥电路194.4 显示器件20第五章 系统详细设计215.1 DSP程序设计215.1.1 PWM单元245.1.2 CAP单元305.1.3 按键输入325.1.4 LCD显示345.2 H桥电路设计38第六章 系统测试406.1 PWM406.2 负载反馈426.3 整体测试436.4 测试总结44致谢45参考文献46附录(DSP软件设计源代码)47湖北汽车工业学院本科毕业设计(论文)第一章 概 述1.1 引言交流传动与脉宽功率控制技术是目前发展最为迅速的技术之一,这是和电力电子器件制造
8、技术、交流控制技术以及微型计算机和大规模集成电路的飞速发展密切相关的。PWM控制技术一直是脉宽功率控制技术的核心技术之一。从最初的采用模拟电路完成三角调制波和参考正弦波比较,产生正弦脉宽调制SPWM信号以控制功率器件的开关,到目前的采用全数字化方案,完成优化的实时在线PWM信号输出,PWM控制技术一直是人们研究的热点。随着半导体集成技术的迅速发展,适合开关稳压电源控制需要的集成开关稳压器控制芯片应运而生,这就是脉冲宽度调制(PWM)器件。目前已形成了可适合各种开关稳压电源类型的集成开关稳压器系列,而且功能越来越完善,性能越来越好,反之外接元件却越来越少。PWM器件的出现对开关稳压电源的性能提高
9、起到了至关重要的作用,PWM器件己成为专用集成电路中的重要组成部分和独立的类别,并且具有广阔的发展和应用前途。DSP(digital signal processor)是一种独特的微处理器,是以数字信号来处理大量信息的器件。其工作原理是接收模拟信号,转换为0或1的数字信号,再对数字信号进行修改、删除、强化,并在其他系统芯片中把数字数据解译回模拟数据或实际环境格式。它不仅具有可编程性,而且其实时运行速度可达每秒数以千万条复杂指令程序,远远超过通用微处理器,是数字化电子世界中日益重要的数字芯片。它的强大数据处理能力和高运行速度,是最值得称道的两大特色。与单片机相比,DSP器件具有较高的集成度。DS
10、P具有更快的CPU,更大容量的存储器,内置有波特率发生器和FIFO缓冲器。提供高速、同步串口和标准异步串口。有的片内集成了A/D和采样/保持电路,可提供PWM输出。DSP器件采用改进的哈佛结构,具有独立的程序和数据空间,允许同时存取程序和数据。内置高速的硬件乘法器,增强的多级流水线,使DSP器件具有高速的数据运算能力。DSP器件比16位单片机单指令执行时间快810倍,完成一次乘加运算快1630倍。DSP器件还提供了高度专业化的指令集,提高了FFT快速傅里叶变换和滤波器的运算速度。此外,DSP器件提供JTAG接口,具有更先进的开发手段,批量生产测试更方便,开发工具可实现全空间透明仿真,不占用用户
11、任何资源。软件配有汇编/链接C编译器、C源码调试器。传统中PWM波形一般由专门的PWM器件提供。用PWM器件所产生的波形速度快,波形准确,由于高度集成化,所以价格比较便宜。但是,其抗干扰差,不便于调整。DSP有良好的抗干扰能力,片内集成了PWM波形输出,CAP捕捉单元,A/D和采样/保持电路,具有很大的灵活性,方便调节,而且DSP有很强的计算能力,可以随着外部数据的变化而改变PWM波形的参数,从而达到自动调节的功能.与传统的调节方式相比,DSP产生的PWM更加灵活,准确性高,使用更加方便,节约了成本,增加了系统的扩展能力。随着DSP芯片价格的下降,DSP技术的不断完善,DSP将会有更大的发展前
12、景。1.2 本文的工作高性能的数字信号处理DSP技术、集成了功率电路和驱动电路的智能功率模块IPM 以及驱动异步电机的无速度传感器转速辨识技术正在越来越多地应用于脉宽功率控制调速控制系统中。为此,本文围绕着这几个方面的研究设计了一套基于TMS320F240的PWM脉宽功率控制调速控制装置,并重点作了以下几个方面的工作:(1)设计了一套基于TMS320F240的小功率PWM脉宽功率控制调速控制装置。功率主电路由H整流桥、智能功率模块及控制电源模块组成:DSP控制系统具有通用的系统初始化、转速柔性设定、PWM波形生成及CAP捕捉等程序模块,各程序模块具有用户调用接口以便于组合。(2)在ICETEK
13、-5100PP仿真开发器的基础上借助JTAG端口实现了DSP开发环境Code Composer为用户应用系统提供的实时模式(Real-time Mode)仿真开发功能,并将其应用到本文控制软件的开发调试当中。(3)运用DSP控制液晶显示,将控制参数及反馈参数显示出来,并达到即时更新的功能。第二章 TMS320LF240x芯片介绍及其实时模式2.1 TMS320系列DSP概况TMS320系列DSP的体系结构专为实时信号处理而设计,该系列DSP控制器将实时处理能力和控制器外设功能集于一身,为控制系统应用提供了一个理想的解决方案。TMS320系列的特性:l 灵活的指令集;l 内部操作灵活性;l 高速
14、的运算能力;l 改进的并行结构;l 有效的成本。TMS320系列处理器主要分为三种:1.定点DSP芯片。它的数据是以定点格式工作的。如TMS320C1x,TMS320C 2x/C2xx,TMS320C5x,TMS320C54x,TMS320C62x等几代产品。2.浮点DSP芯片。它的数据是以浮点格式工作的。如TMS320C3x,TMS320C 4x,TMS320C67x等。3.多处理器DSP芯片。它内部集成了多个DSP芯片以获得更好的性能。如TM S320C8x。TMS320系列的分类如图2.1所示。2.2 TMS320LF240x 芯片概况在TMS320系列DSP的基础上,TMS320LF2
15、40x有以下一些特点:l 高性能静态CMOS技术,3.3V电源,低功耗;l 30MIPS指令执行速度,指令周期33ns(30MHz);l CPU内含32位CALU、32位累加器、16位*16位硬件乘法器、8个16位辅助寄存器等;l 4级流水线、8级硬件堆栈、5个外部中断;l 片内32K字Flash程序存储器、 544字DARAM、2K字SARAM等数据存储图2.1 TMS320系列的分类图器,还可外部扩展;l 4个16位通用定时器,可用于Timer、Compare、Capture等;l 16路10位A/D转换器,单、双排序器,500ns/次;l 12路PWM(Pulse Width Modul
16、ation),死区调节,可同时控制两台电机,或D/A转换等;l 2路QEP(Quadrature Encode Pulse)电路,作为光电编码器输入,进行速度、位置控制等;l 个SCI(Serial Communications Interface)是异步串行通信;l 个16位SPI(Serial Peripheral Interface)是同步串行通信;l 个CAN(Controller Area Network)2.0模块,如用于抗干扰要求高的如:汽车内部控制和通信(CAN-BUS);l 1个WD(Watchdog),1个PLL(Phase Lock Loop);l 40个可编程或复用的I
17、/O口等。TMS320C54x DSP芯片的总体结构如图2.2所示。图2.2 TMS320LF240x DSP芯片的总体结构一个相对完备的DSP系统框图如图2.3所示。图2.3 相对完备的DSP系统框图2.2 TMS320LF240x 内部资源TMS320LF240x主要有3个主要组成部分:中央处理器(CPU),存储器,片内外设。TMS320LF240x内部结构框图如图2.4所示。图2.4 TMS320LF240x内部结构框图2.2.1 CPU结构TMS320LF240x的CPU含有:l 32位中央算术逻辑单元(CALU);l 32位的累加器(ACC);l 用于CALU的输入与输出数据比较移位
18、器;l 16位X 16位的乘法器(MUL);l 乘积比较移位器;l 地址产生逻辑。2.2.2 DSP内部地址和数据总线TMS320LF240x器件内部有6条16位总线。PAB(程序地址总线):提供读,写程序存储器的地址。DRAB(数据读地址总线):提供读数据存储器的地址。 DWAB(数据写地址总线):提供写数据存储器的地址。PDRB(程序读总线):将指令代码,立即操作数和表信息从程序存储器传送到CPU。DRDB(数据读总线):将数据从数据存储器传送到中央算术逻辑单元(CALU)和辅助存储器算术单元(ARAU)。DWEB(数据写总线):将数据写入程序存储器和数据存储器。TMS320LF240x总
19、线框图如图2.5所示。图2.5 TMS320LF240x总线框图2.2.3存储器和I/O空间TMS320LF240x系列DSP的地址映象被组织为3个可独立选择的空间:程序存储器(64K字);数据存储器(64K字);输入/输出(I/O)空间(64K字)。这些空间提供了192K字的地址范围。程序存储器空间用于保存程序代码以及数据表信息和常量。程序存储器空间的寻址范围为64K,这包括片内DARAM和片内FLASH EEPROM/ROM。当访问片外程序地址空间时,DSP自动产生一个访问外部程序地址空间的信号PS。LF2407的存储器映射图如图2.6所示。图2.6 TMS320LF240x的程序存储器映
20、射图有2个因素决定程序存储器的配置:CNF位。CNF为0时BO块被映射为片外程序空间;CNF为1时BO块被映射为片内程序空间。MP/MC引脚。MP/MC引脚为0时器件被配置为为控制器方式,片内ROM或FLASH可以被访问,器件从片内程序存储器中读取复位向量;MP/MC为1时,器件被配置为微处理器方式,器件从外部程序存储器中读取复位向量。无论MP/MC为何值,TMS320LF240x系列的DSP都是从程序存储器的0000H单元读取复位向量。只有有外部程序存储器接口额器件才有MP/MC引脚。数据存储器空间的寻址范围高达64K字。每个器件都有3个片内DARAM块:B0,B1和B2。BO既可配置为数据
21、存储器,也可以配置为程序存储器;B1和B2只能配置为数据存储器。存储器可以采用2中寻址方式:直接寻址和间接寻址。CNF位决定数据存储器的配置:CNF为0时B0块被映射为片外程序空间;CNF为1时B0块被映射为片内程序空间。复位时B0块被配置为数据存储空间。 LF2407的数据存储器映射图如图2.7所示。2.2.4 中断TMS320LF240x DSP支持硬件和软件软件中断。硬件中断INT1-INT6,NMI,TRAP和 /RS 一起提供一个非常灵活的中断结构。软件中断通过使用软件指令可以很方便地访问中断向量。TMS320LF240x 外设中断扩展模块框图如图2.8所示。 2.3实时模式的概念及
22、特点在实时信号处理系统中,由DSP实现的算法一般都要求满足实时性的要求。而传统的调试方法都是通过在目标机应用程序中插入断点来中断目标应用程序才能与目标机交换数据,因此得不到目标机应用程序在高速运行时的全部信息。Code Composer的实时分析和数据可视化功能是建立在实时基础软件DSPBIOS和实时数据交换技术RTDX的基础上的。DSPBIOS可以看作是一个准实时的操作系统(支持TI DSP的各种实时操作系统文件都是以DSPBIOS作为底层软件的),它能够实时获取目标信息并上传给主机,对目标机应用程序进行实时分析。在目标机上,DSPBIOS以API调用的形式被应用程序使用,仅仅占用不到1K字
23、的程序存储空间和不到1NIIPS的处理运行时间,对应用程序运行的影响很小。图2.7 TMS320LF240x的数据存储器映射图实时数据交换RTDX技术使用DSP的内部仿真逻辑:AG接口交换数据,它不占用DSP的系统总线、串口等I/O资源。所以数据交换可以在目标机应用程序的背景下进行,对DSP系统影响很小。通过RTDX可以使系统开发者在不影响目标机应用程序执行的情况下在主机和目标机之间传送数据,并且在主机上可以使用任何OLE (Object Linking and Embedding )自动化客户进行数值分析或可视化分析,其数据流如图2.9所示。图2.8 TMS320LF240x 外设中断扩展模
24、块图2.9 实时数据交换RTDX数据流图如图2.9所示,RTDX包括主机组件和目标机组件。在目标机用户接口中定义了向主机RTDX库写数据和从主机RTDX库读数据的函数;主机OLE接口定义了从OLE自动化客户经主机RTDX库向目标机写数据和从目标机数据缓冲区读数据的函数。由于这种数据传输方式是利用基于边界扫描的仿真技术在主机平台和目标机之间交换数据的,因此所有数据的交换都是在不中断目标机应用程序运行的前提下实时传送的。在主VL上提供的是业界标准的OLE API,因而可以使用符合该标准的第三方可视化软件如VB, VC等获得目标机的数据以进行分析处理。Code Composer支持利用调试器(deb
25、ugger)在主机和目标机之间通过JTAG口进行数据交换。因此,实时模式仿真为用户提供了一种简单方便、成本低廉的实时访问DSP内核的通道,而省去了传统仿真开发器系统实时访问处理器所必需的昂贵电缆线和专用电路芯片。实时模式允许用户编译与非屏蔽中断相关联的程序代码;允许CPU在断点事件处悬挂后台程序执行的同时,继续中断服务程序的执行。在该模式下,用户可在多个位置延缓程序的执行,从而在一个内部中断暂停时,程序仍可响应其它中断服务。在实时模式下,程序可以提供以下几种功能:1.系统复位的探测。2.提供在CPU工作时访问内部、外部存储器的通道。3.提供在CPU工作时访问CPU、外部寄存器的通道。4.在响应
26、中断服务程序的同时控制后台程序代码的执行。在实时模式下,可被用户编程控制的程序执行状态有:1.暂停编译状态(Debug-halt State):该状态可通过中断事件或主机请求来控制。仿真器在该状态下,中断服务仍继续执行。2.单指令状态(Single-instruction State):对应该状态的是RUN 1或STEP 1用户指令。此时仿真器执行由程序指针PC所指的单指令,然后回到暂停编译(Debug-halt)状态。若在该状态下有中断产生,则由控制单指令状态所用指令来决定是否响应此中断.若用户使用的是指令RUN 1,则仿真器响应该中断;若用户使用的是指令STEP 1,中断不被响应。3.运行
27、状态(Run State):对应该状态的控制指令为RUN。在该指令下,程序一直执行直到有编译指令或事件使仿真器为暂停调试状态。在运行状态下,所有的中断都可被响应.编译事件的优先级高于中断;但当中断处理先于编译事件时,则只能在中断服务程序开始执行后响应编译事件。TI公司C2aoc仿真器不支持单指令状态和运行状态之间的直接转换。在暂停编译状态及运行状态下,用户可在编译主机的软件调试窗口中观察CPU寄存器和存储器的内容;而在单指令状态,CPU寄存器和存储器的内容在编译主机显示器中不被更新。第三章 TMS320LF240X 实验平台介绍3.1 TMS320LF2407 实验平台3.1.1以TMS320
28、LF2407为核心的系统结构框图 最小系统板,是独立的DSP最小系统。 硬件测试平台,是为DSP提供的,尽可能测试其所有功能的外围电路。3.1.2 试验箱资源配置3.1.2.1电源管理本实验箱使用的电源电压有+1.8V,+3.3V,+5V,12V。1)电源开关:位于实验箱体的右侧,控制整个系统的电源,其上的红灯亮表示系统已上电。2)步进电机电源开关SW301:控制步进电机模块部分的电源。注意在不做步进电机模块实验时,最好将此开关打向OFF。3)直流电机电源开关ZLDJ:控制直流电机模块部分的电源。注意在不做直流电机模块实验时,最好将此开关打向OFF。4)IO输入输出方式选择开关SW601:选择
29、IO输出方式。开关拨向上,选择IO输出方式一,开关拨向下,选择IO输出方式二。5)复位开关RESET:按下此开关,复位DSP。6)中断按键:按下此开关可向DSP产生中断信号。3.1.2.2 存储器扩展本实验箱扩展了64K*16程序存储器,64K*16数据存储器,合计为128K*16的静态存储器。该实验平台的数据存储器空间大小为64K,外部存储器从0x8000-0xFFFF有效空间,映射如表3.1所示。表3.1 DSP2407数据存储器结构实验平台的程序存储空间配置如表3.2所示。 表3.2 DSP2407程序存储器结构MP/MC可以在上电复位时由MP/MC引脚的电平来决定,在开发板上JP2就是
30、用来设置MP/MC的电平的。3.1.2.3 DSP芯片时钟配置本实验箱采用10M的晶振,系统时钟频率 = 倍频系数10M,如表3.3所示。表3.3 TMS320LF2407实验板的时钟配置CLKMD1CLKMD2CLKMD3时钟模式0004 x fin0012 x fin0101.33 x fin0111 x fin1000.8 x fin1010.66 x fin1100.57 x fin1110.5 x fin3.1.2.4试验箱I/O空间分配试验箱I/O空间分配如表3.4所示。 表3.4 I/0空间分配3.2 CCS使用简单介绍下面以CCS2000为例,让大家了解Code Compose
31、r Studio的基本功能。主要包括如下步骤:1、创建工程环境CCS提供工程文件来管理应用程序,所有有关的应用程序的信息保存在工程文件中。工程文件记录生成一个目标DSP程序和库程序需要的所有文件和运行库。它也包含了为编译,汇编,链接目标代码而配置的开关参数。在这部分,你将学习到如何创建工程文件,添加源程序文件和库文件到工程中,以及编辑源程序文件和编译连接生成目标代码。1) 创建新工程:执行Project-NEW命令,显示文件选择对话框。改变目录到c:tic2xxmyprojects,输入“hello”做为工程文件名并保存。2) 添加源程序文件:执行“Project-Add Fle to Pro
32、jects” 命令,打开添加文件对话框。反复使用这个命令,添加下文件到目录中(注意修改对话框下的文件类型): hello.c(C:tic2xxc2000MONITORhello1)vectors.asm(C:tic2xxc2000MONITORhello1)hello.cmd(C:tic2xxc2000MONITORhello1)rts.lib(路径:C:tic2xxc2000cgtoolslib)3) 改变工程设置:执行“Project- Options”命令,显示“Build Options”对话框。这个对话框用于配置编译,汇编和链的开关。a:点击linker属性页;b:在Autoniti
33、 Model栏选择Run-time Autoinitialization;c:选择“确定”修改并保存这个对话框。4) 编译工程:执行“Project-Build”命令完成对工程的编译。5) 改正源程序的错误:事实上,程序在一处语法错误,此时可以使用编译选项定位错误类型和位置。a:双击编译窗口的第一行红字,hello.c将自动被激活。b:在光标所在的上一行加上“;”,改正这个错误。c:执行“File-Save”保存修改后的程序。d:再次编译工程,这次,工程将正确的编译和链接。2、基本调试功能我们将熟悉CCS的一些基本调试功能,使用断点和观察窗口。 1) 选择File-load Program。2
34、) 选择View-CPU Registers-CPU Registers,在CCS的右下方将出现CPU寄存器的显示框。3) 双击Project View中的文件hello.c,并选择Window-Tile Horizontally,以便能看到源代码和反汇编代码。4) 把光标放到以下行上:puts(hello world!n);5) 按F9,该行前端显示出红色光圈。6) 选择Debug-Run或按F5。7) 程序运行到光圈处停止后,按F10单步运行,同时观察CCS下面的程序运行结果输出和CPU寄存器中的变化。8) 根据运行结果输出和CPU寄存器中的变化来分析程序运行流程第四章 系统整体设计在脉宽
35、功率控制中,DSP系统先初始化,再根据按键情况,调整PWM的输出,用其控制H桥电路。H桥电路驱动电机,再将驱动电机的转速反馈回来由DSP测量。将PWM参数和测量的转速送到显示器件显示出来。系统整体结构如图4.1所示。参数输入DSP 参数 计算 PWM波形产生CAP捕捉单元显示 单元H桥电路负载参数显示图4.1系统整体结构图4.1 DSP系统的设计在本系统中,DSP占主要的地位。DSP根据预制的参数先输出一组定参的PWM波形。再根据按键的情况改变PWM产生的参数,从而改变输出PWM波形的目的,达到功率控制的目的。同时,CAP捕捉单元根据负载反馈回来的信号测量出负载的转速。将PWM参数和CAP捕捉
36、的转速送到显示器件显示。随后重复扫描按键,如此反复。4.2参数的输入由于本系统的参数输入较少,因此直接使用开关按键,用轮询的方式扫描。因为系统的即时性不是很高,使用轮询方式可以满足速度的要求,同时也节约的硬件资源。4.3 H桥电路PWM式可逆直流调速系统由四只全控型功率开关元件及其续流二极管构成,为双极式。通过二极管的轮流导通达到控制负载功率的作用,可以使负载在低转速的状态下达到比较好的扭距。H桥电路结构如图4.2所示。图4.2 H桥电路结构图4.4 显示器件为了让用户更好的了解到PWM参数和负载转速,我们设计了显示模块。显示方法有2种:LED显示和LCD显示。LED显示:用8个LED,4个一
37、组,分别显示2组参数,通过标明参数位置来区别2个参速,达到识别的目的。LCD显示:用一块128x64的LCD显示2组参速,同时显示参数的属性,以达到识别的目的。比较:用LED虽然结构简单,但是不直观,易弄混淆。虽然LCD显示运算有些复杂,但是DSP有很强的运算能力,足以应付LCD所需的数据运算。故采用LCD显示方式。第五章 系统详细设计在系统整体结构确定以后根据各功能块开始进行局部的设计。按照模块化的思想,先设计出基本框架,再逐一添加,完成所有的设计。5.1 DSP程序设计本系统的核心就是DSP程序的设计。DSP所要完成的工作如下:1. 根据参数产生PWM。2. 根据外部控制输入调节PWM的参
38、数,并输出。3. 将负载反馈的信号送CAP单元捕捉,测量其转速。4. 将参数及转速送到LCD显示。根据功能要求,需要2个中断,设计出主程序流程如图5.1所示。图5.1 主程序流程当系统初始化输出基本的PWM波形后,DSP开始轮询按键。当发现按键变化的时候根据按键状态改变PWM发生器的参数,从而改变PWM。然后将占空比送LCD显示,接着继续轮询按键。如果按键没变化就直接返回,重新轮询。当发生中断的时候,就跳到中断程序,等中断程序执行完成后,返回继续执行。CAP中断程序流程如图5.2所示。图5.2 CAP中断程序流程由于DSP是多个中断共用一个中断申请脚,故当发生CAP中断时先判断是不是CAP中断
39、。不是就直接返回中断,如果是CAP中断就将程序内设置的CAP计数器加一,记录中断次数,从而达到记录负载转速的目的。即捕捉负载每次反馈信号,以此来记录系统的转速。定时中断程序流程如图5.3所示。图5.3 CAP中断程序流程设计要求转速显示单位是转/每分钟,因此需要对CAP捕捉的次数进行处理才能达到系统要求。因为硬件及DSP的条件限制,最长的定时中断为1/300秒,故在定时中断中设置中断次数寄存器。当发生900次中断即3秒后,执行中断处理程序,其他情况下直接返回中断。由于DSP不允许嵌套中断,故不会发生寄存器读写的错误。中断处理程序主要完成以下工作:1) 将CAP计数器的值取出,将其转化为转/每分
40、钟,然后送LCD显示;2) 将CAP计数器的值清0,使CAP单元重新开始捕捉;3) 中断次数寄存器清0,重新开始定时中断。根据程序结构图,分别设计程序。5.1.1 PWM单元5.1.1.1 事件管理器模块简介TMS320LF2407 器件包括两个事件管理器模块EVA 和EVB,每个事件管理模块包括通用定时器(GP)、比较单元、捕获单元以及正交编码脉冲电路。EVA和EVB的定时器,比较单元以及捕获单元的功能都相同,只是定时器和单元的名称不同。事件管理器A所包含的资源列如表5.1所示。表5.1 事件管理器A所包含的资源事件管理模块A组件名称信号GP定时器Timer1Timer2T1PWM/T1CM
41、PT2PWM/T2CMP比较单元Compare 1Compare 2Compare 3PWM1/2PWM3/4PWM5/6捕获单元Capture 1Capture 2Capture 3CAP1CAP2CAP3正交编码脉冲电路QEPQEP1QEP2QEP1QEP2外部输入计数方向外部时钟TDIRATCLKINA事件管理器的使用是通过一系列的寄存器来控制的,EVA的起始地址是7400H。这些寄存器大致分为四类:1) 与定时器有关的寄存器;2) 比较控制寄存器;3) 捕获控制寄存器;4) 中断寄存器。事件管理器中断事件分为3组事件管理器中断组A、B、C,每一个组都有各自不同的中断标志、中断使能寄存器
42、和和一些外设事件中断请求。如表5.2所示给出了EVA模块的相关的中断、中断优先级和中断组。每个中断组都有一个中断标志寄存器和相应的中断屏蔽寄存器。如果EVAIMRx(x=A,B,C)相应位是0,则EVAIFRx中的中断标志位被屏蔽(即不产生中断请求信号)。当外设中断请求信号被CPU接受时,PIE控制器将相应的外设中断向量装入到外设中断向量寄存器(PIVR)中。外设中断向量寄存器(PIVR)中的值可以区分改组哪一个挂起的中断具有最高优先级。外设中断向量寄存器中的值可以从中断服务子程序(ISR)中读出。当事件管理器模块中产生一个中断事件,则其中一个事件管理器中断标志寄存器的相应标志位就被置1。如果
43、标志位局部未被屏蔽(EVAIMRx中的相应位置1),外设中断扩展控制器(PIE)就产生了一个外设中断请求。当中断请求被CPU接受时,已置位的中断标志中具有最高优先级的中断标志相应的那个中断向量被装载到累加器中。在中断服务程序(ISR)中读取中断向量,中断标志位必须在中断服务程序中用软件直接向中断标志寄存器中的相应位置1来清除。如果中断标志位未被清除,则以后该中断就不再产生中断请求。表5.2 EVA模块的相关的中断、中断优先级和中断组中断组中断优先级中断向量描述/中断源INTAPDPINTA最高0020h功率驱动保护中断A1CMP1INT20021h比较单元1比较中断2CMP1INT30022h
44、比较单元2比较中断CMP1INT40023h比较单元3比较中断T1PINT50027h通用定时器1周期中断T1CINT60028h通用定时器1比较中断T1UFINT70029h通用定时器下溢中断T1OFINT8002Ah通用定时器1上溢中断BT2PINT1002Bh通用定时器2周期中断3T2CINT2002Ch通用定时器2比较中断T2UFINT3002Dh通用定时器2下溢中断T2UFINT4002Eh通用定时器2上溢中断CCAP1INT10033h比较单元1中断4CAP2INT20034h比较单元2中断CAP3INT30035h比较单元3中断5.1.1.2通用定时器简介每个事件管理模块有两个通
45、用可编程定时器(GP)。定时器x(对EVA,x1,2)包含:1. 一个16位的定时器增/减计数的计数器TxCNT,可读写;2. 一个16位的定时器比较寄存器(双缓冲,带影子寄存器)TxCMPR,可读写;3. 一个16位的定时器周期寄存器(双缓冲,带影子寄存器)TxPR,可读写;4. 一个16位的定时器控制寄存器TxCON,可读写;5. 可选择的内部或外部输入时钟;6. 用于内部或外部时钟输入的可编程的预定标器;7. 4个可屏蔽的控制和中断逻辑下溢、溢出、定时器比较和周期中断;8. 可选择的方向的输入引脚TDIRx(当用双向计数方式时可用来选择向上或向下计数);各个通用定时器之间可以彼此独立工作
46、或相互之间同步工作。与每个GP定时器有关的比较寄存器可用作比较功能或PWM波形发生。对每个GP定时器在增/减计数方式中,有三种连续的工作方式。每个GP定时器的内部或外部的输入时钟都可以进行可编程的预定标。GP定时器还向事件管理器的子模块提供时基。GP定时器1对所有的比较和PWM电路提供时基,GP定时器2或1对捕获单元和正交脉冲计数操作提供时基。周期寄存器和比较寄存器的双缓冲允许根据需要编程改变(PWM)周期和PWM脉冲宽度。通用定时器控制寄存器规定了通用定时器针对不同的定时器事件所采取的操作,并且指明了所有四个通用定时器的计数方向。GPTCONA/B是可读/写的。通用定时器的编程时要考虑如下方
47、面:1)通用定时器的输入信号如下:1. 内部CPU时钟,外部时钟TCLKINA/B可选;2. 方向输入TDIRA/B,控制通用定时器增/减计数;3. 复位信号。通用定时器输入。另外,当一个通用定时器与正交编码脉冲电路一起使用时,正交编码脉冲电路同时产生定时器的时钟和计数方向。2)通用定时器输出。通用定时器的输出如下:1. 通用定时器比较输出TxCMP;2. 至ADC模块的模数转换启动信号;3. 比较逻辑和比较单元的下溢、上溢、比较匹配和周期匹配信号;4. 计数方向指示位。3)通用定时器的比较寄存器。与通用定时器相关的比较寄存器存储着持续与通用定时器的计数器进行比较的值,当发生匹配时,将产生以下
48、事件:1. 根据GPTCONA/B的设置不同,相关的比较输出发生跳变,或启动ADC;2. 相应的中断标志将被置位;3. 如中断未被屏蔽将产生外设中断请求。通过设置TxCON寄存器的相关位,可以使能或禁止比较操作。比较操作输出适用于任何一种定时模式,当然也包含QEP模式。4)通用定时器的周期寄存器。周期寄存器决定了定时器的周期,当周期寄存器的值和定时器计数器的值之间产生匹配时,通用定时器的操作就停止并保持当前值,并根据计数器所处的计数方式执行复位为0或开始递减计数。5)通用定时器的比较输出。通用定时器的比较输出可以规定为高有效、低有效、强制高或强制低,这取决于GPTCONA/B中的位是如何配置的
49、。当它为高有效时,在第一次比较匹配发生时比较输出由低至高。而后如果通用定时器处于增/减计数模式,在第二次比较匹配时比较输出由高至低;如果通用定时器处于增计数模式,在周期匹配时比较输出从高至低。6)通用定时器时钟。通用定时器的时钟源可采用内部CPU时钟或外部时钟输入。外部时钟的频率必须低于或等于CPU时钟频率的1/4。在定向增/减计数模式下,通用定时器2(EVA模块)和通用定时器4(EVB模块)可用于正交编码脉冲电路。这时,正交编码脉冲电路既为定时器提供时钟又提供输入方向。7)通用定时器中断。通用定时器在EVAIFRA,EVAIFRB,EVBIFRA和EVBIFRB中有12个中断标志。每个通用定
50、时器可根据以下事件产生4个中断:上溢、下溢、比较匹配,周期匹配。当通用定时器计数器的值与比较寄存器的值相同时,就产生定时器比较事件。如果比较操作被使能,则相应的比较中断标志在匹配之后的两个CPU时钟周期被置位。定时器计数值达到FFFFh时,就产生了上溢事件。定时器的计数值达到0000H时就产生了下溢事件。类似的,当计数器的值与周期寄存器的值相同时就产生了一个周期事件。在每个事件发生之后两个CPU周期后,定时器的上溢、下溢、周期中断标志被置位。5.1.1.3通用定时器产生PWM每个通用定时器都有一个相关的比较寄存器TxCMPR和一个PWM输出引脚TxPWM。通用定时器的值总是与相关的比较寄存器的
51、值进行比较,当定时器的值与比较寄存器的值相等时,就产生比较匹配。可通过置TxCON.1位来使能比较操作。如果比较使能时,当产生匹配时将发生下列事件:1) 定时器的比较中断寄存器标志位在匹配后的1个CPU时钟周期后被置位;2) 在匹配后的1个CPU时钟周期后,根据GPTCONA/B寄存器相应位的配置情况,相关的PWM输出将发生跳变;3) 如果比较中断标志位已通过设置GPTCONA/B寄存器中的相应位去启动模数转换器,则当比较中断标志位被置位时,也将产生模数转换的启动信号。PWM输出的跳变有非对称和对称两种方式,非对称和对称波形发生器在通用定时器所处计数模数的基础上产生一个非对称和对称的PWM波形
52、输出,并且取决于以下条件:1) GPTCONA/B寄存器中相应位的定义;2) 定时器所处的计数模式;3) 在连续增/减计数模式下的计数方向。当通用定时器处于连续增计数模式时产生非对称波形,在这种模式下波形发生器的输出在以下情况的基础上有所变化,如图5.1所示。.图5.1 非对称PWM波形对于图5.1,工作过程如下:1) 计数操作开始前为0;2) 保持不变直到比较匹配发生;3) 比较匹配时,产生触发;4) 如果下一周期的新比较值不是0,则发生周期匹配的周期结束后复位为0;5) 如果下一周期开始时的比较值为0,则在整个周期输出将是1,并且如果下一周期的新比较值也是0,则输出将不复位为0;6) 如果比较值大于周期寄存器中的值,则整个周期输出为0;7) 当通用定时器处于连续增/减计数模式时产生对称的PWM波形,如图5.2所示。图5.2 对称PWM波形图5.2的工作过程如下:1) 计数操作开始前为0,保持不变直到第一次比较匹配;2) 第一次比较匹配时,产生触发,保持不变直到第二次比较匹配;3) 第二次比较匹配时产生触发;4) 保持不变直到周期结束。5.1.1.3 PWM程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030中国高炉煤气脉冲袋式除尘器市场发展趋势及投资风险研究报告
- 2025-2030中国高清摄像头产业应用领域规模及投资潜力分析研究报告
- 2025-2030中国高性能酵母市场营销现状调研与前景行情监测报告
- 2025-2030中国高强瓦楞原纸行业发展分析及发展前景与趋势预测研究报告
- 2025-2030中国高安全性锁行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国高压变频器行业市场发展现状及竞争格局与投资前景研究报告
- 2025-2030中国高k和ALD和和CVD金属前体行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国骨科别针行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国骑式洗涤器行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国驰张筛行业发展态势剖析与投资风险策略探讨研究报告
- 养猪基地合同模板
- 广西桂林市2025届高三生物上学期第一次联合调研考试试题
- 《积极心理学(第3版)》 课件 第3章 积极情绪的价值
- 游轮产品相关项目实施方案
- 幼儿园中班夏天的雷雨课件
- 上海事业单位笔试真题2024
- 2024年安全员-C证考试题库及答案(1000题)
- 2024年湖南电气职业技术学院单招职业适应性测试题库一套
- 职业院校技能大赛(中职组)植物病虫害防治赛项备考试题库(必练500题)
- 2023年河南省安阳市殷都区九年级中考模拟预测数学模拟预测题
- 车辆安全驾驶技能培训
评论
0/150
提交评论