出租车计程计价器的设计word文档Word格式.docx

上传人:b****4 文档编号:13605909 上传时间:2022-10-12 格式:DOCX 页数:9 大小:36.88KB
下载 相关 举报
出租车计程计价器的设计word文档Word格式.docx_第1页
第1页 / 共9页
出租车计程计价器的设计word文档Word格式.docx_第2页
第2页 / 共9页
出租车计程计价器的设计word文档Word格式.docx_第3页
第3页 / 共9页
出租车计程计价器的设计word文档Word格式.docx_第4页
第4页 / 共9页
出租车计程计价器的设计word文档Word格式.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

出租车计程计价器的设计word文档Word格式.docx

《出租车计程计价器的设计word文档Word格式.docx》由会员分享,可在线阅读,更多相关《出租车计程计价器的设计word文档Word格式.docx(9页珍藏版)》请在冰豆网上搜索。

出租车计程计价器的设计word文档Word格式.docx

另外用31H,32H来存储计价值JJ的压缩BCD码,高字节放在32H中(百元,十元),低字节放在31H中(元,角),开始计价时30H为0,32H中为1(10元)31H中为25(二元五角)。

调用BCDZH将BCD码转成非压缩BCD码在调用DISP显示函数驱动数码管显示。

④在T0中断中若S>

3km则调用BCDJ24即以后每千米加2.4元,在调用BCDZH和DISP显示路程和价钱。

注意30H~32H中对应的非压缩BCD码存放在40H~45H(40H存放一千米,41H存放十千米,42H存放角,43H存放元,44H存放十元,45H存放百元)。

⑤程序中还用T1定时器来检测是否处于停车状态,由晶振频率fosc=12MHz,T1定时为50ms,每过5S(100*0.1)检测一次TL0中的数据是否与上次相同,若相同则认为停车状态,直到检测了9次(9*5=45S)则就要加6角,之后再调用BCDZH和DISP驱动显示器,显示计价计程,又清零重新记录停车时间。

⑥此程序中比较特殊在于,T0每次中断恰好走过250m,及恰好也是调用BCDJ6,这就省略了一些计算步骤。

三·

硬件系统说明和电路图原理

+5v

K1

ckmot

四·

程序模块主要流程图和源程序及注释

程序流程图

开始,设置S,JJ存储单元

系统初始状态化,状态码清零,S,JJ设置初值,T0计数,T1定时,R7,R3,R4,R5设置初值

调用DISP,等待中断,T0,T1,

进入中断设计,子程序BCDZH,BCDJ6,T0INT,T!

INT,又循环调用DISP

中断子程序:

T!

INT,T0INT

中断返回

程序

 

源程序代码:

QDJEQU125;

起步价12.5元

GLJEQU24;

每公里价2.4元

SEQU30H;

路程压缩BCD码存放30H

JJDZJEQU31H;

计价值低字节存放在31H压缩BCD码,元,角

JJGZJEQU32H;

计价值高字节存放在32H压缩BCD码,百元,十元

SGWEQU40H;

路程个位非压缩BCD码,km

SSWEQU41H;

路程十位非压缩BCD码,10km

JJJEQU42H;

计价值角位,非压缩BCD码

JJYEQU43H;

计价值元位,非压缩BCD码

JJSYEQU44H;

计价值十元位,非压缩BCD码

JJBYEQU45H;

计价值百元位,非压缩BCD码

ORG0000H;

程序开始

LJMPMAIN

ORG000BH

LJMPT0INT

ORG001BH

LJMPT1INT

MAIN:

MOVSP,#60H

MOVDPTR,#5FFFH;

显示初始化

MOVA,#0DCH

MOVX@DPTR,A

LP:

MOVXA,@DPTR

JNBACC.7,LP

MOVA,#00H

MOVA,#34H

MOVTMOD,#16H;

T0计数,模式二,T1定时,模式一

MOVTH0,#83H;

T0计数初值,每计到125,中断一次

MOVTL0,#83H

MOVTH1,#3CH;

T1定时初值,每50ms,中断一次

MOVTL1,#0B0H

MOVR7,#00H;

T0中断的次数,4次则路程加1km

MOVR3,#83H;

用于存放每次TLTLO中数

MOVR4,#00H;

T1中断子程序中100次,则5s检测车是否停车状态

MOVR5,#00H;

T1中断子程序中90次,则停车45s,加6角

SETBEA;

开启cpu中断,T0,T1中断

SETBET1

SETBET0

SETBPT0;

T0中断优先级高

CLRP1.1;

无乘客L0亮灯

MOVSGW,#00H;

显示位清零

MOVSSW,#00H

MOVJJJ,#00H

MOVJJY,#00H

MOVJJSY,#00H

MOVJJBY,#00H

;

ACALLDISP

JBP3.3,$;

有乘客时,开始启动T0计数,T1定时,开关K1控制

SETBTR0

SETBTR1

有乘客时L0灭灯

MOVS,#00H;

路程初始值0km

MOVJJGZJ,#01H;

计价初始值12.5元

MOVJJDZJ,#25H

ACALLBCDZH;

调用BCD转换程序,成非压缩BCD码

LL:

ACALLDISP;

调用显示程序,并等待中断

LJMPLL

;

将压缩BCD码转换成非压缩BCD码子程序如下

BCDZH:

PUSHPSW

SETBRS0;

选用工作寄存器组0

MOVR0,#S;

S的转换

MOVR1,#SGW

LPB:

MOVA,@R0

MOVR2,A

ANLA,#0FH;

保留低四位

MOV@R1,A

INCR1

MOVA,R2

ANLA,#0F0H;

保留高四位,

SWAPA

INCR0;

计价值的转?

INCR1

CJNER0,#33H,LPB

CLRRS0;

选回工作寄存器组0

POPPSW

RET

T0中断子程序

T0INT:

INCR7

CJNER7,#04H,LPT0;

路程不满1km,S不加1,转到LPTO

MOVA,S;

S+1

ADDA,#01H

DAA

MOVS,A

R7复0

LPT0:

S是否大于3km

CLRC

SUBBA,#03H

JCFH0;

S<

3,转到FH0

MOVA,S

SUBBA,#6

JCL3

ACALLBCDJ12

LJMPFH0

L3:

ACALLBCDJ6;

由于每次计数125,中断一次,125*2=250m,即中断一次加0.6元

FH0:

调用bcd码转换成非压缩bcd码,驱动数码管显示

RETI

BCDJ6子程序,T0中断一次250m就加6角,使用压缩BCD码

BCDJ6:

MOVA,JJDZJ

ADDA,#06H

MOVJJDZJ,A

MOVA,JJGZJ

ADDCA,#00H

MOVJJGZJ,A

附加的

BCDJ12:

ADDA,#12

DAA

MOVJJDZJ,A

MOVA,JJGZJ

ADDCA,#0

MOVJJGZJ,A

RET

T1中断子程序

T1INT:

PUSHPSW

MOVTH1,#3CH

INCR4

CJNER4,#64H,LY;

未到5s,转到LY

R4复0

MOVA,TL0

CLRC

SUBBA,R3;

5s检测是否停车,

JNZLY2;

A=0,R3=TL0,A!

=0->

LY2

INCR5

CJNER5,#09H,LY2;

是否停了45s

R5复0

停车45s加6角

ACALLBCDZH

LY2:

MOVR3,TL0;

用于存放每次TL0的值

LY:

显示子程序

DISP:

MOVR3,#06H;

显示的位数

MOVA,#92H;

输出写显示RAM命令字

指向8279命令口

MOVX@DPTR,A;

起始地址为0单元,自动加1

MOVR1,#SGW;

要显示数据的存放单元首地址

TY11:

MOVA,@R1

MOVDPTR,#CODE1;

#CODE1为查表偏移量

MOVCA,@A+DPTR;

查表得到段码

MOVDPTR,#5EFFH;

指向8279数据口

写入显示RAM

DJNZR3,TY11

CODE1:

DB0C0H,0F9H,0A4H,0B0H,99H;

段码表(共阳极)

DB92H,82H,0F8H,80H,90H,88H

DB83H,0C6H,0A1H,86H,8EH,8CH

DB0C1H,89H,0C7H,0BFH,91H

DB00H,0FFH

END

五·

课程设计总结

这次单片机课程设计对于自己来说,收获很多。

通过这次包括汇编编程和对硬件的操作在内的,由自己动手实践的,在体提高自己编程能力方面和对单片机硬件操作能力方面都有一个很大的提高。

由开始选题然后找到相关参考书,试着编写程序,到最后逐步的修改,碰到问题找老师和同学帮助(如如何提供外部脉冲来源,单步调式,设置断点等),最后能够在实验箱实现,这过程中收获颇多。

总之,这次课程设计即有加深对课本知识了解,也加强了自己操作和编程能力。

六·

参考书目

【1】王琼,单片机原理及应用实验教程。

合肥:

合肥工业大学出版社,2005【2】王琼,单片机原理及应用。

合肥工业大学出版社,2008

【3】张大明,单片机控制实

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 书信模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1