单片机出租车计费系统和0—9999计数器的课程设计.doc
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
一、设计任务: 1.1 外部脉冲自动计数,自动显示: 1.1.1 设计一个255计数器:0-255计数,计满后自动清0,重新计数(在数码管中显示)。 1.1.2 设计一个50000计数器:0-50000计数,计满后自动清0,重新计数(在数码管中显示) 。 1.2 设计一个出租车计费系统: 起步价为5元(2km以内),2km后,0.8元/0.5km;要求每500m刷新计费一次,在8位 数码管中,前3位显示数码管显示里程数,后3位数码管显示价钱(角,元,十元,百元) 。 二、各部分的详细设计 2.1 255计数器 设计原理和思路:80C51单片机中每个字节存储单元是8位的,每个字节可以存放从0 0000000—11111111,转化为10进制,就是0—255.所以本设计只需一个字节地址存放计数 器里的值,再通过除法将其分配到三个单元,通过数码管分别显示"个"、"十"、"百"。 2.1.1 流程图: 图1 255计数流程图 2.1.2 程序: ORG 0000H AJMP START ORG 0030H START: MOV TMOD,#06H ;置定时器T0工作方式2 MOV TH0,#00H MOV TL0,#00H SETB TR0 ;启动计数 MAIN: MOV 30H,TL0 ;把TL0的数值赋给30H单元 MOV A,30H MOV B,#100 DIV AB ;30H除以100 MOV 31H,A MOV A,B MOV B,#10 DIV AB MOV 32H,A MOV 33H,B LCALL DISPLAY ;调用显示 AJMP MAIN DISPLAY: MOV DPTR,#TAB MOV P1,#01H ;P1位选 MOV A,31H MOVC A,@A+DPTR MOV P2,A ;P2段选 LCALL DELAY ;延时 MOV P1,#02H MOV A,32H MOVC A,@A+DPTR MOV P2,A LCALL DELAY MOV P1,#04H MOV A,33H MOVC A,@A+DPTR MOV P2,A LCALL DELAY RET DELAY: MOV 50H,#10 MOV 51H,#40 XX: DJNZ 50H,xx YY: DJNZ 51H,YY RET TAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H 2.1.3 仿真效果图: 图2 255计数仿真图(一) 图3 255计数仿真图(二) 2.2 50000计数器 设计原理和思路:80C51单片机的一个字节单元只能存储0—255,50000的计数,是通 过分址寄存来实现的,个位和十位的数据用字节单元30H来存放,百位和千位的数据用字 节单元31H来存放,万位的数据用字节单元32H来存放,当30H单元计到99时,清零,同时 给31H加1,当31H单元计到99时,清零,同时给32H单元加1,到500000时,清零,重新计 数显示。 2.2.1 流程图: 图4 50000计数流程图 2.2.2 程序: ORG 0000H AJMP START ORG 000BH LJMP ZHONGDUAN ORG 0030H START: MOV TMOD,#06H ;开T0方式2 MOV TH0,#0FFH ;高位赋FF MOV TL0,#0FFH ;低位FF SETB EA SETB ET0 SETB TR0 MAIN: LCALL DISPLAY MOV A,30H CJNE A,#100,XIAOYU99X ;是否小于99,是则显示 MOV 30H,#0 ;大于99,则清零 INC 31H ;31H即百位加一 MOV A,31H CJNE A,#100,XIAOYU99Y MOV 31H,#0 INC 32H MOV A,32H CJNE A,#5,XIAOYU5 MOV 32H,#0 AJMP MAIN XIAOYU99X: MOV A,30H MOV B,#10 DIV AB MOV 50H,B MOV 51H,A AJMP MAIN XIAOYU99Y: MOV A,31H MOV B,#10 DIV AB MOV 52H,B MOV 53H,A AJMP MAIN XIAOYU5: MOV 54H,32H AJMP MAIN ZHONGDUAN: INC 30H RETI DISPLAY: MOV DPTR,#TAB MOV P1,#08H MOV A,54H MOVC A,@A+DPTR MOV P2,A LCALL DELAY MOV P1,#10H MOV A,53H MOVC A,@A+DPTR MOV P2,A LCALL DELAY MOV P1,#20H MO
剩余17页未读,继续阅读
- 粉丝: 167
- 资源: 3万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 珍藏多年的基于matlab实现潮流计算程序源代码集合,包含多个潮流计算程序.rar
- 使用FPGA实现串-并型乘法器
- 基于matlab实现针对基于双曲线定位的DV-Hop算法中误差误差出一种基于加权双曲线定位的DV-Hop改进算法.rar
- 基于matlab实现由遗传算法开发的整数规划,车辆调度问题.rar
- 电视家7.0(对电视配置要求高).apk
- 免费计算机毕业设计-基于JavaEE的医院病历管理系统设计与实现(包含论文+源码)
- 手机端 我的世界融合植物大战僵尸版.apk
- 植物大战僵尸 · 戴夫的老年生活 手机版.apk
- Runcraft · 我的世界跑酷游戏 手机端.apk
- pta题库答案c语言.docx