欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    DSP课设PWM讲课教案.doc

    • 资源ID:51453619       资源大小:899KB        全文页数:19页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    DSP课设PWM讲课教案.doc

    Good is good, but better carries it.精益求精,善益求善。DSP课设PWM-目录一引言与概述21.1DSP介绍21.2DSP的应用:21.3问题描述31.4DSP2407简介31.5事件管理器的引脚说明41.6比较单元41.7PWM基本原理4二系统总体设计与工作原理62.1总体设计与分析62.2基本理论7三各单元硬件设计及工作原理12四软件设计与说明124.1程序文件说明124.2主程序(pwm.c)134.3向量表程序(vectors.asm)144.4存储器配置(2407CMD.cmd)14五调试结果及其操作说明155.1CCS集成开发环境155.2CCS的调试操作15六参考文献16-一引言与概述1.1DSP介绍数字信号处理(DigitalSignalProcessing,简称DSP)是一门涉及许多学科而又广泛应用于许多领域的新兴学科。20世纪60年代以来,随着计算机和信息技术的飞速发展,数字信号处理技术应运而生并得到迅速的发展。数字信号处理是一种通过使用数学技巧执行转换或提取信息,来处理现实信号的方法,这些信号由数字序列表示。在过去的二十多年时间里,数字信号处理已经在通信等领域得到极为广泛的应用。德州仪器、Freescale等半导体厂商在这一领域拥有很强的实力。DSP(digitalsignalprocessor)是一种独特的微处理器,是以数字信号来处理大量信息的器件。其工作原理是接收模拟信号,转换为0或l的数字信号。再对数字信号进行修改、删除、强化,并在其他系统芯片中把数字数据解译回模拟数据或实际环境格式。它不仅具有可编程性,而且其实时运行速度可达每秒数以千万条复杂指令程序,远远超过通用微处理器,是数字化电子世界中日益重要的电脑芯片。它的强大数据处理能力和高运行速度,是最值得称道的两大特色。DSP微处理器(芯片)一般具有如下主要特点:(1)在一个指令周期内可完成一玖乘法和一次加法;(2)程序和数据空间分开,可以同时访问指令和数据;(3)片内具有快速RAM,通常可通过独立的数据总线在两块中同时访问;(4)具有低开销或无开销循环及跳转的硬件支持;(5)快速的中断处理和硬件1/0支持;(6)具有在单周期内操作的多个硬件地址产生器;(7)可以并行执行多个操作;(8)支持流水线操作,使取指、译码和执行等操作可以熏叠执行。1.2DSP的应用:语音处理:语音编码、语音合成、语音识别、语音增强、语音邮件、语音储存等。图像图形:二维和三维图形处理、图像压缩与传输、图像识别、动画、机器人视觉、多媒体、电子地图、图像增强等。军事、保密通信、雷达处理、声呐处理、导航、全球定位、跳频电台、搜索和反搜索等。仪器仪表:频谱分析、函数发生、数据采集、地震处理等。自动控制:控制、深空作业、自动驾驶、机器人控制、磁盘控制等。医疗:助听、超声设备、诊断工具、病人监护、心电图等。家用电器:数字音响、数字电视、可视电话、音乐合成、音调控制、玩具与游戏等。生物医学信号处理举例:CT:计算机X射线断层摄影装置。(其中发明头颅CT英国EMI公司的豪斯菲尔德获诺贝尔奖。)CAT:计算机X射线空间重建装置。出现全身扫描,心脏活动立体图形,脑肿瘤异物,人体躯干图像重建。1.3问题描述输入输出端口(1/0)是DSP芯片内部电路与外部世界交换信息的通道。输入端口负责从外界接收检测信号键盘信号等各种开关量信弓;输出端口负责向外界输送有内部电路产生的处理结果显示信息,控制命令驱动信号。使用中断和定时器延时循环程序,设计DSP的流水灯控制器,在事件管理器中应用EV中断。1.4DSP2407简介2407开发板分为TI2000-011DSP2407增强型、DSP2407+CPLD开发板、SHX-DSP2407A开发板。引DSP2407+CPLD开发板套件是一套基TMS320LF2407A+EPM240的DSP+CPLD的学习开发平台,充分发挥DSP2407和ALTERAMAXII的灵活性和功能强大,用户手册详实易懂,大量源码轻松上手(分DSP和CPLD两部分),我们为用户提供一个完整的IP核通过CPLD进行系统资源分配,用户可以根据需要进行裁剪或追加功能。由于我们的外设都是通过CPLD连接与DSP连接进行电平转换、隔离和总线。仲裁等先进技术,所以使用极为方便灵活、简洁、并且运行及其稳定。这种结构可以充分利用了CPLD的灵活性和功能强大的IP核进行功能更强的系统应用。是初学者和从事开发的科研工作者学习2407和CPLD的首选之品。本开发板供初学者学习使用,也可作为系统板嵌入到用户的产品供用户进行二次开发以便缩短产品开发周期。SHX-DSP2407A开发板是DSP2407系列产品中的重要一员。它的最大优点是直观简单明了,极为适于初学者。此棋板采用统一的系统结构、模块结构和机械结构,以多种典型DSP处理器构成的DSP基本系统、标准总线和相同物理尺寸的DSP嵌入式控制模板,将2407的功能发挥的淋漓尽致,为学习者提供了强大、有效的学习平台。用户手册详实易懂,大量源码轻松上手(分DSP和CPLD两部分),我们为用户提供一个完整的IP核通过CPLD进行系统资源分配,用户可以根据需要进行裁剪或追加功能。1.5事件管理器的引脚说明1.6比较单元1.7PWM基本原理Ø PWM控制基本原理PWM(PulseWidthModulation)就是脉宽调制技术矩形脉冲波形,可理解为占空比可调的方波。即通过对一系列脉冲的宽度进行调制,来等效地获得所需要的波形(含形状和幅值)。也就是说PWM信号(脉宽调制信号)是脉冲宽度根据某一寄存器内的值的变化而变化的脉冲序列;宽度是根据预定值来决定和调制的。1. PWM信号产生用一定时器重复产生与PWM周期相同的计数周期,一个比较寄存器保持着调制值,在相应的输出上会产生一个转换。输出脉冲的开关时间会与比较寄存器的值成比例。2. 死区在许多的运动/电机控制和功率电子应用场合中,两个功率器件(上级和下级)被串联在一个功率支路中,为避免击穿失效,在一个三极管的关断和另一个三极管导通之间经常要插入一个死区,这段时间延迟允许一个三极管在别的三极管导通之前完全关断。PWM的基本思想重要理论基础面积等效原理冲量相等而形状不同的窄脉冲加在具有惯性的环节上时,其效果基本相同。冲量窄脉冲的面积效果基本相同环节的输出响应波形基本相同图6-1形状不同而冲量相同的各种窄脉冲d)单位脉冲函数f(t)d (t)tOa)矩形脉冲b)三角形脉冲c)正弦半波脉冲tOtOtOf(t)f(t)f(t)所以据面积等效原理,正弦波等效为下图中所示的PWM波。二系统总体设计与工作原理2.1总体设计与分析1. DSP直接可以输出PWM波,所以不需要额外的硬件连接。但是DSP输出的驱动能力有限,驱动电机必须额外加放大驱动电路。2. 以DSP的EVA单元为例子,EVA的2个通用定时器可以产生2路独立的PWM波,3个比较单元能够产生6对带死区的PWM波。1) T1CNT为连续计数模式产生不对称的PWM波,此时PWM的周期为(t1pr+1)/tclk,t1pr为周期寄存器值,TCLK为当前定时器每计数一次所需时间。T1CNT为连续增减计数产生对称的PWM波。周期为2T1PR/tclk.为了产生一个PWM信号,DSP的定时器定时周期应该和PWM的周期相等。另外需要对DSP的EVA/EVB模块中的比较单元的比较寄存器设定数值,这样该数值一直与定时器的计数器值相比较,按照一定的比较方式,PWM即产生跳变。通过此种方式,DSP的PWM管脚就会产生一个宽度与比较寄存器数值成比例的脉冲信号。在定时器重复定时的过程中就产生了PWM信号。使用DSP比较单元产生PWM波形不需要硬件连接图,只需对DPS的相关寄存器进行配置就可以在输出端得到相应的PWM波形,其具体操作过程如下:1. 设置比较方式控制寄存器ACTRx2. 如有必要,使能死区功能,配置死区控制寄存器DBTCONx3. 对比较寄存器CMPRx赋值4. 设置定时器寄存器T1CON(T3CON)并启动定时5. 通过更新CMPRx的数值改变PWM占空比的大小2.2工作原理EV模块中的每个比较单元均可产生非对称和对称的PWM波形。另外这三个比较单元一起可产生三相对称空间向量PWM输出。用GP定时器产生PWM输出已介绍,下面仅介绍用比较单元产生PWM。(1)非对称PWM波形产生用一个比较单元产生一个非对称的PWM波形。见下图。GP定时器1必须设置为连续递增计数模式,其周期寄存器必须载入一个与所需的PWM载波周期相对应的值。(2)对称的PWM波形产生对称的PWM波形是其调制脉冲在每个PWM周期是对称的。如下图所示。对称的与非对称PWM波形相比,优点在于在每个PWM周期的开始和结束它有两个相同长度的无效区,这种对称性表现为当正弦调制使用时,它在一个交流电机的相电流中比非对称的PWM信号引起更少的谐波。2.2基本理论指导实验的基本理论是DSP的数字I/O端口以及其寄存器的配置。通过对这些理论的掌握和运用,达到了解和熟悉一般DSP数字I/O的知识。(1)数字I/O端口TMS320LF2407系列有多达41个通用、双向的数字I/O(GPIO)引脚,其中大多数是基本功能和一般I/O复用引脚,TMS320LF2407系列的大多数都可以用来实现其他功能。数字I/O端口模块采用了一种灵活的方法,以控制专用I/O和复用I/O引脚的功能,所有I/O和复用引脚的功能可以通过9个16位控制寄存器来设置,这些寄存器可以分为两类:l I/O口复用控制寄存器(MCRx):用来控制选择I/O引脚作为基本功能或一般I/O引脚功能。l 数据和方向控制寄存器(PxDATDIR):当I/O引脚作为一般I/O引脚功能时,用数据和方向控制寄存器可控制数据和I/O引脚的数据方向,这些寄存器直接和I/O引脚相连。(2)数字I/O端口寄存器图1给出了TMS320LF2407系列I/O端口复用引脚配置简图,从图上可以看出一些寄存器单元的配置对应于实际I/O引脚的内部结构之间的联系。图1复用引脚配置图表1中所列的是数字I/O模块可用的寄存器单元,和其他240xA外设一样,这些寄存器被存储器映射到数据空间,地址从7090h到709Fh。寄存器单元中保留的位所是无效的,读时为0,写对它无影响。表1数字数字I/O模块控制寄存器地址地址存储寄存器说明7090hMCRAI/O复用控制寄存器A7092hMCRBI/O复用控制寄存器B7094hMCRCI/O复用控制寄存器C7098hPADATDIRI/O端口A数据和方向寄存器709AhPBDATDIRI/O端口B数据和方向寄存器709ChPCDATDIRI/O端口C数据和方向寄存器709EhPDDATAIRI/O端口D数据和方向寄存器7095hPEDATAIRI/O端口E数据和方向寄存器7096hPEDATDIRI/O端口F数据和方向寄存器下面介绍I/O口复用输出控制寄存器。下面描述了I/O口复用控制寄存器A(MCRA)I/O口复用控制寄存器B(MCRB),I/O口复用控制寄存器C(MCRC),其中表2是I/O口复用控制寄存器A(MCRA)的配置,对寄存器的每个位的值做了详细的描述;表3是I/O口复用控制寄存器B(MCRB)的配置,对寄存器的每个位的值做了详细的描述。表4是I/O口复用控制寄存器C(MCRC)的配置,对寄存器的每个位的值做了详细的描述。I/O口复用控制寄存器A(MCRA)地址7090h注:R=可读,W=可写,_0=复位后的值表2I/O口复用控制寄存器A(MCRA)的配置I/O口复用控制寄存器B(MCRB地址7092h)注:R=可读,W=可写,_0=复位后的值表3I/O口复用控制寄存器B(MCRB)的配置I/O口复用控制寄存器C(MCRC地址7094h)注:R=可读,W=可写,_0=复位后的值表4I/O口复用控制寄存器C(MCRC)的配置以下介绍DSP的I/O口数据和方向寄存器。TMS320LF2407系列总共有6个数据和方向控制寄存器(PxDATADIR),当I/O口用作一般I/O引脚功能时,用数据和方向控制寄存器,可控制数据和到双向I/O引脚的数据方向。这些寄存器直接和双向I/O引脚相连。当I/O用作基本功能时,这些寄存器的设置对相应的引脚无影响。端口A数据和方向控制寄存器A(PADATADIR)地址7098h注:_+复位后的值和相应引脚的状态有关,R=可读,W=可写,_0=复位后的值端口B数据和方向控制寄存器(PBDATDIR)地址709Ah注:_+复位后的值和相应引脚的状态有关,R=可读,W=可写,_0=复位后的值端口C数据和方向控制键寄存器(PCDATDIR)地址709Ch注:_+复位后的值和相应引脚的状态有关,R=可读,W=可写,_0=复位后的值端口D数据和方向控制键寄存器(PDDATDIR)地址709Eh注:_+复位后的值和相应引脚的状态有关,R=可读,W=可写,_0=复位后的值端口E数据和方向控制键寄存器(PEDATDIR)地址7094h注:_+复位后的值和相应引脚的状态有关,R=可读,W=可写,_0=复位后的值端口F数据和方向控制键寄存器(PFDATDIR)地址7096h注:_+复位后的值和相应引脚的状态有关,R=可读,W=可写,_0=复位后的值三各单元硬件设计及工作原理事件管理器A和B的引脚描述四软件设计与说明4.1程序文件说明程序主要文件:(1)vectors.asm:包含了LF2407中断矢量的文件,中断向量表文件。(2)pwmc:这是实验的主程序C源文件,包含了系统的初始化及对片外扩展的高32K数据控件的操作。(3)2407CMD.cmd:DSP的链接文件,声明了系统的存贮器配置与程序各段的连接关系,它的主要功能是将DSP的每段的程序链接到相应的DSP的存贮区中。(4)rts2xx.lib是一个库文件,主要包含了有关C的运行环境与相应的函数的代码。4.2主程序(pwm.c)/该程序利用EVB模块的PWM7-PWM12引脚产生不同占空比的方波#include"register.h"voidinlinedisable()/屏蔽中断程序asm("setcINTM");intinitial()/系统初始化子程序asm("setcSXM");/符号位扩展有效asm("clrcOVM");/累加器中结果正常溢出asm("clrcCNF");/B0被配置为数据存储空间*SCSR1=0x80FE;/CLKIN=10M,CLKOUT=4*CLKIN=40M*WDCR=0x0E8;/不使能看门狗,因为SCSR2中的WDOVERRIDE/即WD保护位复位后的缺省值为1,故可以/用软件禁止看门狗*IMR=0x0000;/禁止所有中断*IFR=0x0FFFF;/清除全部中断标志,"写1清0"WSGR=0X0FFFF;/禁止所有的等待状态intpwminitial()/EVB模块的PWM初始化程序*MCRC=*MCRC|0X007E;/IOPE1-6被配置为基本功能方式,PWM7-12*ACTRB=0X0666;/PWM12,10,8低有效,PWM11,9,7高有效*DBTCONB=0xFFC;/不使能死区控制*CMPR4=0X1000;*CMPR5=0X3000;*CMPR6=0X5000;*T3PER=0X6000;/设置定时器3的周期寄存器,并设置CMPR4-6,/以确定不同的输出占空比*COMCONB=0X8200;/使能比较操作*T3CON=0X1000;/定时器3为连续增计数模式voidinterruptnothing()/该中断服务程序是为了防止干扰,不做任何其它操作return;/中断直接返回main()/主程序disable();/总中断禁止initial();/系统初始化pwminitial();/PWM输出初始化*T3CON=*T3CON|0x0040;/启动定时器3while(1);4.3向量表程序(vectors.asm).ref_nothing;直接返回的中断服务程序符号.ref_c_int0;复位向量符号.sect".vectors"RSVECTB_c_int0;PM0复位向量1INT1B_nothing;PM2中断优先级14INT2B_nothing;PM4中断优先级25INT3B_nothing;PM6中断优先级36INT4B_nothing;PM8中断优先级47INT5B_nothing;PMA中断优先级58INT6B_nothing;PMC中断优先级694.4存储器配置(2407CMD.cmd)-w-stack200-heap200-lrts2xx.libMEMORYPAGE0:VECS:ORIGIN=00000H,LENGTH=00040H/*中断向量存贮空间*/PVECS:ORIGIN=00044H,LENGTH=00100H/*外围中断向量*/PM:ORIGIN=00150H,LENGTH=07EAFH/*片内flash存储空间*/PAGE1:REGS:ORIGIN=0H,LENGTH=60H/*存储器映射的寄存器和保留地址*/BLK_B2:ORIGIN=60H,LENGTH=20H/*块B2*/BLK_B0:ORIGIN=200H,LENGTH=100H/*块B0,如果CNF=0,则分配为片内ARAM*/BLK_B1:ORIGIN=300H,LENGTH=100H/*块B1*/SARAM_D:ORIGIN=800H,LENGTH=800H/*如果正确培植SCSR2寄存器,则此为数据空间中的2KSARAM*/PERIPH:ORIGIN=7000H,LENGTH=1000H/*外围寄存器空间*/EX2_DM:ORIGIN=8000H,LENGTH=8000H/*外围数据RAM*/PAGE2:/*I/O存储空间*/IO_EX:ORIGIN=0000H,LENGTH=0FFF0H/*外部的I/O映射空间*/IO_IN:ORIGIN=0FFF0H,LENGTH=0FH/*片内的I/O映射空间*/SECTIONS.reset:>VECSPAGE0/*中断向量表*/.vectors:>VECSPAGE0.pvecs:>PVECSPAGE0.text:>PMPAGE0.cinit:>PMPAGE0.bss:>SARAM_DPAGE1.usect:>BLK_B0PAGE1.data:>BLK_B1PAGE1.stack:>SARAM_DPAGE1五调试结果及其操作说明5.1CCS集成开发环境CCS提供了配置、建立、调试、跟踪和分析程序的工具,如图所示,它便于实时、嵌入式信号处理程序的编制和测试,能够加速开发进程,提高工作效率。CCS提供了基本的代码生成工具,它们具有一系列的调试、分析能力。CCS支持如下所示的开发周期的所有阶段。CCS的开发过程5.2CCS的调试操作1设置断点。将光标放置在需要设置断点的程序行前,选择DebugBreakpoints,即完成可一个断点的设置。2CCS提供3种方法复位目标板1)ResetDSP:DebugResetCPU,初始化所有的寄存器内容并暂停运行中的程序。使用此命令后,要重新装载.out文件后,再执行程序。2)Restart:DebugRestart,将PC值恢复到当前载入程序的入口地址。3)Gomain:DebugGomain,将程序运行到主程序的入口处暂停。3CCS提供4种执行操作1)全速执行:DebugRun,程序运行直到遇到断点为止。2)暂停执行:DebugHalt,程序停止运行。3)动画执行:DebugAnimate,用户反复运行程序,直到遇到断点为止。4)自由执行:DebugRunFree,禁止所有断点运行程序。4CCS提供4种单步执行操作1)单步进入:Debugstepinto,快捷键F8,当调试语句不是基本汇编指令时,此操作进入语句内部。2)单步执行:DebugstepOver,此命令将函数或子函数当作一条语句执行,不进入内部调试。3)单步跳出:DebugstepOut,此命令作用为从子程序中跳出4)执行到光标处:DebugRuntoCursor,快捷键crtl+F10,此命令作用为将程序运行到光标处。5内存、寄存器与变量的操作1)查看变量使用viewWatchWindow命令2)查看寄存器使用viewRegistersCPURegisters命令,如图3.4所示。3)查看内存使用viewmemory命令六参考文献1. 刘和平等编著DSP原理及电机控制应用北京航空航天大学出版社2006年11月2. 刘和平等编著TMS320LF240xDSPC语言开发应用北京航空航天大学出版社2003年1月3. 赵世廉编著TMS320x240xDSP原理及应用开发指南北京航空航天大学出版社2007年7月

    注意事项

    本文(DSP课设PWM讲课教案.doc)为本站会员(1595****071)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

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

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开