DSP课程设计报告讲解
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
JIU JIANG UNIVERSITY
DSP应用课程设计报告
题目利用按键任意输入一个数值控制的转动角度
院系电子工程学院
专业电子信息工程
姓名
班级 1211 学号 35 日期 2015.5.22
- I -
内容提要
步进电机作为一种电脉冲—角位移的转换元件,由于具有价格低廉、易于控制、无积累误差和计算机接口方便等优点,在机械、仪表、工业控制等领域中获得了广泛的应用。通过DSP 对步进电机的控制可以实现系统实时、精确、高效、安全的设计要求,从而实现了自动化生产过程。作为重要部件的DSP是否实现控制要求是应用系统能否可靠工作的关键。
许多研究机构和电机生产厂家对于用单片机和用功率器件来设计步进电机驱动系统作了大量的研究,如把MCS-51系列的8031单片机、美国Microchip公司的PIC系列的PIC16C5X、各类PLC和VMOS管等功率器件作为控制系统都是比较成熟的。这些方面的资料和经验对于将更高速的DSP器件用在驱动系统上都是很有帮助的。现在流行的方法是将一系列外围设备如数模转换器(A/D)、脉宽调制发生器(PWM)和数字信号处理器(DSP)内核集成在一起,就获得一个强大又非常经济的电机控制专用的的DSP。许多厂家开发出了电机专用的DSP器件和支持各种通用算法的模拟软件。不仅芯片的运算速度越来越快,且软件中集成和固化在硬件中的算法模块越来越多,使得实现各种功能和进行电机性能研究变得现实和容易,能够实现更加理想的控制要求,随着对步进电机的研究更加深入与芯片价格的降低和功能的增加以及随着半导体工艺,尤其是高密度CMOS工艺的发展和进步,芯片的价格日益下降,而性能却不断提高,软件和开发工具越来越多,越来越好,应用范围日益广泛。DSP作为一种高速处理器件在驱动系统中的应用也会更加广泛和普及,研究DSP在控制领域中的应用也有着重大现实意义。
目录
一课程设计要求 (4)
二总体方案 (5)
三硬件系统设计 (6)
四软件系统设计 (10)
五系统调试及结果分析 (34)
六总结 (34)
- III -
一课程设计要求
设计要求:
一、利用开发板上的3*3的矩阵键盘的S1~S6的6个按键实现输入1~360之间任意给定的一个整数,用4位数码管依序显示输入的整数。
二、按键S7表示“退格”键。按下此键:若数码管当前显示的数值是两位及以上的数时,删除所显示数据最后的一位;若当前显示的数是一位数时,则显示数据变成0。
三、按键S8表示“+/-”符号键。按下此键,改变显示数据的符号:若当前显示的数值是正数时,则在显示的数前加“-”号;若当前显示的数是负数时,则去掉显示的数前的“-”号。
四、按键S9代表“确认”。按下此键,步进电机根据数码管显示数值进行相应的动作。规则如下:
1、如果数码管显示的是正数,则步进电机顺时针旋转显示数字的角度。如:数码管显示125,则步进电机顺时针转动至与起始位置成125度的位置停下。步进电机转动完成后,蜂鸣器“嘀-嘀-嘀”响三声。
2、如果数码管显示的是负数,则步进电机逆时针旋转显示数字的角度。如:数码管显示-125,则步进电机逆时针转动至与起始位置成125度的位置停下。步进电机转动完成后,蜂鸣器“嘀-嘀-嘀”响三声。
3、步进电机的转动角度和所设定的角度的误差控制在15度以内,如果误差超过15度,可以利用按键输入一个数值让步进电机再转动一次进行角度修正。但修正之后的误差要控制在8度以内。
4
二总体方案
按照设计要求可以把设计分为4个部分。首先是对按键电路的设计、数码管电路的设计、步进电机的设计、蜂鸣器响应的设计。下面分别介绍这4个部分的详细方案。
按键电路:采用3*3的键盘。S1键为数码管数值+1,S2键为数码管数值+10,S3键为数码管数值+100,S4键为数码管数值-1,S5键为数码管数值-10,S6键为数码管数值-100,S7为退格键,S8为负号键,S9为确定键。
数码管显示电路:采用共阳极四位七段数码管。由按键控制显示值,显示值为(0~正负360)。
步进电机:由按键S9控制。数码管显示的数值即为电机需要转动的角度,按键按下S9电机转动。按键S8控制电机正转(正数)或反转(负数)电机所转的角度计算过程:。蜂鸣器:步进电机转完,蜂鸣器响3声。
三硬件系统设计
本设计用到了DSPF28335开发板上的数码管、3*3按键、蜂鸣器还有电机。
1.数码管
本开发板上的数码管采用的是共阳极四位七段数码管。每个数码管内部共有12个引脚,分别是内部四个数码管共用a~dp这8根数据线(也称段选线)和四个数码管的四个公共端SEG1~SEG4(也称位选线)。
7段数码管是指数码管里有7个小LED发光二极管,通过控制不同的LED的亮灭来显示出不同的字形。除了7段式以外常用的还有8段式,8段比7段多了一个小数点,其他基本相同。一个7段或8段数码管称为一位,多个数码管并列在一起可构成多位数码管,如本开发板是4个数码管并在一起,所以叫4位数码管。
图3 数码管控制电路
3.按键
6
1.3*3矩阵键盘的工作原理和扫描确认方式
当键盘中按键数量较多时,为了减少对I/O口的占用,通常将按键排列成矩阵形式,也称为行列键盘。矩阵式键盘接口如图4所示,它由行线和列线组成,按键位于行、列的交叉点上。当按键按下时,其交点的行线和列线接通,相应的行线或列线的电平发生变化,DSP通过检测行或列线上的电平变化可以确定哪个按键被按下。
图4 F28335键盘接口图
在矩阵键盘的软件接口程序中,经常使用的按键识别方法有行列扫描法和线反转法,本项目采用列扫描法对矩阵键盘进行判别。图1中GPIO53、GPIO52、GPIO51为3根行线,作为键盘的输入口(工作于输入方式);GPIO50、GPIO49、GPIO48为3根列线,作为输出口(工作于输出方式),由DSP控制其输出的电平值。按键识别的过程如下。
1)将全部列线GPIO50、GPIO49、GPIO48置低电平输出,然后读GPIO53、GPIO52、GPIO51三根输入行线中有无低电平出现。只要有低电平出现,则说明有按键按下(实际编程时,还要考虑按键的消抖);如果读到的电平都是高电平,则表示无按键按下。