首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 单元电路介绍 > 其它电路
用AT89S51单片机制作的多功能自行车速度里程表
来源:本站整理  作者:佚名  2011-02-14 20:58:17



  三、程序设计
  
  程序用C语言编写,由主程序、外部中断0服务程序、定时器110中断服务程序、延时子程序等模块组成。主程序由初始化、车轮直径判定和键盘处理三部分组成。车轮直径判定的依据是接在P1口低四位的跳线,跳线接地时表示低电平,不接时表示高电平。其取值与车轮直径、周长对应关系见附表。

  外部中断0服务程序由测量、计算、读数等组成。从P3.2口输入的脉冲信号作为外部中断0的中断请求信号,外部中断采用边沿触发方式。在测量速度时,由于车轮转动脉冲信号的频率很低,不适宜用计数的方法测量,故采用测脉冲周期的方法进行测量,用脉冲信号系统来控制计时信号,通过计时数计算出脉冲周期。车轮的周长除以周期可得到自行车的行驶速度:在测量行驶里程时,通过对脉冲信号个数的计数,用计数值乘以车轮的周长即可获得行驶里程。需要说明的是:测量脉冲信号周期和个数是同时进行的,我们要做的只是用按钮开关切换显示不同的量。为了避免使用浮点数,程序中的运算结果长度是以十米为单位的。数据读出时在第二位数后加小数点就换算成干米了。
  
  定时器T0中断服务程序由计时、动态扫描显示、自行车停车判断等组成。T0的中断定时时间为10ms.每中断一次计时变量n加1,因此n的单位为10ms。例如,自行车车轮转一周对应的n值为50。则对应的时间为0.5s,假如自行车的车轮直径为26英寸。可得自行车的速度为14.90km/h。如果n值达到500,即5秒钟,仍没有发生外部中断,即表示自行车没有前进,则n也被清零,速度显示为0。
  
  读数采用四位显示,定时器T0每中断一次显示一位数,因此四次中断就可以刷新一次数据。即40ms刷新一次数据。

  四、安装与调试
  
  安装前用编程器或下载线将HEX文件写入AT89S51。DS1~DS4使用共阳数码管,SPK用工作电压为6V的有源蜂鸣器。电源使用4节5号充电电池。
  
  使用前,根据车轮直径参照附表进行跳线,也可以不用跳线直接在电路板上用连线焊接。附图中对应的是26英寸的跳线设置。
  
  传感器的安装与调试是一个关键,把传感器安装在前轮的位置,把一小块永久磁铁固定在车轮辐条上UGN3020作防潮密封后固定在前叉上。使得车轮转动时磁铁从它的前面经过,应使两者相遇时间隔尽量小。安装时,要使磁铁的S极面向UGN3020的正面,判定磁铁极性方法是把磁铁的两个极分别靠近UGN3020的正面,当其③脚电平由高变低时即为正确的安装位置。传感器安装完成后,转动车轮,UGN3020③脚应有脉冲信号输出,否则说明两者的间隔偏大。应缩小距离,直至有脉冲信号输出为止。间隔一般为5mm左右。如果小于5mm仍无脉冲信号输出。说明磁铁的磁场强度偏小,应更换。
  
  调试结束后,把里程速度表安装在车把手上。打开电源开关S3,骑动自行车,这时数码管显示的是速度,按S1可调到需要的显示模式。

上一页  [1] [2] 

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:98,375.00000 毫秒