单片机出租车计费系统和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 【单片机出租车计费系统和0—9999计数器的课程设计】是一个实践项目,旨在训练学生对单片机应用的理解和编程能力。在这个设计中,有两个主要的任务:255计数器和50000计数器的实现,以及一个出租车计费系统的构建。 **255计数器**的设计基于80C51单片机,利用其8位存储单元的特性,能够存储0到255的数值。计数器的实现方法是将数值存储在一个字节地址中,然后通过除法操作将其分配到三个数码管显示单元,分别显示“个”、“十”和“百”。程序使用定时器T0工作在方式2,通过中断来更新计数值,并在数码管上实时显示。在达到255时,计数器会自动清零并重新计数。 接着,**50000计数器**的设计则更为复杂,因为它需要处理更大的数值。为了实现这个功能,使用了多个字节单元来存储不同位的数值,如个位和十位数据存放在30H,百位和千位数据存放在31H,万位数据存放在32H。当某个位达到最大值时,会将该位清零并递增更高位的数值。同样,计满50000后,整个计数器会清零并重新开始计数。 **出租车计费系统**的构建是基于上述计数器概念的扩展。系统设定起步价为5元,2公里内不再增加费用。超过2公里后,每0.5公里收费0.8元。在8位数码管上,前3位显示当前里程数,后3位显示费用(以角、元、十元、百元的顺序)。系统需在行驶每500米时刷新计费信息。这个系统可能需要更复杂的程序逻辑来处理里程计算和费用累加。 在实际设计中,会涉及到中断服务程序、数码管显示驱动、定时器配置以及适当的延迟函数等技术。例如,中断服务程序用于处理定时器中断,更新计数值;数码管显示驱动程序则负责将计算结果转换为数码管可显示的形式;定时器配置用于设定计数频率;而延迟函数确保数码管的显示稳定。 这个课程设计项目不仅涵盖了单片机的基本操作,还涉及到了实际应用中的计数和计费算法,对学生的编程能力和工程思维有着显著的提升作用。
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![text/x-c](https://img-home.csdnimg.cn/images/20210720083646.png)
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/release/download_crawler_static/87505992/bg1.jpg)
![](https://csdnimg.cn/release/download_crawler_static/87505992/bg2.jpg)
![](https://csdnimg.cn/release/download_crawler_static/87505992/bg3.jpg)
剩余17页未读,继续阅读
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/5aae13958c82419c9c42cd3306ea6ab6_qq_43934844.jpg!1)
- 粉丝: 185
- 资源: 3万+
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
最新资源
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)