数字转速表的设计

上传人:cl****1 文档编号:489985315 上传时间:2023-12-16 格式:DOC 页数:23 大小:272KB
返回 下载 相关 举报
数字转速表的设计_第1页
第1页 / 共23页
数字转速表的设计_第2页
第2页 / 共23页
数字转速表的设计_第3页
第3页 / 共23页
数字转速表的设计_第4页
第4页 / 共23页
数字转速表的设计_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《数字转速表的设计》由会员分享,可在线阅读,更多相关《数字转速表的设计(23页珍藏版)》请在金锄头文库上搜索。

1、数字转速表的设计一、概述随着科学技术特别是微型计算机技术的高速发展,单片微机技术也获得了飞速发展。目前,单片机已经在日常生活和控制领域等方面得到广泛的应用,它正为我国经济的快速发展发挥着举足轻重的作用。作为自动化专业的一名工科学生应该牢牢掌握这一重要技术。而课程设计这一环节是我们提高单片机应用能力的很好机会,也是我们学好这一课程的必经环节。通过课程设计可以进一步巩固我们前面所学理论知识,使我们对单片机理论知识有一个深刻的认识和全面的掌握。另外通过这一真正意义上的实践活动,我们可以从中发现自己不足之处并能够在自己的深思下和老师的指导下得到及时的解决。再次,它能使我们的应用能力和科技创新能力得到较

2、大的提高。本课程设计是单片机系统在测速方面的简单应用。目前单片机技术已经在电机转速等为控制对象的控制系统中得到了广泛的应用,而在这一控制过程中必须通过单片机来测量转速。基于此本课程设计利用89C51单片机及外围电路来设计一个数字转速表。通过测量转速所对应的方波脉冲来测量转速,其转速可以通过键盘输入给定,同时其具体数值也可以在LED上显示出来。l 设计要求1) 利用单片机组成一数字转速表。2) 电机转速由信号发生器的方波脉冲信号来模拟。3) 利用四位LED显示器显示:a. 当前转速 b. 给定转速 c.给定转速与当前转速的区别标志 d. 超速报警显示4) 利用小键盘实现: a. 显示选择 b.

3、给定转速的输入5) 测速范围为500rpm1500rpm。电机的正常转速为1000rpm。6) 检测对应关系为:1024个脉冲/转,采用周期为40ms。二、数字转速表方案为了确定其设计方案,首先必须构思好初步的设计思路。根据设计要求和实验仿真条件,初步的设计思路可以总结如下:1) 用信号发生器来产生周期为0.04ms0.2ms的方波脉冲信号。2) 当前转速与给定转速显示用4段LED数码管。3) 键盘采用矩阵式键盘,一共12个键,用2个控制键和10个数字键。4) 采样时间用定时/计数器0来实现。5) 用定时/计数器1来统计采样时间内的脉冲数,进而计算转速。6) 给定转速与当前转速的区别标志是在个

4、位加点显示,有点为给定转速。根据设计要求与设计思路,可以确定该系统的设计方案,图1为该系统设计的硬件电路设计框图。硬件主要由四部分组成,即脉冲源、单片机、小键盘、LED显示器。单片机采用89C51。考虑到实验室的条件,键盘采用2行6列的矩阵式键盘,2个控制键分别控制显示当前转速和给定输入的转速,10个数字键用来输入给定转速,行与列与P1口连接。LED显示采用静态串口显示,需用4个LED和4个74LS164移位寄存器。脉冲源用一个方波脉冲发生器,用来模拟对应的转速。脉冲源与单片机的T1相连。51/52单片机 脉冲源小键盘 LED图1 数字转速表硬件框图 键盘的设计也可以采用其它形式,如采用3行4

5、列。LED显示也可以采用动态显示。但综合考虑本设计还是采用如上方案。三、数字转速表硬件设计本设计需用到AT89C2051单片机、小键盘、LED显示器和74LS164移位寄存器等硬件,与其它设计相比其硬件设计相对简单,且在实验室也容易实现。小键盘用2行6列的矩阵式键盘,一共有12个键。LED和74LS164一起构成静态串口显示。硬件设计总图见附图A。下面对各部分硬件的设计进行简单的介绍。1、单片机最小系统根据初步设计方案的分析,设计这样的一个简单应用系统,可以选择带有EPROM的单片机,应用程序直接储存在片内,不用再外部扩展存储器,电路可以简化,AT89C51单片机的功能与MCS-51系列单片机

6、完全兼容,并且还有程序加密功能,物美价廉,经济适用,因此我们选择AT89C51,图2是89C51的图示。本设计需用到Vcc、END、RESET 、XTAL1和XTAL2、P3.0 /RXD、 P3.1 /TXD、P1口、T1引脚。下面对所用引脚进行简单介绍。Vcc:供电电压,GND:接地。P3.0/ RXD:串行输入口,P3.1 /TXD:串行输出口T1:定时/计数器1外部输入XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:反向振荡器的输出。RESET:复位输入。当振荡器复位器件时,要保持RESET脚两个机器周期的高电平。P1口:P1口是一个内部提供上拉电阻的8位双向I/

7、O口。图2 单片机最小系统l 时钟电路设计单片机工作时间的基准是由时钟电路提供的。在单片机的XTAL1和XTAL2两个引脚间接一只晶振及两只电容就构成了单片机的时钟电路,如上图所示,电路中电容器C2和C3对振荡频率有微调作用,通常的取值范围30+/-10pF;石英晶体选11.0592MHz。l 复位电路设计单片机的RESET引脚为主机提供一个外部复位信号输入端口。复位电路是高电平有效,高电平有效的持续时间应为两个周期以上。复位后,单片机内各部件恢复到初始状态,单片机从ROM的0000H开始执行程序。其电路图如图2所示,R1=1K, C1=22F。RESET按键选择开关。u 与其它硬件的连接RX

8、D/串行输入口与74LS164的A、B相连, TXD/串行输出口与74LS164的CLR相连。P1口与键盘相连。其中P1.0可P1.1作为输入与键盘行线相连,P1.2P1.7作为输出与键盘列线相连。2、小键盘接口电路设计根据设计要求与设计思路,并考虑到实际情况,小键盘采用2行6列的矩阵形式,可以组成12个键,其中2个控制键,分别用来控制显示当前转速和给定输入的转速。另外还有10个数字键,用来输入给定转速。可以按下图进行设计。图3 小键盘接口电路l 键盘说明如图3,P1.0和P1.1作为输入与行线相连,行线接电阻后与+5V电源连接。P1.2P1.7作为输出与列线相连,另一端悬空,为了防止多键同时

9、按下使输出口短路,在每一列可以串联一个二极管。行与列之间的交叉点就放置按键,按键的编号如图3所示,其中A、B为控制键,A键控制当前转速在LED上显示,B键控制给定转速在LED上显示,其余为数字键,其排列顺序如图。按键未按下时行与列没有连接,当且仅当按键按下时行与列相连,此时按键才起作用。l 键盘的工作原理从图3可以看出,行线与电阻串联后接+5V的电源,当没有按键按下时,P1.0和P1.1的输入为高电平,即单片机检测到P1.0和P1.1的电平为高电平。因此,为了使按键起作用,P1.2P1.7的输出为低电平,当任意一个按键按下时,P1.0或P1.1的输入为低电平。这样为了检测X行Y列的按键是否按下

10、时,可以在Y列输入低电平,其余为高电平,然后检测X行输入的电平,若为高电平说明按键没有按下,若为低电平则有按键按下。3、LED显示接口电路设计根据设计要求可知,系统需要显示4位数字,因此需用到4个LED。考虑到显示的数字需要移位以及实验室的条件,本系统采用串口静态显示。串口静态显示需用到4个移位寄存器,这里采用4个74LS164。其硬件图如下:图4 LED显示接口电路l 说明如图4所示,四个LED是8段共阴极数码管,它们的端口9接地;LED的a,b,c,d,e,f,g,dp接限流电阻后分别与74LS164的QA,QB,QC,QD,QE,QF,QG,QH相连;编号为1的74LS164的端口A、B

11、连在一起并与单片机的RXD相连,其余三个74LS164的A、B端口也连在一起并与前一个QH端口相连;四个74LS164的端口CLK连在一起并与单片机的TXD相连,与+5V电源相连。 四个LED的主要功能是用来显示四位转速数字;74LS164的主要功能是在脉冲的作用下移位,并具有锁存作用。l 工作原理图4与单片机连在一起构成静态串口显示,当单片机执行指令MOV SBUF,A时单片机开始通过串行输入口RXD向74LS164移位寄存器传送一个字节的数据,与此同时前一个移位寄存器向后移位寄存器也传送它之前寄存的一个字节数据。因为LED与移位寄存器是对应相连的,因此LED会根据74LS164寄存器中的值

12、作出对应的显示。移位寄存器接收数据是单片机通过TXD向74LS164的CLK发送脉冲所致,脉冲的频率直接影响发送数据的速度。四、数字转速表软件设计软件设计是课程设计的一个重要组成部分,软件的设计成功与否直接影响系统的功能。因此,软件的设计是一个非常严密的过程。根据设计要求和设计方案可知,本系统是通过测量脉冲并根据所给关系来计算转速并在LED上显示,LED的显示是通过键盘来控制,为了实现这些功能,可确定下面的设计方案。l 软件设计简介根据要求,每按下按键就有相应的显示,故在主程序中设计键盘循环扫描程序。另外测速的采样周期是40ms,可以通过设计定时器中断子程序来定时40ms,并在这40ms内通过

13、设计计数器程序来计算脉冲个数。此外,还需设计相应的子程序。l 系统资源分配为了方便编写程序,先对系统的资源分配加以说明。1) 定时器:定时器0用作采样周期定时,按方式1工作,每隔40ms溢出中断一次。故初值定为6FFEH。2) 计时器:计时器1用作在40ms的时间内统计脉冲个数。不中断并由软件控制。3) 片内RAM的分配与定义表1所示表1 片内RAM的分配与定义地 址功能名称初始化40H-43H显示当前转速缓冲区(个位在前)GW1、SW1、BW1、QW100H 44H-47H显示给定转速缓冲区(个位在前)GW2、SW2、BW2、QW200H48H-49H40ms内所测脉冲寄存区(低位在前)DS

14、L、DSH00H50H-52H当前转速BCD码寄存区(低位在前)BCD1、BCD2、BCD3、BCD400H55H-7FH堆栈区u 软件流程根据上述工作流程,软件设计可分为以下几个功能模块:1) 主程序:初始化与键盘循环扫描等2) 计时:为定时器0中断服务子程序,完成对应转速的计算和判断是否报警等。3) 显示:显示1完成当前转速4位静态显示;显示2完成给定转速4位静态显示。4) 报警显示子程序:实现4个8的静态显示。5) 其它辅助功能子程序:如乘除法运算子程序,两字节转换为三字节BCD码子程序,两个延时子程序。下面对各功能模块进行介绍1、主程序l 主程序功能分析主程序首先必须完成串行口设置、指

15、针设置、中断设置、定时计数器工作方式及初始值设置等。其次,进行寄存区初始化设置和调用LED1子程序。再次,开中断并开始扫描数字键和控制键等。键盘的扫描是不断循环进行的。当有键按下时就会执行它要实现某一功能的程序,为了凸显这一过程,画出主程序流程图如图5。l 主程序说明串口方式采用方式0;中断允许寄存器设为82H,即允许T0和CPU中断;T1设为方式0,初值为0;T0设为方式0,且初值为6FFEH,因为需要定时40ms,可根据下面的表达式求出初值,其中时钟频率为11.0592MHz,一个周期的时间为1.085S。 R2的值表示接连按数字键的次数,在扫描数字键前设置R2=1。当确定有数字键按下且R2的小于4时,根据R2的值执行完相应程序后返回到开始数字键扫描处。当确定R2=4或有控制键按下时,在执行完对应程序后返回到设置R2=1程序处。另外,键盘的扫描是依次循环进行的。开始串行口、指针、中断方式设置定时计数器、数据缓冲区初始化调用LED1、开中断设置连续按数字键次数R2=1是数字键?是控制键?N判R2=4 ?执行数字键相应程

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号