自行车行程速度毕业设计(5)

2019-06-30 10:48

中州大学毕业设计

SETB P3.7

LCALL SSS ;将圈数转为公里数 LCALL DISPLAY ;显示公里数据 LJMP START1 ;跳回START1 ;速度显示程序

DISPLAYV:CLR P1.0 ;关闭LED1(里程指示灯) SETB P1.1 ;点亮LED2(速度指示灯) CLR P3.7

LCALL VVV ;每圈时间换算为KM/H程序 MOV A,71H ;将十位数(BCD码)值植入A SUBB A,#04H ;与预定报警值比较 JNC WARING ;时速超过40时报警 SETB P3.1 ;关报警灯 V1: LCALL DISPLAY ;显亮一次 RET ;子程序返回 DISPLAY: MOV R1,#70H ;显示单元首址 MOV R2,#0FEH ;扫描字

PLAY: MOV A,R2 ;扫描字送入A MOV P2,A ;放到端口P2 MOV A,@R1 ;取显示数据

ANL A,#0FH ;高四位清0 MOV DPTR,#TAB ;取段码表首址

MOVC A,@A+DPTR ;查显示数据对应段码 MOV P0,A ;段码输出 LCALL DL1MS ;点亮1MS

INC R1 ;指向下一显示数据地址 MOV A,R2 ;取扫描字

JNB ACC.3,ENDOUT ;已扫描到第四位,转ENDOUT退出 RL A ;循环左移 MOV R2,A ;放回R2

AJMP PLAY ;转PLAY循环 ENDOUT: SETB P2.0 ;关扫描 SETB P2.1 ;关扫描 SETB P2.2 ;关扫描 SETB P2.3 ;关扫描 RET ;子程序返回 ;共阴极段码表

TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H

21

中州大学毕业设计

DB 7FH,6FH,77H,7CH,39H,5EH,79H,71H

DB 00H

开始 显示单元首址 取显示数据 求下一位位选码 取段码表首址 修改显示单元地送段码到P0口 送位选到P2口 N 调用延时 4位显示结束 Y 返回 图 3.5 显示程序流程图

(6)延时子程序

;1ms延时程序 利用循环实现延时 DL1MS: MOV R6,#14H DL1: MOV R7,#19H

DL2: DJNZ R7,DL2 ;循环19H次 DJNZ R6,DL1 ;循环14H次 RET

;出错闪烁利用延时255ms

22

中州大学毕业设计

DL5S: MOV R5,#0FFH

DL3: LCALL DL1MS ;调用1ms延时 DJNZ R5,DL3 ;循环255次 RET

三、调试

1.硬件调试

硬件调试时,我们首先检查了接线,对照电路原理图,确保准确无误。其次是检查各个焊点是否有虚焊的情况,检查无误后,接通经稳压后的5V电源。硬件的修改可在元器件参数方面调整,如电阻的阻值等。 2.软件调试

先用KEIL软件输入完整的程序,进行编译。

首先,新建一个项目选择AT89C51,新建一个文件,将程序输入,输完后保存,保存时需加后缀名.ASM。然后将文件添加到新建的工程下。进行检错和编译,窗口如图3.2所示。

图 3.1 KEIL编译窗口

编译无误后即可运行,运行时可从Peripherals中调出输出口P0—P3来观察输出情况。运行时窗口如图3.1所示。

23

中州大学毕业设计

图 3.2 KEIL运行窗口 17 接着再使用PROTEUS仿真软件进行仿真。首先新建一个文件,选择所需的元件并排列好,根据电路原理图进行布线。当完成原理图布线后,利用PROTEUS ISIS编辑环境所提供的电器规则检查命令对设计进行检查,并根据系统提供的错误检查报告修改原理图。直到通过电器规则检查为止。然后在KEIL中生成HEX文件,双击AT89C51芯片,将完整的程序灌入芯片,单击左下角的开始箭头即可开始模拟仿真。

在仿真过程中遇到过一些问题,针对这些问题做了些软件方面的调整。 刚开始仿真时,P0口是灰色的,数码管没有点亮。经检查是由于P0口内部没有上拉电阻,因此,必须另外加上,上拉电阻一段接P0口,另一端直接接到电源的正集。接上后数码管点亮,但显示的是乱码经过仔细的检查,发现了程序中的错误,硬件中选用的是共阴极数码管,而程序中错用了共阳极的段码表,从而造成了应该点亮的部分没亮,而不该点亮的部分反而亮了的错误情况。

24

中州大学毕业设计

18 四、操作说明

本设计为自行车里程计/速度计,实现了里程速度计的基本功能。

接通电源后,由于未选择车轮周长,蜂鸣器报警提示,同时LED灯D3闪烁,直到有键按下。当按下P1.2口所接开关SW2时选择车轮周长1,按下P1.3口所接开关SW3时选择车轮周长2,按下P1.6口所接开关SW4时选择车轮周长3,P1.7口所接开关SW5时选择车轮周长4,选择周长后,每按下开关SW6一次表示车轮转了一圈,此时数码管显示当前的里程值,此时若按下开关SW7则数码管显示当前的速度值,当超速时蜂鸣器报警。

(1)接通电源后,由于未选择车轮周长,蜂鸣器报警提示,红灯闪烁。

25


自行车行程速度毕业设计(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:奥姆斯特德与公园体系

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

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