单片机出租车计价器课程设计报告书_第1页
单片机出租车计价器课程设计报告书_第2页
单片机出租车计价器课程设计报告书_第3页
单片机出租车计价器课程设计报告书_第4页
单片机出租车计价器课程设计报告书_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、嵌入式系统基础课程说明书 设计题目:出租车计价器学院:太原理工大学现代科技学院班级:电子信息姓名: 学号:一、设计题目:出租车计价器二、设计思路:如今单片机由于其体积小,性能完善,所以广泛应用于各个行业中。在出租车上,计价器便采用了单片机的应用技术,采用一系列的外部设备将出租车行驶以及停车等各个状态输入单片机,通过程序加以运算控制,再输出显示以及打印等。我们试着用所学的知识,设计并模拟出租车计价器的工作方式,通过实践来掌握应用设备的工作原理。三、设计任务l 出租车计价器需要的主要外部设备有公里计数器,以及显示、定时装置,通过线路连接构成一个完整的系统。l 公里计数器设想:利用光电或者霍尔效应原

2、理对车轮转过360角位移产生一个脉冲信号送给单片机作为一定距离的计数值。l 显示器:用LED显示,动态扫描显示,不断输出即时价格已及时间。l 定时装置(本设计中未引入):记录在停车或某些情况下的时间,用于辅助计价。四、里程计数器的原理(光电式)在与车轴同步的轴上装有一隔光盘,上仅有以窄缝可以通光。在隔光盘两侧分别装有与车体固定的光源和感光元件。当隔光盘随轴转动时,光源发出的光被隔光盘隔离,只有在窄缝处感光元件接收到光信号,对后续电路产生一个脉冲。这就是对里程转换为计数值的基本原理。其产生的脉冲信号则作为单片机计数器的输入信号,当单片机中计数器计到某一数量即为车行驶一公里,并对价格进行增加。在没

3、有实际对这样计数装置试用,只能对其原理进行分析,在之下的程序设计中只取其脉冲信号作为单片机输入信号(P3.4)。五、LED显示电路对设计总体分析下,只需对其价格进行显示,选用四个LED数码管分别显示价格的百位、十位、个位以及十分位(单位:元)。显示方式采用动态扫描的方式,数据输出为P0口,位选为P2口,共阴极(如图)。六、计价器的计价要求l 计价方式:起价(两公里)白天8元,晚上8.6元;由一开关进行选择。每公里1.5元。l 转数与公里数:汽车轮胎周长近似为1.5米,故一百米需要转过67圈,计67个数产生一个溢出中断。七、电路原理图及引脚P0.7-P0.0数码管输出数据P2.7-P2.4数码管

4、位选P1.0显示小数点(长亮)P1.2计价器工作开关P1.3白天/夜间切换P3.4计数脉冲输入八、源程序ORG0000H;起始地址AJMPSTARTORG001BH ;计数中断地址LJMPCNT1ORG0030H;主程序地址START:MOVPSW,#00HMOVIE,#88H;IE=BMOVTMOD,#60H;TMOD=B,T1工作方式2MOVTH1,#0BDH;自动重装MOVTL1,#0BDH;计67个数SETBTR1;计数器启动CLRP1.0;点亮小数点dpMOVR4,#0FFH;置数-1MOVR0,#20H;指向数据区首地址MOVR1,#04H;数字个数LP1:MOVR0,#00H;把

5、00放入显示数据区INCR0;指针加一DJNZR1,LP1;继续置数OFF:SETBP1.2JNBP1.2,ON;计价器开始跳转至ONACALLDISP;调用显示子程序AJMPOFFON:SETBP1.3JBP1.3,DAY;判断白天or夜间行车NIGHT:MOVR2,#00H;价格后两位压缩BCD码MOVR3,#01H;价格高两位压缩BCD码MOV21H,#01H;显示数据区放入起价BCD码CALLDISP;显示夜间起价AJMPLP2DAY:MOVR2,#80H;价格后两位压缩BCD码MOVR3,#00H;价格高两位压缩BCD码MOV22H,#08H;显示数据区放入起价BCD码LP2:CAL

6、LDISP;显示白天起价AJMPLP2CNT1: MOV35H,R5MOV36H,R6MOV32H,R0MOV31H,AMOV30H,R4;保护中断前寄存器内容CJNER4,#00H,INCC;两公里内计数值加1CLP0:MOVA,R2ADDA,#01H;后两位计价加一DAA;十进制调整MOVR2,AMOVA,R3ADDCA,#00H;前两位计价加进位DAA;十进制调整MOVR3,ACLP2:MOVA,R2MOVB,#10HDIVAB;将压缩BCD码拆成BCD码MOV23H,BMOV22H,A;按高低位存入显示数据区MOVA,R3MOVB,#10HDIVAB;将压缩BCD码拆成BCD码MOV2

7、1H,BMOV20H,A;按高低位存入显示数据区CALLDISP;显示价格AJMPRETCINCC:INCR4;两公里内计数器加一RETC:MOVA,31HMOVR0,32HMOVR5,35HMOVR6,36H;恢复中断前数据内容RETI;中断结束DISP:MOVR5,#04H;显示子程序,显示个数MOVR0,#20H;指向数据区首地址MOVR6,#80H;位选MOVDPTR,#TAB;指针指向显示列表DLP0:MOVA,R0MOVCA,A+DPTR;取出对应的显示代码MOVP0,A;输出数据MOVA,R6MOVP2,A;输出位选RRA;右移位选MOVR6,AINCR0;指向下一地址DJNZR

8、5,DLP0;循环RET;结束TAB:DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,DB7FH,67H;显示代码列表END九、流程图N开始开始计价昼夜选择显示零显示零Y显示夜间起价显示白天起价夜昼显示价格主程序流程图T1中断够67次NYR4=0 ?NYR4+1价格寄存器加一调整BCD码放入数据显示区返回中断程序流程图十、调试利用KeilC51软件对其进行编译、仿真,得出比较满意的效果。由于没有实际电路板,在调试过程中,利用显示数据存储区“20H,21H,22H,23H”对其要求显示价格进行观察,能够看到其中价格随着计数器中断在变动着,并且逢十进一,比较理想地显示了价格。十

9、一、总结通过这次课程设计,我对单片机的工作原理有了更深一步的了解,对于中断、定时/计数器的工作方式更加明确,并且在应用上掌握了不少方法。在通过与同学们交流中,也发现不少问题,并且及时的做出相应的更改,还有一些应用巧妙的方法,这些使我对单片机技术能更灵活的应用。在我的课程设计中,当时发现的问题就是中断调用时,对现场的保护问题,由于寄存器是共用的,中断时间不确定,所以必须中断时对现场进行保护,不能让中断中的数据覆盖原来的数据。另外,由于时间以及技术的缺乏,设计程序中没有加入定时的程序停车计时计价,这里面也存在这许许多多的问题,比如停车是用中断判断还是扫描判断等。这些进一步的探究我将在以后的不断学习中进行该善。十二、参考文献1杨恢先.单片机原理及应用M.长沙:国防科技大学出版社,2003.2肖鹏,陈伟民.一种新型多功能出租车计价方案设计J.自动化与仪器仪表,2003,第 3期. 3何小艇.电力拖动自动控制系统电子系统设计M.杭州:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论