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

2019-06-30 10:48

中州大学毕业设计

POP PSW ;状态字恢复

POP ACC ;累加器恢复 RETI ;中断返回

;每转一圈时间计数处理程序,每圈时间放在68H—6BH单元中 INTEX1: PUSH ACC ;累加器堆栈保护 PUSH PSW ;状态字堆栈保护 CLR EX1 ;关外部中断1

JNB 00H,INTEX11 ;溢出标志为0转INTEX11

MOV TL1,#0FFH ;溢出时计时单元赋#0FFH(显示速度为零) MOV TH1,#0FFH

MOV 6CH,#0FFH MOV 6DH,#0FFH

INTEX11: MOV 68H,TL1 ;将时间计数值移入暂存单元68H-6BH MOV 69H,TH1 MOV 6AH,6CH MOV 6BH,6DH

CLR A ;清A

MOV TL1,A ;计数单元置零 MOV TH1,A

MOV 6CH,A MOV 6DH,A

CLR 00H ;清溢出标志

POP PSW ;状态字堆栈恢复 POP ACC ;累加器堆栈恢复 RETI ;中断返回 ;T1计数器中断服务程序。(计数器T1由外部中断1输入控制,当为高电平时计时开始)

INTT1: PUSH ACC ; 累加器堆栈保护 PUSH PSW ;状态字堆栈保护 INC 6CH ;6C计时单元加1

MOV A,6CH ;6C单元内容移入A JNZ INTT11 ;不为0,转INTT11 INC 6DH ;进位,6DH单元加1 MOV A,6DH ;移入A

JNZ INTT11 ;不为0,转INTT11

SETB 00H ;计时器溢出,置溢出标志位 INTT11: POP PSW ;状态字堆栈恢复 POP ACC ;累加器堆栈恢复

16

中州大学毕业设计

RETI ;中断返回

开始 关中断 现场保护 开中断 中断处理 关中断 现场恢复 开中断

中断返回 图 3.4 中断流程图

(4)里程、速度处理程序 里程处理程序

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

SSS: MOV 19H,#64H ;除数最高位赋值 MOV 18H,#00H ;除数赋值 MOV 17H,#00H ; 除数赋值 MOV 16H,#00H ; 除数赋值 MOV 11H,#00H ; 被除数赋值

17

中州大学毕业设计

MOV 12H,#00H ; 被除数赋值

MOV 13H,62H ; 被除数赋值 MOV 14H,61H ; 被除数赋值 MOV 15H,60H ; 被除数赋值

LCALL DIVST ;调除法程序 LCALL BCDST ; 跳到二进制转BCD码程序 MOV A,25H ;将25H内容移入A ANL A,#0FH ; 高四位为0 MOV 70H,A ; MOV A,25H ; SWAP A ; ANL A,#0FH ; MOV 71H,A ; MOV A,24H ; ANL A,#0FH ; MOV 72H,A ; MOV A,24H ; SWAP A ; ANL A,#0FH ; MOV 73H,A ;

RET

速度处理程序

移入70H

将25H内容移入A 交换高低字节 高四位为0 移入71H

将24H内容移入A 高四位为0 移入72H

将24H内容移入A 交换高低字节 高四位为0 移入73H 开始 点亮里程指示灯 将车圈数转换成里程 显示里程值 返回

3.5 里程处理程序流程图

18

图中州大学毕业设计

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

MOV 16H,6AH ;除数赋值 MOV 11H,#00H ;被除数赋值 MOV 12H,#00H ; MOV 13H,#36H ; MOV 14H,#0EEH ; MOV 15H,#80H ; LCALL DIVST ; MOV 14H,#00H ; LCALL BCDST ; MOV A,25H ; ANL A,#0FH ; MOV 70H,A ; MOV A,25H ; SWAP A ; ANL A,#0FH ; MOV 71H,A ; MOV 72H,#00H ;72H MOV 73H,#00H ;73H

RET ;被除数赋值 被除数赋值 被除数赋值 被除数赋值 调除法程序 舍去一位

跳到二进制转BCD码程序 以下将速度值放入显示单元 高四位为0 放入70H内 再取数

高低字节交换 高四位为0 放入71H内 为0 为0 子程序返回

19

中州大学毕业设计

开始 开速度指示灯 计算速度 N P3.0=1? Y 报警 显示速度 返回 图 3.6速度处理程序流程图

(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的显示。

;里程显示控制程序

DISPLAYS:SETB P1.0 ;点亮LED1

CLR P1.1 ;关闭速度指示灯

20


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

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

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

马上注册会员

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