电动自行车速度里程表设计论文

2026/4/23 5:34:58

4 自行车的速度里程表软件程序设计 外中断0服务程序用于对单片机P3.2口输入的圈脉冲进行计数,为十六进制计数器。60H为低位,62H为高位。每次计数一次后,对里程数据进行一次存储操作。当车轮每转一圈,通过霍尔元件将脉冲数输入单片机内,通过计数器计出脉冲数,再用乘法子程序算出里程数。里程处理子程序流程图如图4.3所示。

开始 点亮里程指示灯 将车圈数转换成里程 显示里程值 返回 图4.3 里程处理子程序流程图

2.速度计算子程序

外中断1服务程序用于处理轮子转动一圈后的计时数据。当标志位(00H)为1时,计数溢出,放入最大时间值(为#0FFH);当标志位为0时,将计数单元(TL1、TH1、6CH、6DH)的值放入68H~6BH单元。定时器计出每转一圈所用的时间,用自行车车轮的周长除以时间就得出自行车的速度。

21

开始 开速度指示灯 计算速度 N 是否超速? Y 报警 显示速度 返回

图4.4 速度处理子程序流程图

4.5 显示子程序的设计

采用动态扫描显示接口电路,动态显示接口电路是把所有显示器的8个笔划段a-h同名端连在一起,而每一个显示器的公共极COM各自独立地受I/O线控制。CPU向字段输出口送出字型码时,所有显示器接收到相同的字型码,但究竟是哪个显示器亮,则取决于COM端。可以采用分时的方法,轮流控制各个显示器的COM端,使各个显示器轮流点亮。在轮流点亮扫描过程中,每位显示器的点亮时间是极为短暂的(约1ms),由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位显示器并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感。

本设计P2.0、P2.1、P2.2、P2.3信号一起组成位选通的位选信号,P0.0~P0.7信号一起组成段码选通的段选信号,通过软件编程,先把所要显示的数据放入存储单元,然后把数据送入段选通对应的地址,再选通某一个LED,逐步完成四个LED的显示。

22

4 自行车的速度里程表软件程序设计 开始 显示单元首址 取显示数据 求下一位位选码 取段码表首址 修改显示单元地送段码到P0口 送位选到P2口 N 调用延时 4位显示结束 Y 返回

图4.5 显示子程序流程图

23

5 系统调试与分析

5.1 系统仿真调试

PROTEUS系统仿真平台与开发平台是由英国Labcenter公司开发的,是目前世界上最完整的系统设计与仿真平台之一。PROTEUS可以实现数字电路、模拟电路及微控制系统与外设的混合电路系统的电路仿真、系统协同仿真和PCB设计等全部功能。PROTEUS软件能够对各种处理器进行实时仿真、调试与测试的EDA工具,真正实现了在没有目标原形时就可以对系统进行调试与验证。

在构思好电路原理图和编好程序之后就要对其进行系统仿真,原理图的具体设计流程如图5.1所示。

当完成原理图布线后,利用PROTEUS ISIS编辑环境所提供的电器规则检查命令对设计进行检查,并根据系统提供的错误检查报告修改原理图。直到通过电器规则检查为止。

单片机系统的仿真是PROTEUS VSM的一大特色,同时,本仿真系统将源代码的编辑和编译整合到同一设计环境中,这样使得用户可以在设计中直接编辑代码,并且很容易地查看到用户对源程序修改后对仿真结果的影响。

源代码通过编译无误后,就可以进行仿真,在仿真过程中不断完善电路和程序的功能最后达到本次设计的目的。

5.2 调试故障及原因分析

在软件仿真过程中遇到了一些问题,具体故障和解决方法如下: 1、数码管不显示

本次设计的电路数码管采用共阴极接法,在仿真时错用共阳极数码管,导致数码管不显示。

2、P0口显示高阻态

正常情况下P0口输出应为高(红色)低(蓝色)互换,但在实际情况下P0口出现了高阻态(灰色),经翻阅资料查得P0口做I/O口是应接上拉电阻。在加上上拉电阻后,P0口输出正常。

24


电动自行车速度里程表设计论文.doc 将本文的Word文档下载到电脑
搜索更多关于: 电动自行车速度里程表设计论文 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219