DSP控制器原理及技术

时间:2019-05-12 01:04:15下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《DSP控制器原理及技术》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《DSP控制器原理及技术》。

第一篇:DSP控制器原理及技术

西安邮电大学

DSP控制器原理及技术

院(系)名称学生姓名专业班级名称学号时间实验报告

自动化学院

2014年6月

: ::

: : 课内实验

3.1 CCS入门

3.1.1 CCS 入门实验 1(CCS 使用)3.1.1.1 实验目的:

1.熟悉 CCS 集成开发环境,掌握工程的生成方法; 2.熟悉 SEED-DEC28335 实验环境; 3.掌握 CCS 集成开发环境的调试方法。3.1.1.2 实验内容: 1.DSP 源文件的建立; 2.DSP 程序工程文件的建立;

3.学习使用 CCS 集成开发工具的调试工具。3.1.1.3 实验背景知识: 3.1.1.3.1 CCS 简介

CCS 提供了配置、建立、调试、跟踪和分析程序的工具,它便于实时、嵌入式信号处理程序的编制和测试,它能够加速开发进程,提高工作效率。CCS 提供了基本的代码生成工具,它们具有一系列的调试、分析能力。CCS 支持如下所示的开发周期的所有阶段。如下图所示。

开发环境界面如下图所示。

3.1.1.3.2 使用 CCS 常遇见文件简介:

1.program.c: C 程序源文件 2.program.asm: 汇编程序源文件

3.filename.h: C 程序的头文件,包含 DSP/BIOS API 模块的头文件 4.filename.lib: 库文件 5.project.cmd: 连接命令文件

6.program.obj: 由源文件编译或汇编而得的目标文件

7.program.out: 经完整的编译、汇编以及连接后生成可执行文件 8.program.map: 经完整的编译、汇编以及连接后生成空间分配文件 9.project.pjt: 存储环境设置信息的工作区文件 保存配置文件时将产生下列文件: 1.programcfg.cmd: 连接器命令文件 2.programcfg.h54: 汇编头文件 3.programcfg.s54: 汇编源文件 3.1.1.3.3 CCS 常用指令简介 1.设置断点。将光标放置在需要设置断点的程序行前,选择 Debug→Breakpoints,即完成可 一个断点的设置。

2.CCS 提供 3 种方法复位目标板

1)Reset DSP: Debug →Reset D,初始化所有的寄存器内容并暂停运行中的 程序。使用此命令后,要重新装载.out 文件后,再执行程序。

2)Restart: Debug → Restart,将 PC 值恢复到当前载入程序的入口地址。3)Go main: Debug →Go main,将程序运行到主程序的入口处暂停。3.CCS 提供 4 种执行操作

1)执行执行: Debug →Run,程序运行直到遇到断点为止。2)暂停执行: Debug →Halt,程序停止运行。

3)动画执行: Debug →Animate,用户反复运行程序,直到遇到断点为止。4)自由执行: Debug →Run Free,禁止所有断点运行程序。4.CCS 提供 4 种单步执行操作

1)单步进入: 快捷键 F8,Debug →step into,当调试语句不是基本的汇编指令时,此操作进入语句内部。

2)单步执行: Debug → step Over,此命令将函数或子函数当作一条语句执行,不进入内部调试。

3)单步跳出: Debug →step Out,此命令作用为从子程序中跳出 4)执行到光标处: 快捷键 crtl+F10,Debug → Run to Cursor,此命令作用为将程序运行到光标处。5.内存、寄存器与变量的操作

1)查看变量: 使用 view →Watch Window 命令

2)查看寄存器: 使用 view →Registers →CPU Registers 命令 3)查看内存: 使用 view →memory 命令 3.1.1.4 实验准备:

1.将 DSP 仿真器与计算机连接好;

2.将 DSP 仿真器的 JTAG 插头与 SEED-DEC28335 单元的 J18 相连接; 3.启动计算机,当计算机启动后,打开 SEED-DTK28335 的电源。观察

SEED-DTK_MBoard 单元的+5V,+3.3V,+15V,-15V 的电源指示灯灯及SEED-DEC28335 的电源指示灯 D2 是否均亮;若有不亮,请断开电源,检查电源。

4.CCS配置

(1)双击SETUP CCStudio3.3;

(2)在famlily中选择C28XX,在platform中选择SEEDXDS510PLUS;

(3)点击左下角save&quit,进入CCS主调试界面。3.1.1.5 实验步骤: 3.1.1.5.1 创建源文件 1.双击图标进入 CCS 环境。

2.打开 CCS 选择 File →New →Source File 命令。

3.编写源代码并保存

4.保存源程序名为 math.c,选择 File →Save

5.创建其他源程序(如.cmd)可重复上述步骤。3.1.1.5.2 创建工程文件

1.打开 CCS,点击 Project-->New,创建一个新工程,其中工程名及路径可任

指定。

弹出如下对话框:

2.在 Project 中填入工程名,Location 中输入工程路径;其余按照默认选项,点击完成即可完成工程创建;

3.点击 Project 选择 add files to project,添加工程所需文件;

4.在弹出的对话框中的下拉菜单中分别选择.c 点击打开,即可添加源程序Math.c添加到工程。

5.同样的方法可以添加文件 math.cmd、rts.lib 到工程中;在下面窗口中可以看到math.c、math.cmd、rts.lib 文件已经加到工程文件中。

3.1.1.5.3 设置编译与连接选项

1.点击 Project 选择 Build Opitions;

2.在弹出的对话框中设置相应的编译参数,一般情况下,按默认值就可以;

3.在弹出的对话框中选择连接的参数设置,设置输出文件名(可执行文件与空间分配文件),堆栈的大小以及初始化的方式。

3.1.1.5.4 工程编译与调试

1.点击 Project →Build all,对工程进行编译,如正确则生成 out 文件;若是修改程序,可以使用 Project →Build 命令,进行编译连接,它只对修改部分做编译连接工作。可节省编译与连接的时间。编译通过,生成.out 文件;

2.点击 File →load program,在弹出的对话框中载入 debug 文件夹下的.out 可执行文件;

3.装载完毕;

4.点击 debug →Go Main 回到 C 程序的入口;

5.打开 File →Workspace →Save Workspace 保存调试环境,以便下次调试时不需要重新进行设置。只要 File →Workspace →Load Workspace 即可恢复当前设置。

心得体会:通过本次实验使我掌握了CCS实验环境的使用以及相应程序的内容和使用并粗略掌握用C语言编写DSP程序的方法。对本次实验的程序有了全面的了解,并在CCS实验环境下程序的编译及编译中出现的错误的排除错误,警告的处理方法。通过实验,加深了我对DSP试验箱的TMS320F2812主控板的了解同时懂得了如何使用DSP硬件仿真器。

通过本次实验使我对于微机原理这么课更加熟悉,并且更进一步掌握了所学的知识,从而在实验过程中发现自己对知识点的理解不足,以及新的领悟。收获多多。

第二篇:基于DSP的步进电机控制器的设计

《DSP原理及应用》 课程设计指导书

学 院 :机械工程学院 系 所 :测控技术与仪器系 班 级 : 姓 名 : 学 号 : 指导老师:

江苏大学测控技术与仪器系

2016-01-18 应用于包装机的步进电机控制器的设计

(江苏大学机械工程学院仪器科学与工程系,江苏,镇江,212013)

摘要

本文介绍了以典型电机微控制器TMS320LF2407芯片为控制核心的步进电机控制系统,阐述了如何利用TMS320LF2407实现电机转向、速度控制,并给出了相应系统控制策略。简述了步进电机的驱动控制和DSP的PWM脉宽调制原理,详细阐述了DSP实现步进电机的加减速控制问题。

步进电机是一种通过电脉冲信号控制相绕组电流实现定角转动的机电元件,与其他类型电机相比具有易于开环精确控制、无积累误差等优点,广泛运用于数控机床、机器人、自动化仪表等领域。DSP芯片的出现,开创了步进电机控制的新局面。用DSP控制的步进电机不仅减小了控制系统的体积、简化了电路,同时进一步提高了电机控制的精度和控制系统的智能化,从而逐步实现控制系统的嵌入式。基于DSP的步进电机控制技术在九十年代时期得到了较大发展,主要应用在工业、航天、机器人、精密测量等领域。数控机床、跟踪卫星用电经纬仪在采用了步进电机技术后,大大提高了控制与测量精度,这样就使步进电机伺服系统的应用前景更加广阔。鉴于此,本文提出了基于DSP的步进电机控制系统的设计方案。包括其硬件设计和软件设计。在软件设计中给出了主要控制程序,达到对步进电机转向、转速的控制,如正转、反转、加速、减速等。使用DSP最明显的优点在于提高了系统的可靠性,并降低了整个系统的成本。实验证明,此驱动系统简化了电路,提高了系统控制性能。

关键词:步进电机;DSP;控制系统;TMS320LF2407;

目录

第一章 绪论..................................................................................................................1 1.1引言..................................................................................................................1 1.2数字信号处理器DSP发展和现状..................................................................2 1.3 课题背景及意义.............................................................................................3 第二章 总体方案设计..................................................................................................5 2.1 设计方案.........................................................................................................5 2.2 TMS320LF2407 DSP芯片介绍........................................................................5 2.2.1 TMS320LF2407 的性能特点...................................................................5 2.2.2 A/D转换原理........................................................................................7 2.2.3 TMS320LF2407 内部A/D转换模块概述...............................................7 2.2.4 事件管理器.............................................................................................8 2.2.5 通用定时器.............................................................................................8 2.2.6 全比较单元.............................................................................................9 2.2.7 捕获单元和正交编码脉冲电路...........................................................10 2.3 四相反应式步进电机.................................................................................10 2.3.1 步进电机的结构.................................................................................10 2.3.2 步进电机的工作原理...........................................................................11 2.4 四相反应式步进电机的数学模型...............................错误!未定义书签。2.4.1 电路方程...............................................................错误!未定义书签。2.4.2 机械方程...............................................................错误!未定义书签。2.5 驱动芯片结构与特点...................................................................................12 第三章 详细设计........................................................................................................13 3.1 系统硬件设计...............................................................................................13 3.2系统软件设计................................................................................................13 3.2.1 DSP开发软件CCS介绍........................................................................13 3.2.2 程序控制流程.......................................................................................14 3.2.3 电机初始化程序...................................................................................15 3.2.4 电机控制程序.....................................................................................16 3.3 程序调试.....................................................................................................17 第四章 心得体会........................................................................................................19 参考文献......................................................................................................................20 附录..............................................................................................................................21

第一章 绪论

1.1引言

随着人们生活水平不断提高,对各种方便食品的需求也随之大增,这近一步拉动了我国食品包装业的快速发展。包装机是发展比较快的包装机械之一,拥有着广阔的发展前景。在制袋、充填、封口为一体的包装机中,要求包装用塑料薄膜定位定长供给,采用步进电机与拉带滚轮直接连接拉带,不仅结构得到了简化,而且调节极为方便,只要通过控制面板上的按钮就可以实现,这样既节省了调节时间,又节约了包装材料。

步进电机是一种把电脉冲信号变成直线位移或角位移的控制电机。它的位移速度与脉冲频率成正比,位移量与脉冲数成正比。每来一个脉冲电压,转子就旋转一个步距角。根据电压脉冲的分配方式,步进电机各相绕组的电流轮流切换,从而使电机旋转。步进电机具有步进数可控、运行平稳、价格便宜的优点,在加速器控制系统中的应用很广。

传统的步进电机一般可分为永磁式步进电动机(PM Step Motor),反应式步进电动机(VR Step Motor)和混合式步进电动机(Hybrid Step Motor)三种。

在数字化电机控制系统产生之前,要想获得高性能的步进电机驱动要么是采用昂贵、难维护的直流电机配便宜的控制装置,要么就是使用便宜的交流电机配昂贵、复杂的控制装置。基于DSP的数字化电机控制的出现改变了这一状况,由于DSP强大的运算能力,它可以实时地实现一些先进的控制算法,获得高性能的电机驱动控制。

数字化电机控制的优点正是由于数字化的信号和信号处理所带来的,和模拟控制相比,它具有互联方便,稳定性好,便于大规模集成,可以构成复杂的系统,容易修改,便于测试、调试和大规模生产等优点。数字化电机控制技术包括两个组成部分,现代电机控制理论和数字信号处理,其中数字信号处理又包括数字信号处理技术和数字信号处理器技术。数字化电机控制的发展和这几个方面的进展是密不可分的。

现代电机控制理论以矢量控制理论为代表,还有近年来得到快速发展的直接转矩控制理论等,这些高性能的控制方案需要进行大量的实时运算,用模拟器件的硬件方案来实现相当困难,难以实用化。只是在具有强大运算能力的控制器如 DSP等价格下降,性能提高之后,数字化的高性能控制方案才开始大量步入实用领域。

1.2数字信号处理器DSP发展和现状

DSP是Digital Signal Processor的缩写,DSP在70年代末、80年代初产生后起初并不显眼,主要应用于一些特定的数字信号处理密集的领域如军事的声纳和雷达、监测和监听设备,以及气象卫星、地震监测器等。虽受到个人计算机发展光辉的遮掩,它一直在幕后悄悄发展着。80年代后期开发出较通用产品后,逐步进入各个领域。近年来,随着通讯领域的红火,个人计算机的普及以及家用电器的发展,DSP更是从幕后走到了台前,各种应用如手机、MODEM、硬盘、声卡、显卡、DVD.VCD、可视电话、数字电视、数字相机、导弹、高保真音响、洗衣机、空调、语音识别、游戏等等数不胜数,大到上天入地,小到我们每个人的身边,现在是哪儿都有它的踪迹了。

如果说CPU是PC时代的技术核心,则说DSP是后PC时代的技术核心毫不为过。由于具有超强的数字信号处理能力和合理的性价比,二十几年时间,DSP的发展日益迅猛,应用日益广泛。现在,DSP已经成为计算机网络、无线通讯、信息家电、电子产品、图形处理、视频会议、数字音频广播等领域的核心。业内人士预言:DSP将是未来发展最快的电子器件,是电子产品更新换代的决定性因素。

DSP芯片能够高速发展,一方面得益于集成电路的发展,另一方面也得益于巨大的市场。目前,DSP芯片的价格越来越低,性能价格比日益提高,具有巨大的市场潜力。据世界半导体贸易统计组织(WSTS)发布的统计和预测报告显示:1996~2005年,全球DSP市场一直保持稳步增长,2005年增长率为35%;另据CCID统计:2005年中国DSP增长率超过40%,销售量达到13亿块。

据市场调查公司ICE统计,1998年DSP市场达33.4亿美元,其中通信占48%,计算机/MODEM占30%,硬盘12%,消费类产品5%,军用航空航天5%,典型应用产品和市场包括:电视会议、文件成像、可视电话、数字蜂窝电话、数字设备、电机调速等,一些家用电器如空调、洗衣机、电冰箱等为了节能和静音也开始采用DSP控制。

DSP按数据格式分可分为定点DSP和浮点DSP两种,也可按用途分为通用型 DSP和专用型DSP,近年来德州仪器(TI)和美国模拟器件公司(Analog Device,简称AD)都推出了专门针对电机控制领域的专用型DSP系列,TI是TMS320-2XX系列,AD则是ADMC系列,这些芯片都是定点DSP,具有普通定点DSP的运算能力和单片机般的外围设备,使得它们成为用于数字化电机控制的最佳选择。当前,DSP芯片还在快速发展中,它的处理速度正随着时间的前进而不断提高,从1982年的5MIPS(每秒百万指令)到1997年的100MIPS,再到现在的2000MIPS(多DSP单一化),预计2007年将达到320000MIPS。DSP的价格则正走着一条相反的道路,据DSP最大的生产厂家TI公司的历史价格统计,12年来每MIPS的价格己从200美元降到了一个美元,价格的下降导致应用领域的扩大,而应用的扩大也引起价格的下降,形成了一种良性的循环。

技术的高速发展引发了信息产业革命,以计算机技术、通信技术为核心的信息技术正在以前所未有的速度改变着人们的生活和工作方式。数字信号处理是信息技术中的一个核心问题。实现数字信号处理的核心器件是数字信号处理器(以后简称为DSP)。

数字化电机控制包括电机模型的数字化和信号处理的数字化,而DSP的运算速度则是这样的实时一控制所必须的。为实现上述步进电机控制和交流电机控制融合的想法,由于其中有较多实时数学运算的要求,因此考虑使用德州仪器(TI)C2000系列DSP中的TMS320LF2407来实现。

1.3 课题背景及意义

用DSP控制的步进电机不仅减小了控制系统的体积、简化了电路,同时进一步提高了电机控制的精度和控制系统的智能化,从而逐步实现控制系统的嵌入式。基于DSP的步进电机控制技术在九十年代时期得到了较大发展,主要应用在工业、航天、机器人、精密测量等领域。数控机床、跟踪卫星用电经纬仪在采用了步进电机技术后,大大提高了控制与测量精度,这样就使步进电机伺服系统的应用前景更加广阔。

DSP控制器的技术水平主要体现在三个层面:硬件方案、核心控制算法以及应用软件功能。国内步进电机控制器所采用的硬件平台和国外产品相比并没有太大差距,有的甚至更加先进。DSP用于电机控制有很多好处:

(1)可执行高级运算,减少力矩纹波,从而实现低振动、长寿命;(2)高级运算使谐波减小,很容易满足国家要求,同时降低滤波器成本;(3)提供无传感器运算,省去位置和速度传感器:

(4)实时产生平滑的、近乎完美的参考模型,获得良好的控制性能;(5)控制逆变器,产生高精度PWM输出;(6)提供单片机控制系统。

本课题的研究内容是使用TI公司的DSP芯片TMS320LF2407控制步进电机,实现步进电机的驱动,构成控制系统。

第二章 总体方案设计

2.1 设计方案

本次设计是步进电机控制器系统,整个控制系统分为四个部分:DSP中央控制器TMS320LF2407、外接电位器、步进电机及其驱动。

在本次设计中采用的电机是微型四相反应式步进电动机,其接受数字控制信号(电脉冲信号),并转换为与之相对应的角位移。基于对低碳节能的考虑,在这里设计成一个单四拍信号来进行步进电动机的控制,通电顺序为A-B-C-D-A,步距角为15°。驱动芯片采用的是ULN2003芯片,控制流程如下:首先由DSP的A/D转换模块将电位器输出的模拟信号转换为数字信号,然后将该数字信号输入到DSP中以设定脉冲信号的间隔时间以便控制电机的转速,接着将由DSP的四个I/O口提供脉冲信号给驱动芯片,脉冲信号经过驱动芯片的处理后用来驱动步进电机的四个相,从而达到控制电机运转的目的。

在本次步进电机的控制系统中,由于步进电动机本身所拥有的精确定位特点我们采用开环控制系统。系统总体结构图如下所示:

电位器A/DTMS320LF2407 DSP驱动芯片步进电机

图2-1 系统总体结构图

2.2 TMS320LF2407 DSP芯片介绍

2.2.1 TMS320LF2407 的性能特点

TMS320LF2407芯片是Texas Instruments公司生产的16位定点数字信号处理器TMS320C2000家族中的一种,是TMS320X240X系列DSP控制器中功能最强、片上设施最完备的一个型号。与其他TMS320C2000系列芯片相比具有以下特点:

1、采用高性能静态CMOS技术,使供电电压降为3.3V,减小了控制器功耗;40MIPS的最高指令执行速度使得指令周期为33ns(30MHz),从而提高了控制器的实时控制能力。

2、基于TMS320C2xxDSP的CPU内核,保证了TMS320LF2407代码和TMS320系列DSP代码兼容。

3、片内有高达32K字FLASH程序存储器,高达1.5K字数据/程序RAM,544字双口RAM(DARAM)和2K字单口RAM(SARAM)。

4、两个事件管理模块EVA和EVB,每个模块包括:两个16位通用定时器;8个16位脉宽调制(PWM)通道。它们能够实现: PWM的对称和非对称波形;可编程PWM死区控制以防止上下桥臂同时输出触发脉冲;3个捕获单元;片内光电编码器接口电路;16通道10位A/D转换器。事件管理器模块适用于控制交流感应电机、无刷直流电机、开关磁阻电机、步进电机和功率逆变器。

5、可扩展外部存储器总共192K字空间:64K字程序存储空间;64K字数据存储空间;64K字I/O寻址空间。

6、看门狗定时器模块(WDT):可用来监控系统软件和硬件的操作,它可以按照用户设定的时间间隔产生中断。如果软件执行进入一个不正确的循环或者CPU运行出现异常时,该模块可以实现系统复位,使系统进入预定状态。

7、控制器局域网络(CAN)2.0模块:CAN模块给用户提供了设计分布式或网络化运动控制系统接口。

8、串行通信接口(SCI)模块:用于实现DSP与其他异步外设之间的串行通信,其接收器和发送器都是双缓冲的。9、16位串行外设(SPI)接口模块:用于DSP与外设或其他控制器进行串行通信,典型应用包括与数模转换器、LED显示驱动等器件的通信。

此外,TMS320LF2407包含高达40个可单独编程或复用的通用输入/输出引脚和基于锁相环的时钟发生器。之所以称TMS320LF2407为电机控制专用芯片,主要原因在于该芯片内置有功能强大的事件管理器、PWM脉冲发生器和两路10位模数转换模块。有了事件管理器强大的实时处理功能和PWM控制波形发生器以及两路同时采样、保持、转换的高速A/D,TMS320LF2407几乎可以实现任何电机控制。

2.2.2 A/D转换原理

A/D转化电路亦称“模拟数字转换器”,简称“模数转换器”。将模拟量或连续变化的量进行量化(离散化),转换为相应的数字量的电路。

随着数字技术,特别是信息技术的飞速发展与普及,在现代控制。通信及检测等领域,为了提高系统的性能指标,对信号的处理广泛采用了数字计算机技术。由于系统的实际对象往往都是一些模拟量(如温度。压力。位移。图像等),要使计算机或数字仪表能识别。处理这些信号,必须首先将这些模拟信号转换成数字信号;而经计算机分析。处理后输出的数字量也往往需要将其转换为相应模拟信号才能为执行机构所接受。这样,就需要一种能在模拟信号与数字信号之间起桥梁作用的电路-模数和数模转换器。

A/D转换器的功能是把模拟量变换成数字量。由于实现这种转换的工作原理和采用工艺技术不同,因此生产出种类繁多的A/D转换芯片。A/D转换器按分辨率分为4位、6位、8位、10位、14位、16位和bcd码的31/2位、51/2位等。按照转换速度可分为超高速(转换时间≤330ns)、次超高速(330~3.3μs)、高速(转换时间3.3~333μs)、低速(转换时间>330μs)等。A/D转换器按照转换原理可分为直接a/d转换器和间接a/d转换器。所谓直接A/D转换器,是把模拟信号直接转换成数字信号,如逐次逼近型,并联比较型等。其中逐次逼近型a/d转换器,易于用集成工艺实现,且能达到较高的分辨率和速度,故目前集成化A/D芯片采用逐次逼近型者多;间接A/D转换器是先把模拟量转换成中间量,然后再转换成数字量,如电压/时间转换型(积分型);电压/频率转换型,电压/脉宽转换型等。其中积分型a/d转换器电路简单,抗干扰能力强,切能作到高分辨率,但转换速度较慢。有些转换器还将多路开关、基准电压源、时钟电路、译码器和转换电路集成在一个芯片内,已超出了单纯A/D转换功能,使用十分方便。

2.2.3 TMS320LF2407 内部A/D转换模块概述

TMS320LF2407的A/D转换模块(ADC)具有以下特性:

1、带内置采样和保持(S/H)的10位ADC。

2、多达16个模拟输入通道(ADCIN0-ADCIN15)。

3、自动排序的能力。一次可执行最多16个通道的“自动转换”,而每次要转换的通道都可以通过编程来选择。

4、两个独立的最多可选择8个模拟转换通道的排序器(SEQ1和SEQ2)可以独立工作在双排序器模式,或者级联之后工作在一个最多可选择16个模拟转换通道的排序器模式。

5、在给定的排序方式下,4个排序控制器(CHSELSEQN)决定了模拟通道转换的顺序。

6、可单独访问的16个结果转换器(RESULT0-RESULT15)用来储存转换结果。

7、可有多个触发源启动A/D转换: 软件:软件立即启动(用SOC和SEQN);

EVA/B:事件管理器(在EVA/B中有多个事件源可以启动A/D); 外部:ADC SOC引脚;

8、灵活的中断控制,允许在每一个或每隔一个序列的结束时产生中断请求。

9、排序器可工作在启动/停止模式,允许多个按时间排序的触发源同步转换。

10、EVA和EVB可各自独立地触发SEQ1和SEQ2(仅用于双排序器模式)。

11、采样和保持获取时间窗口有单独的预定标控制。

12、内置校验模式。

13、内置自测试模式。

2.2.4 事件管理器

在实际应用中,使用TMS320LF2407来构成运动控制系统的关键是该芯片具有一个事件管理器(Event Manager)专用外设模块。事件管理器是一个专门用于电动机控制的外设模块,主要由通用定时单元、比较单元、捕获单元、正交编码脉冲电路QEP和外部输入组成。

2.2.5 通用定时器

TMS320LF2407的每个事件管理模块有两个可编程通用定时器(GP)。每个GP定时器x(EVA,x=1,2;对EVB,x=3,4)包括:

一个16位定时器增/减计数的计数器TxCNT,可读写。一个16位定时器比较寄存器(映射双缓冲寄存器)TxCMPR,可读写。一个16位定时器周期寄存器(映射双缓冲寄存器)TxPR,可读写。一个16位定时器控制寄存器TxCON可读写。可选择的内部或外部输入时钟。

用于内部或外部时钟输入的可编程预定标器(Prescaler)。

控制和中断逻辑用于四个可屏蔽的中断:下溢、溢出、定时器比较和周期中断。

可选方向的输入引脚TMRDIR(当选择双向计数方式时,可以用来选择向上或向下计数)。

在实际应用中,这些定时器能够产生系统所需要的计数信号、离散控制系统的采样周期、QEP电路、捕获单元和比较单元的时基等。为了适应不同应用的需要,每个通用定时器都有6种可选的计数模式,分别是:停止/保持模式;单增计数模式;连续增计数模式;定向增/减计数模式;连续增/减计数模式;单增/减计数模式。

每个GP定时器都有一个比较寄存器和一个比较PWM输出引脚,通用定时器可以工作在比较操作模式或比较PWM输出模式。当工作在比较操作模式时,定时器的计数器值总是和相关的比较寄存器中的值相比较,当两者相等时就发生比较匹配事件。当工作在比较PWM模式时,其输出引脚的信号受通用定时器控制寄存器的定义、定时器所处的计数模式以及定时器的计数方向的影响。

2.2.6 全比较单元

事件管理器EVA模块中有三个全比较单元CMPx(x=1,2,3);事件管理器EVB模块中同样有三个全比较单元CMPx(x=4,5,6)。每个比较单元都可以工作在比较模式或PWM模式下,可以通过COMCON中的位决定每个比较单元的工作模式。

当比较模式被选中并且全比较操作被使能时,定时器的计数器就会不断地与全比较单元的比较寄存器中的值进行比较。当发生比较匹配时,全比较单元的输出引脚会根据ACTR中的定义产生合适的电平跳变,同时比较中断标志被置位。如果同组中没有其他更高优先级的中断挂起,该中断标志将向DSP内核发出中断请求。当工作在PWM模式下,全比较的操作类似于通用定时器的比较操作。2.2.7 捕获单元和正交编码脉冲电路

捕获单元在TMS320LF2407的捕获引脚上出现跳变时被触发,事件管理器总共有6个捕获单元。当捕获引脚CAPx(对EVA,x=1,2,3:对EVB x=4,5,6)上检测到所选的跳变时,所选的GP定时器的计数值被捕获并存储在两级FIFO栈中。

每个EV模块都有一个正交编码脉冲电路。该电路被使能后,可以在编码和计数引脚CAP I /QEP I和CAP2/QEP2(对于EVA模块)或CAP3lQEP3和CAP4/QEP4(对于EVB模块)上输入正交编码脉冲。正交编码脉冲电路可用于连接光电编码器以获得旋转机械的位置和速率信息。此电路在处理电机测速光电编码器的输出信号时很有用,可以大大简化电机测速的软硬件开销,提高控制系统的测速精度与可靠性。如果使能了正交编码脉冲电路,则相应引脚上的捕获功能将被禁止。

2.3 四相反应式步进电机

2.3.1 步进电机的结构

四相步进电机的基本机构如图2-2。四相步进电机在结构上分为转子和定子两部分。定子一般由硅钢片叠成,定子上所绕的线圈称为励磁线圈。对于如图2.1所示的绕线方式,A、A’引线形成一相,B、B’引线形成一相,C、C’引线形成一相D、D’引线形成一相。当给某相线圈通电时将形成8个磁极。这样,对于四相八级步进电机共有A、A’,B、B’,C、C’和D、C’四个绕组、8个磁极。每个定子磁极内表面都分布着小齿,它们大小相同,间距相同。

转子是由软磁材料制作成的。其外表面也均匀分布着小齿,这些小齿与定子磁极上的小齿相同,形状相似。

由于小齿的齿距相同,所以不管是定子还是转子,它们的齿距角都可以由下式

Z2/Z(2.1)

来计算。式中,Z为转子的齿数。

图2-2 四相步进电机步进示意图

2.3.2 步进电机的工作原理

在步进电机的结构中必定有错齿和对齿的存在如图2-3所示。我们把定子小齿和转子小齿对齐的状态称为对齿;把定子小齿与转子小齿不对齐的状态称为错齿。错齿的存在是步进电机能够旋转的前提条件。如果给处于错齿状态的相线圈通电,转子在电磁力的作用下,如果磁极相异,则转子向完全对齿方向转动,如果磁极性相同,则转子向完全错齿方向转动。假设将电机的转子置于线圈所产生的磁场中,便会受到磁场的作用而产生与磁场方向一致的力,转子便开始转动,直到转子的磁场和线圈的磁场方向一致为止。步进电机的转动就是基于这一原理实现的。

定子小齿

转子小齿

(a)对齿(b)错齿

图2-3 定子齿与转子齿的磁导现象

按如下四个步骤循环通电: A’A相通电,电流方向为A’—A; B’B相通电,电流方向为B’—B; C’C相通电,电流方向为C’—C; D’D相通电,屯流力向为D’—D。

可以分析出,在每一次通电过程中,步进电机的转子均相对上次通电时的平衡位置顺时针旋转了一个位移角。对绕组通电一次的操作称为一拍,根据上面给出的算式每给电机一个脉冲,步进电机将转过15度,既转过一圈则需要,360/15=24个脉冲。

2.5 驱动芯片结构与特点

本次设计采用的驱动芯片是ULN2003。它是高耐压、大电流达林顿陈列。由七个硅NPN达林顿管组成。该电路的特点如下:

ULN2003的每一对达林顿都串联一个2.7K的基极电阻,在5V的工作电压下它能与TTL和CMOS电路直接相连。可以直接处理原先需要标准逻辑缓冲器来处理的数据。ULN2003工作电压高.工作电流大.灌电流可达500mA,并且能够在关断时承受50v的电压,输出还可以在高负载电流并行运行。

图2-4 ULN2003内部结构图 第三章 详细设计

3.1 系统硬件设计

系统硬件设计详细信息请查阅成员朱永良报告。

3.2系统软件设计

3.2.1 DSP开发软件CCS介绍

CCS(Code Composer Studio)软件是德州仪器公司专为TMS320系列DSP开发的一个开发软件。

CCS在Windows环境下工作,类似于VC++集成开发环境,它采用图形接口界面,提供有编辑工具和工程管理工具,将代码产生工具,如汇编器、链接器、C/C++编译器、建库工具整合为一个统一的开发平台。CCS支持汇编语言、C/C++语言编程。能对DSP进行指令级的仿真和可视化实时数据分析,极大地方便了DSP系统地软硬件开发。但多数情况下,考虑到软件的移植性问题,一般采用C语言编程。下图所示为CCS平台的组成。

图3-1 CCS平台组成 CCS集成的源代码编辑环境,使程序的修改更为方便;CCS集成的代码生成工具,使开发设计人员不必键入大量的命令及参数;CCS集成的调试工具,使程序调试一目了然,大量的观察窗口使程序调试得心应手。更重要的是CCS增强了实时、嵌入信号的开发过程,开发人员可在不中断程序运行的情况下检查算法的对错,实现对硬件的实时跟踪调试,大大缩短了程序的开发时间。3.2.2 程序控制流程

如下图所示为主程序流程图:

开始系统初始化I/O口模式设置所有LED初始化LCD初始化调用电机子程序

图3-2 主程序流程图

程序运行开始后,首先进行系统初始化,初始化内容包括:将DSP的IOPE0到IOPE7管脚设置为I/O模式、将中断模式位清零使所有未屏蔽的中断使能、将IOPE0到IOPE7管脚设置为低电平既使开发板上的灯全部熄灭、定时器1初始化设置定时周期和计数模式等。

3.2.3 电机初始化程序 main(){

SystemInit();

//系统初始化

MCRC=MCRC & 0xFF00;

//IOPE0-7设为IO口模式

PEDATDIR=0xFF00;

asm(“ CLRC INTM ”);

LcdInit();

Timer1Init();

while(1)

{

KeyLed();

} }

void SystemInit()

{

asm(“ SETC INTM ”);

asm(“ CLRC SXM ”);

asm(“ CLRC CNF ”);asm(“ CLRC OVM ”);

SCSR1=0x83FE;

时钟CLKOUT=40M */

WDCR=0x006F;

KickDog();

IFR=0xFFFF;

IMR=0x0002;

}

//所有LED=0,/*LCD初始化*/

//定时器初始化

//系统初始化程序

/* 关闭总中断 */

禁止符号位扩展 */

/* B0块映射为 on-chip DARAM*/ /* 累加器结果正常溢出*/

/* 系统时钟CLKOUT=20*2=40M */ /* 打开ADC,EVA,EVB,CAN和SCI的时钟,系统

/* 禁止看门狗,看门狗时钟64分频 */

/* 初始化看门狗 */

/* 清除中断标志 */

/* 打开中断2*/

/*

3.2.4 电机控制程序

调用电机控制程序numled=0,numled++提取AD模块采样结果(AD>0)numled等于AD?numled++是IOPE1输出高电平;LED1亮 numled等于2*AD?numled++是IOPE2输出高电平;LED2亮 numled等于3*AD?numled++numled++是IOPE3输出高电平;LED3亮 numled等于4*AD?numled++是是IOPE4输出高电平;LED4亮 numled等于5*AD?图3-3 电机控制流程图

void KeyLed(){

if(numled==AD)

//修改参数AD可以控制步进电机转速

{

PEDATDIR=PEDATDIR & 0xFF00;

//IOPE1,2,3,4=0;LED全灭

PEDATDIR=PEDATDIR | 0x0002;

//IOPE=1;LED1亮

}

if(numled==2*AD)

{

PEDATDIR=PEDATDIR & 0xFF00;

//IOPE1,2,3,4=0;LED全灭

PEDATDIR=PEDATDIR | 0x0004;

//IOPE2=1;LED2亮

} if(numled==3*AD)

{

PEDATDIR=PEDATDIR & 0xFF00;

//IOPE1,2,3,4=0;LED全灭

PEDATDIR=PEDATDIR | 0x0008;

//IOPE3=1;LED3亮

} if(numled==4*AD)

{

PEDATDIR=PEDATDIR & 0xFF00;

//IOPE1,2,3,4=0;LED全灭

PEDATDIR=PEDATDIR | 0x0010;

//IOPE3=1;LED4亮

}

if(numled>=4*AD)

{

Que();

WriteMenu1(6,b);

numled=1;

}

}

程序初始化后,DSP的AD转换模块将电位器输入的电压模拟信号转换为数字信号,并存在结果寄存器RESULT0(设计采用的通道为AD0通道)中,我们通过赋值的方式将寄存器里的值赋给数组,然后用求平均数的方式来进行滤波,最后将平均值赋值整数值AD。根据上面的程序可以看出AD的大小决定了脉冲之间的间隔,也就是说通过调节AD的值可以控制电机的转速。

3.3 程序调试

在PC机系统安装好编译软件CCS3.3后,在计算机桌面上将出现两个快捷方式图标,一个是Setup CCStudio v3.3,另一个是CCStudio v3.3。Setup CCStudio v3.3是用来对该编译器的运行环境进行配置;CCStudio v3.3为程序仿真调试集成环境软件。CCS集成开发环境不能直接将汇编源代码或C语言源代码文件Build生成DSP可执行代码。必须使用项目(Project)来管理整个设计和调试过程。项目保存为*.pjt文件。新建完项目并把C源程序文件(.C)、汇编源程序文件(.ASM)、目标文件(.OBJ)、库文件(.LIB)、命令文件(.CMD)等都加入后,便可以开始调试程序。其中的头文件将通过在程序中用include来添加。在调试过程中也遇到了一些问题,例如电机无法正常运转,后来在同学的帮助下终于找到了问题的所在,最终解决了问题。

第四章 心得体会

这次为期一周的DSP课程设计,我不仅仅学到了DSP设计方面的知识,更使我懂得一个仪器的设计过程。在设计过程中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查终于找出了原因所在,也暴露出了前期我在这方面的知识欠缺和经验不足。实践出真知,通过亲自动手制作,使我们掌握的知识不再是纸上谈兵。

在这次难得的课程设计过程中我锻炼了自己的思考能力和动手能力。通过题目选择和设计电路的过程中,加强了我思考问题的完整性和实际生活联系的可行性。在方案设计选择和芯片的选择上,培养了我们综合应用的能力,对集成开发环境CCS的使用也有了更深的了解,对DSP芯片的应用也有了更深刻的体会。还锻炼我们个人的查阅技术资料的能力,动手能力,发现问题,解决问题的能力。并且我们熟练掌握了有关器件的性能及测试方法。

再次感谢老师的辅导以及同学的帮助,是他们让我有了一个更好的认识,无论是学习还是生活,生活是实在的,要踏实走路。课程设计时间虽然很短,但我学习了很多的东西,使我眼界打开,感受颇深。

在今后社会的发展和学习实践过程中,一定要不懈努力,不能遇到问题就想到要退缩,一定要不厌其烦的发现问题所在,然后一一进行解决,只有这样,才能成功的做成想做的事,才能在今后的道路上劈荆斩棘,而不是知难而退,那样永远不可能收获成功,收获喜悦,也永远不可能得到社会及他人对你的认可!19

参考文献

[1]王玲,王晓明.电动机的DSP控制-TI公司DSP应用.北京:北京航空航天大学出版社,2004 [2]刘和平,邓力.DSP原理及电机控制应用.北京:北京航空航天大学出版社,2006 [3]王晓丹.基于单片机的步进电机细分驱动系统的研究:[硕士学位论文].长沙:中南大学控制科学与工程,2008 [4]孙忠献.电机技术与应用.福州:福建科学技术出版社,2004 [5]李爱芹.基于DSP的三相混合式步进电机细分驱动系统研究:[硕士学位论文].杭州:浙江工业大学控制理论与控制工程,2006 [6]孙忠献.电机技术与应用.福州:福建科学技术出版社,2004 [7]章烈剽.基于单片机的高进度步进电机控制研究:[硕士学位论文].武汉:武汉理工大学控制理论与控制工程,2007 [8]刘爱萍.基于C8051F005单片机的两相混合式直线步进电机驱动系统的设计:[硕士学位论文].呼和浩特:内蒙古农业大学农业电气与自动化,2007 [9]汤涌.基于电机参数的同步电机模型.电网技术,2007 [10]杨渝钦.控制电机.天津:机械工业出版社,2008 20

附录

/*Main.c*/

/*步进电机控制系统程序*/ #include “hd44780.h” #include “global.c” void SystemInit();void Timer1Init();void LcdInit(void);void WriteCom(Uint16 com);void WriteMenu1(Uint16 num,Uint16 *pBuffer);void KickDog();

void KeyLed();void Lv();void Que();Uint16 a[6],b[6];unsigned int numled=0;unsigned int i=0,j=0,t0=0,k=0,D=0;unsigned int RESULT_0=0,AD=0;unsigned int AD0[18],AD_0,AD_FLAG=0;float AD_E=0.0;main(){

SystemInit();

//系统初始化

MCRC=MCRC & 0xFF00;

//IOPE0-7设为IO口模式

PEDATDIR=0xFF00;

//所有LED=0,asm(“ CLRC INTM ”);

LcdInit();

/*LCD初始化*/

Timer1Init();

//定时器初始化

while(1)21

{

KeyLed();

}

}

void SystemInit(){

asm(“ SETC INTM ”);

asm(“ CLRC SXM ”);asm(“ CLRC CNF ”);asm(“ CLRC OVM ”);

SCSR1=0x83FE;

CLKOUT=40M */

WDCR=0x006F;

KickDog();

IFR=0xFFFF;

IMR=0x0002;

}

void Timer1Init()

{

EVAIMRA=0x0080;

EVAIFRA=0xFFFF;

GPTCONA=0x0000;T1PR=2500;

/* 关闭总中断 */

/* 禁止符号位扩展 */

/* B0块映射为 on-chip DARAM*/ /* 累加器结果正常溢出*/

/* 系统时钟CLKOUT=20*2=40M */

/* 打开ADC,EVA,EVB,CAN和SCI的时钟,系统时钟

/* 禁止看门狗,看门狗时钟64分频 */

/* 初始化看门狗 */

/* 清除中断标志 */ /* 打开中断2*/

// 定时器1周期中断使能

// 清除中断标志

// 定时器1初值,定时0.4us*2500=1ms

}

T1CNT=0;T1CON=0x144E;

//增模式, TPS系数40M/16=2.5M,T1使能

void KeyLed(){

while(1)

{

if(AD_FLAG==1)

{

AD_FLAG=0;

for(i=0;i<18;i++)

{

AD_Simple();

AD0[i]=RESULT_0;

}

Lv();

}

}

if(numled==AD)

// 修改这些参数可以控制步进电机转速

{

PEDATDIR=PEDATDIR & 0xFF00;

//IOPE1,2,3,4=0;LED全灭

PEDATDIR=PEDATDIR | 0x0002;

//IOPE=1;LED1亮

}

if(numled==2*AD)

{

} if(numled==3*AD)

{ PEDATDIR=PEDATDIR & 0xFF00;

//IOPE1,2,3,4=0;LED全灭

PEDATDIR=PEDATDIR | 0x0004;

//IOPE2=1;LED2亮

} PEDATDIR=PEDATDIR & 0xFF00;

//IOPE1,2,3,4=0;LED全灭

PEDATDIR=PEDATDIR | 0x0008;

//IOPE3=1;LED3亮

if(numled==4*AD)

{

PEDATDIR=PEDATDIR & 0xFF00;

//IOPE1,2,3,4=0;LED全灭

PEDATDIR=PEDATDIR | 0x0010;

//IOPE3=1;LED4亮

}

if(numled>=4*AD)

{

Que();

WriteMenu1(6,b);

numled=1;

}

}

void Que(){

int v=2500/AD;

a[2]=v/1000;

//千位 a[3]=(v-a[2]*1000)/100;

//百位 a[4]=(v-a[2]*1000-a[3]*100)/10;

//十位 a[5]=(v-a[2]*1000-a[3]*100)%10;

//个

for(i=0;i<=6;i++)

{

b[i]=a[i]+0x30;

};}

void AD_Simple(){

ADCTRL1=0x4000;

asm(“ NOP ”);

/* ADC模块复位 */

ADCTRL1=0x0020;

/* 自由运行,启动/停止模式,双排序器工作模式 */

MAXCONV=0x0000;

CHSELSEQ1=0x0000;

//第0通道

ADCTRL2=0x4000;

//复位使排序器指针指向CONV00

ADCTRL2=0x2000;

/* 启动ADC转换 */

/*等待转换完成 */

while((ADCTRL2&0x1000)==0x1000);

asm(“ NOP ”);

RESULT_0=RESULT0>>6;

}

void Lv(){

unsigned int MaxAD0=0;

unsigned int MinAD0=AD0[0];

unsigned int tempAD0=0;

for(j=0;j<18;j++)

{

if(AD0[j]>MaxAD0)

MaxAD0=AD0[j];

else if(AD0[j]

MinAD0=AD0[j];

}

for(j=0;j<18;j++)

{

tempAD0=tempAD0+AD0[j];

}

AD_0=(tempAD0-MaxAD0-MinAD0)/16;

AD_E=AD_0*100/1023+10;}

void interrupt

c_int2()

/*定时器1中断服务程序*/ { T1CNT=0;numled++;AD=(int)AD_E;

if(PIVR!=0x27){

asm(“ CLRC INTM ”);return;

}

t 0++;if((AD_FLAG==0)&((t0%1000)==0))

//定时AD采样

}

void KickDog(){

}

#include “global.c” WDKEY=0x5555;WDKEY=0xAAAA;

/*踢除看门狗 */ {

AD_FLAG=1;} EVAIFRA=0x80;asm(“ CLRC INTM ”);

#include

“hd44780.h” PADATDIR = PADATDIR | 0xFF08 PADATDIR = PADATDIR & 0xFFF7 PADATDIR = PADATDIR | 0xFF10 PADATDIR = PADATDIR & 0xFFEF

PADATDIR = PADATDIR | 0xFF20

PADATDIR = PADATDIR & 0xFFDF #define

SetRS #define

ClrRS #define

SetRW #define

ClrRW #define

SetE #define

ClrE

void LCDPIN(void){

} void LCDPOUT(void){

}

PEDATDIR = PEDATDIR | 0x0080;PBDATDIR = PBDATDIR & 0x00FF;PEDATDIR = PEDATDIR & 0xFF7F;PBDATDIR = PBDATDIR | 0xFF00;void delay(Uint16 number){

}

//============================================ void Busy(void){

Uint16 Temp = 0x0080;LCDPIN();delay(200);ClrRS;Uint16 j;for(j = 0;j < number;j++);

} SetRW;while(Temp){

} SetE;delay(50);Temp = PBDATDIR;Temp = Temp & 0x0080;ClrE;delay(50);//========================================== void WriteCom(Uint16 com){

}

void WriteMenu1(Uint16 num,Uint16 *pBuffer)Busy();delay(100);LCDPOUT();delay(200);ClrRS;ClrRW;delay(50);com = 0xFF00 | com;PBDATDIR = com;SetE;delay(50);ClrE;

{

} //================== void LcdInit(void){

WriteCom(0x30);WriteCom(0x30);WriteCom(0x30);delay(1000);WriteCom(0x01);delay(1000);WriteCom(0x02);delay(1000);WriteCom(0x06);Uint16 i,t;WriteCom(0x80);SetRS;ClrRW;delay(50);for(i=num;i!=0;i--){

} t = *pBuffer;t = 0xFF00 | t;PBDATDIR = t;SetE;delay(50);ClrE;

pBuffer++;29

} delay(1000);WriteCom(0x0c);delay(1000);WriteCom(0x38);

//==================== // No more

第三篇:2014《DSP原理及应用》考试试题

2013级硕士研究生《DSP原理及应用》考试试题

方向:姓名:成绩:

1、试分析下列程序产生流水线冲突的原因,并说明如何解决该流水线冲突。

STLMA, AR0

LD*AR0, B(12分)

2、循环循址是实现循环缓冲区的关键,简要说明循环缓冲区中循环循址算法的基本工作原理。(12分)

3、试分析DSP与通用微处理器相比有哪些优势,为什么DSP处理器更适合做数字算法的处理。(12分)

4、有一个阶数为N=8的FIR滤波器,其单位冲击响应序列h(n)如下:h(0)=0.1, h(1)=0.2, h(2)=0.3, h(3)=0.4, h(4)=0.4, h(5)=0.3, h(6)=0.2, h(7)=0.1,试根据上述滤波器的特点,编写一个DSP程序实现该滤波器。要求用循环缓冲区法实现。(16分)

5、直接型二阶IIR滤波器的差分方程为:

y(n)b0x(n)b1x(n1)b2x(n2)a1y(n1)a2y(n2)

试用循环缓冲区法实现直接型二阶IIR滤波器。(16分)

6、试用DSP上的定时器设计一个方波信号发生器,并通过DSP的输出引脚XF输出。要求方波信号的周期为40s,占空比为50%,方波周期由片上定时器0确定,假定DSP系统时钟频率为4MHz。请根据要求写出设计参数,并编写相关程序。(16分)

7、试用TMS320VC5416设计一个DSP音频信号采集系统,在SPI模式下,用McBSP口实现与A/D转换器连接。要求自选A/D转换芯片,画出连接原理图,说明工作原理,并写出数据采集程序。(16分)

第四篇:DSP原理及应用复习总结

DSP芯片的主要结构特点:哈佛结构、专用的硬件乘法器、流水线操作、特殊的DSP指令、快速的指令周期。

中央处理器的体系架构分为:冯·诺依曼结构和哈佛结构 冯·诺依曼结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。由于取指令和存取数据要从同一个存储空间存取,经由同一总线传输,因而它们无法重叠执行,只有一个完成后再进行下一个。

哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。可以减轻程序运行时的访存瓶颈。

基础特性分类:静态DSP芯片、一致性的DSP芯片。数据格式分类:定点DSP芯片、浮点DSP芯片。用途分类:通用型DSP芯片、专用型DSP芯片。处理数据位数分类:16/32位 TMS320F2812芯片封装方式两类:179引脚的GHH球形网格阵列BGA封装、176引脚的LQFP封装。

DSP内部总线分为:地址总线和数据总线。注意:DSP外部总线:即DSP芯片与外扩存储器的总线接口,包括19根地址线和16根数据线。

时序寄存器XTIMINGx主要用于设置读写时序参数;配置寄存器XINTCNF2主要完成选择是种,设置输入引脚状态及写缓冲器深度;控制寄存器XBANK用于设置可增加周期的特定区,以及设置增加的周期数。

命令文件CMD是DSP运行程序必不可少的文件,用于指定DSP存储器分配。由两个伪指令构成,即MEMORY(定义目标存储器的配置)和SECTIONS(规定程序中各个段及其在存储器中的位置)。

28X系列DSP时钟和系统控制电路包括:振荡器、锁相环、看门狗和工作模式选择等

锁相环和振荡器的作用是为DSP芯片中的CPU及相关外设提供可编程的时钟芯片内部的外设分为告诉我社和低速外设,可以设置不同的工作频率看门狗模块用于监控程序的运行状态,它是提高系统可靠性的重要环节。

28xDSP片上晶振电路模块允许采用内部振荡器或外部时钟源为CPU内核提供时钟

DSP处理器内核有16根中断线,包括和NMI两个不可屏蔽中断和INT1至INT14等14个可屏蔽中断(均为低电平有效)。PIE中断系统共分12组,每组有8个中断复用1个CPU中断。采用三级中断机制:外设级、PIE级、CPU级

PIE中断工作原理:当某外设产生中断,IF被置1,IE也被置1,发送到PIE控制器,中断标志PIEIFRx.v被置1,中断请求发送到CPU,CPU级IFR中对应INTx被置1,IER和INTM被使能,CPU响应中断请求。

CPU定时器用户只能用T0,通用定时器是EV中的都可以用;CPU定时器只有周期中断,而EV中的通用定时器可以有上溢中断、下溢中断、周期中断、比较中断四种。

功能控制寄存器:GPxMUX、GPxDIT、GPxQUAL。

数据寄存器:GPxSET寄存器设置每个引脚为高电平;GPxCLEAR清除每个引脚信号;GPxTOGGLE反转触发每个引脚信号;GPxDAT读写每个引脚信号

事件管理器包括:通用定时器、圈比较PWM单元、捕获单元以及正交编码脉冲电路QEP 全比较PWM单元产生脉宽调制信号可以控制直流电机或步进电机的转速;捕获单元对光电编码器的输出信号进行测量可以计算电机的转速;正交编码脉冲电路根据增量编码器信号计算电机的旋转方向等信息。

通用定时器的寄存器:控制寄存器(决定通用定时器的操作模式,例如选择计数模式、时钟、预分频系数、比较寄存器的重装载条件)、全局控制寄存器(规定了通用定时器针对不同时间采取的动作、读取计数方向、定义ADC的启动信号)、比较寄存器(与通用定时器的计数值不断比较,匹配时,相应引脚跳变,请求中断)和周期寄存器(决定定时器的计数周期)是双缓冲的

通用定时器的中断:上溢中断、下溢中断、比较匹配、周期匹配

每个通用定时器都支持4种计数模式:停止/保持模式、连续递增计数模式、定向递增/递减计数模式和连续递增/递减计数模式。

EV模块各有3个全比较器,每个比较器对应两路PWM输出

每个比较单元包括3个比较寄存器CMPRX,各带一个映像寄存器;1个比较控制寄存器;1个动作控制寄存器;6路带三态输出的PWM引脚以及控制和中断逻辑。

较单元的输入包括来自控制寄存器的控制信号,通用定时器1的时钟信号及下溢信号、周期匹配信号和复位信号。比较单元输出信号是一个比较匹配信号,如果比较操作被使能的话,比价匹配信号将中断标志置位,并在对应的PWM引脚上产生跳变。比较单元的工作过程:通用定时器1的计数值不断地与比较寄存器的值进行比较,当发生匹配时,该比较单元的两个输出引脚发生跳变;ACTRA寄存器定义在发生比较匹配时每个输出引脚为高有效电平或低有效电平。

PWM单元对称/不对称波形发生器、可编程死区单元DBU、PWM输出逻辑和空间向量SVPWM状态机组成。ADC模块的特点:12位模数转换内核,内置双采样/保持器;顺序采样模式或并行采样模式;模拟输入电压范围0-3v;快速的转换时间,最高采样率12.5MSPS;16通道模拟信号输入; 并行采样:AdcRegs.ADCTRL3.bit.SMODE_SEL=1;顺序采样为0 双排序AdcTegs.ADCTRL1.bit.SEQ_CASC=0;级联排序为1 AdcRegs.ADCMAXCONV.all=0x0033并双;7并级;77顺双;F顺级 AdcRegs.ADCCHSELSEQ1.bit.CONV00=0x0 ADC工作模式:连续模式和启动/停止模式。ADC电源:上电、掉电、关闭模式。

上电顺序:给参考电源上电、给adc内部参考电源电路供电、adc模块完全供电后,等20μs才能执行第一次模数转换。

28x DSP的输入信号电压不能高于3.3V,模拟信号需经过调理后进入DSP的AD转换输入端口,未使用的模数转换器输入引脚,都要连接模拟地,否则会带来噪声信号

电源管理电路设计:多电源正确连接;不允许有电源引脚悬空;减少噪音和互相干扰,数电和模电单独供电,接地也分开,最终通过一个磁珠在单点连接

DSP编程语言特点:c语言:具有良好可读性和可移植性,开发率高;汇编语言:高的运行效率,常用语时间要求比较苛刻的地方,比如终端服务子程序。

头文件的作用:是c语言不可缺少的部分,是用户程序和函数库之间的纽带;头文件使用:用户程序只要按照头文件中的接口声明来调用库功能,编译器就会从库中提取相应的代码 C语言程序框架包含有寄存器结构定义文件、外设头文件、器件的宏与类型定义等,通过使用头外设文件,可以容易控制片内外设。

DSP程序包括:头文件包含、函数声明、宏定义、主函数main()和中断服务子程序

主函数的编程步骤:1初始换系统控制2清除所有中断并初始化PIE向量表3初始化所有用到的外设4开中断5编写用户代码 #include “DSP281x_Device.h”

#include “DSP281x_Examples.h”

interrupt void cpu_timer0_isr(void); void main(void)// {

InitSysCtrl(); DINT;

InitPieCtrl();

IER = 0x0000;

IFR = 0x0000;

InitPieVectTable(); EALLOW;

PieVectTable.TINT0 = &cpu_timer0_isr;

EDIS;InitGpio();InitCpuTimers();

ConfigCpuTimer(&CpuTimer0,100,1000000);

StartCpuTimer0();IER |= M_INT1;

PieCtrlRegs.PIEIER1.bit.INTx7 = 1;

EINT;

ERTM; …… }

interrupt void cpu_timer0_isr(void)

{

CpuTimer0.InterruptCount++;

PieCtrlRegs.PIEACK.all = PIEACK_GROUP1;

}

第五篇:《DSP原理及应用》课程设计教学大纲范文

课程设计中文名称:DSP原理及应用课程设计

课程编码: 设计周数:2周 学 分:2学分

开课学期:第6学期 开课单位:通信工程学院

一、课程设计的教学目的和任务

通过本课程设计教学所要达到的目的是:通过对课程设计任务的完成,使学生理课题教学的理论

内容,并且能够掌握和熟悉DSP的开发流程和基本的编程方法。同时,由于设计中涉及到各种器件的 使用,可以起到综合运用各种技术和知识的作用。本课程设计的任务是:任务分为基本要求和提高要 求。在基本要求中,学生要通过串口对指示灯进行控制,同时完成对串口数据的采集和发送。提高要 求是通过程序编写,完成对EVM板上的FLASH 进行烧写处理,从而使基本要求的程序可以脱机运行。

二、课程设计的主要内容

在TMS320VC5410EVM板上实现对信号的采集和发送。信号通过信号源提供给串行ADC,而

DSP从串口把ADC转换后的数据读入到DSP中。最后,从同一个串口,DSP把数据发送出去,通过 DAC编程模拟信号。在示波器上可以进行观察,输入同输出的信号是相同的,仅仅具有一定的相。

在程序运行过程当中,需要对一些指示灯进行控制。

三、课程设计的基本教学条件

实验室需要每组一台电脑,一个54XEVM板,仿真器,1M信号源,20M示波器,万用表。

四、参考资料

《TMS320VC54XDSP课程实践指导书》曾浩,重大教材科《DSP技术的发展与应用》 彭启琮,高 教出版社

五、成绩评定标准

实现全部基本要求为中或者良,实现提高要求为优,实现部分基本要求为及格,其他为不及格

下载DSP控制器原理及技术word格式文档
下载DSP控制器原理及技术.doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    DSP技术论文读后感

    DSP技术引领数字生活 学号:200883061姓名:胡淦班级:08信工二班DSP数字信号处理(Digital Signal Processing,简称DSP)是一门涉及许多学科而又广泛应用于许多领域的新兴学科。20世......

    DSP技术实验指导书

    一 基础实验:CCS 的使用与简单应用程序的调试 1.1 实验目的 1. 熟悉 CCS 集成开发环境,掌握工程的生成方法; 2. 熟悉 SEED-DEC5416 实验环境; 3. 掌握 CCS 集成开发环境的调试方......

    DSP技术课程设计教学大纲

    《DSP技术与应用》课程设计教学大纲 适用专业:电子信息工程/通信工程 学 时: 2 周 编写人:刘伟春 审定人:余建坤 何海浪 一、 本课程设计的性质、目的、任务 本课程设计是为电子......

    现代DSP技术及应用课程总结报告[本站推荐]

    电 子 信 息 学 院 现代DSP技术及应用 课程总结 专业 班级 学号 学生姓名 指导教师 时 间 段 完成日期 xxx xxx xxx xxx xxx xxx xxx 摘要:本文是在学习信号处理与DSP应用课......

    跳远技术原理

    跳远技术原理 摘要:通过多方面实践中运用生物力学、运动解剖学、运动生理学等来观察分析跳远运动的内在规律和对跳远运动技术的各个环节进行纵向的深入研究,获得跳远运动的总......

    教育技术学原理

    课程名称 : 教育技术学原理 (The Principle of Educational Technology) 1. 教学目的和要求 教育技术学原理是本专业研究生的必修专业基础课程,教学目的是培养学生了解信息......

    电气类专业DSP原理及应用教学模式探索

    电气类专业DSP原理及应用教学模式探索 摘 要:DSP原理及应用是电气类工程专业本科开设的一门专业基础课程,旨在培养本科学生掌握DSP软件编程和硬件系统设计的能力。分析了DSP原......

    DSP原理与应用教学方法研究与探索(精)

    82 2011年第14期 数字信号处理器 (Digital Signal Processor, 简称DSP 是伴随着 数字信号处理技术和集成电路微电子技术的高速发展应运而生的, 为数字信号处理算法的实现提......