单片机数字转速表设计2.docVIP

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机数字式转速表设计 一、设计方案 1 基本原理 本次课程设计用STC89C52作为主控器组成一个转速表。电机转速采用光电脉冲传感器来测量,通过设置定时器/计数器T0为1S,设置定时器/计数器T1为计数器对光电传感器传过来的脉冲进行计数,电动机测速采用测周法,即每旋转一周产生一个脉冲,则设在1s内测量的脉冲个数为n,故测到转速n就是脉冲频率,再乘以60就是电动机的转速,单位为r/min。在此期间定时1s,在1s内允许中断,每中断一次,软件计数器加1,1s后,关闭中断,则软件计数器即为1s内的脉冲数,通过计数一定时间内通过定时器的脉冲数通过软硬件结合工作即可测出电机的转速。 2 设计思路 为了确定其设计方案,首先必须构思好初步的设计思路。根据设计要求和实验仿真条件,初步的设计思路可以总结如下: (1) 当前转速与电动机的状态显示用4段LED数码管。 (2) 键盘采用独立式键盘,需要3个键。 (3) 采样时间用定时/计数器0来实现。 (4) 用定时/计数器1来统计采样时间内的脉冲数,进而计算转速。 3 设计内容 根据设计要求和设计思路,可以确定该系统的设计方案,图1为该系统设计的硬件电路设计框图。硬件主要由三部分组成,即单片机、键盘、LED显示器。单片机采用STC89C52。要求测量的脉冲直接用另一个单片机产生提供。 在单片机中,定时功能既可以由硬件(定时/记数器)实现,也可通过软件定时实现。硬件定时是利用单片机内定时器定时,启动以后定时器可与CPU并行工作,不占用CPU时间,CPU有较高的工作效率。采用硬件定时和软件定时并用的方式,即用T0溢出中断功能实现50ms定时,通过软件延时程序实现1s定时。定时器的TMOD用于设置定时器/计数器的工作方式0~3,并确定用于定时还是用于计数。TCON主要功能是为定时器在溢出时设定标志位,并控制定时器的运行或停止等。硬件电路设计如图1所示。 (4设计指标 最大转速:9999转/分;转速误差:+-0.1转。 图1 硬件电路设计 二、 硬件电路设计 1按键设计电路图 对于按键电路的设计可以有2种方式:一种方式是直接按键设计,也称独立按键,这种设计电路适用于按键较少的控制,具有按键电路简单,编程方便等优点;另一种方式是矩阵式键盘的设计,它适用于对控制按键较多的电路控制, 占用较少的I/O接口,但是按键电路复杂,编程比较复杂。本课题总共需要3按键,所以采用独立按键设计。设计图如2:由上到下的按键分别是复位、停止、启动。 图2. 按键电路 2 显示电路设计图 本课题所采用得是由LED(数码管)作为显示电路,用以显示由单片机所接收的脉冲转换来的BCD码,以及开始测速时的各种状态。硬件电路连接是单片机P0.0~P0.7接数码管的由A~G、DP 8个各管脚,P2.0~P2.3接数码管的控制端W4、W3、W2、W1采用共阳极连接的方法连接图如图3所示。 图3显示电路 3脉冲产生电路设计图 在实际做试验是由另一块单片机产生脉冲,在本次设计中我让另一块单片机输入1Hz频率的脉冲,并把脉冲接到现实的单片机的P3.5口进行计数。 图4 脉冲电路 三、 软件设计 1主程序流程及说明 本次设计用T0做定时器定时时间为50ms 、T1作计数器,都设置为工作方式一。在主程序钟通过先重装初值,然后再检测按键,根据按键的状态和定时器的状态调用相应的子程序。程序流程如图5所示 图5主程序流程图 2中断服务子程序 当定时器的50MS的定时时间到时,假如计数值大于20次就改变定时器的状态位并清定时器的计数值。 图6中断程序流程图 3键盘扫描程序 数字转速表的键盘操作应具有3个功能,即:启动、停止、复位。本次采用的是直接连接的独立式按键,在键盘扫描过程中必须解决以下问题:1、是否有键按下;2、是哪一个键按下;3是不是有抖动;4、按键是不是松开。故在程序应该注意以上问题,不然会产生问题,不能正确的对按键进行识别。图7为键盘流程图: 图7按键流程图 四、 系统调试及软件仿真 1 程序调试 试验所涉及的2个软件Keil uVsion2和proteus,以下是仿真步骤。 程序调试部分:uVsion2先新建一个工程,选择芯片为AT89C52然后点击是,然后弹出是否加入标准启动文件,点击否,再新建一个文件,保存为“文件名.C”。然后点开工程窗口的Target右键单击出现弹出菜单,选择添加文件到工程,选到刚才新建的文件然后点击OK,输入程序,点击工程选择,选中Output中的Creat Hex File,然后编译,连接生成Hex文件,有错误修改后再编译链接。当编译结果中没出现错误时证明该程序已不存在语法错误。是否能完成课题所要求的功能则需要进行仿真。 仿真部分:运行pro

文档评论(0)

考试资料文库 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档