



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、沈阳航空航天大学课程设计报告课程设计名称:微机系统综合课程设计课程设计题目:出租车计价器的设计与实现院(系):计算机学院专业:计算机科学与技术班级:学号: 27姓名:程里指导教师:罗振说明:结论(优秀、良好、中等、及格、不及格)作为相关教环节考核必要依据;格式不符合要求;数据不实 , 不予通过。报告和电子数据必须作为实验现象重复的关键依据。学术诚信声明本人声明 :所呈交的报告(含电子版及数据文件)是我个人在导师指导下独立进行设计工作及取得的研究结果。尽我所知,除了文中特别加以标注或致谢中所罗列的内容以外,报告中不包含其他人己经发表或撰写过的研究结果,也不包含其它教育机构使用过的材料。与我一同工
2、作的同学对本研究所做的任何贡献均己在报告中做了明确的说明并表示了谢意。报告资料及实验数据若有不实之处, 本人愿意接受本教学环节 “不及格” 和“重修或重做”的评分结论并承担相关一切后果。本人签名:日期:年月日/ 38沈阳航空航天大学课程设计任务书课程设计名称微机系统综合课程设计专业计算机科学与技术学生姓名程里班级学号27题目名称出租车计价器的设计与实现2015 年 6月 292015 年7 月1日起至日止起止日期0课设内容和要求:(1 )学习现有出租车计价器的计费规则,至少定义白天和夜间两种计价方式;(2 )使用电位器代表出租车的油门输入,步进电机的转速代表出租车的行驶速度, 8 个 LED灯
3、用于显示油门的大小;(3 )在键盘上定义几个功能键,用于实现启动、停止、清零功能;(4 ) LCD显示打表时间、当前计价方式、实时里程数和总价数。参考资料:【1】张毅刚,刘杰 .MCS-51 单片机原理及应用【 M】. 哈尔滨工业大学出版社, 2008 【2】高锋 . 单片微型计算机原理与接口技术【 M】. 北京:科学出版社, 2007【3】胡汉才 . 单片机原理及其接口技术【M】. 北京:清华大学出版社,2004教研室审核意见:教研室主任签字:I/38指导教师(签名)年月日学生(签名)年月日II/38课程设计总结:经过这些天有关于出租车计价器的课程设计,使我对单片机的应用有了更深的了解。在课
4、程设计的过程中,还是碰到了许多的问题。比如,对于数码管动态扫描显示、数码管的闪烁和键盘的延时防抖的综合编程不能较好地解决;对于一些相关的应用软件没能熟练掌握。通过这几天晚上的苦想和反复调试,最终还是把问题解决了。通过这次课程设计,我最大的收获就是自己的动手能力和独立解决问题的能力得到了很大的提高,也充分体会到了自己设计东西的乐趣、学会查阅资料和对别人的东西融会变通的重要性,也明白了很多知识光靠趴在书本上学是学不到其中的精髓的,必须亲自去试着实践,亲自去经历才能对它们真正的掌握。最大的收获是更清晰了如何有条理的编程。第一个就是流程图,原来不以为然的事现在觉得非常的有必要。第二就是编程顺序,要写一
5、个功能很复杂的程序首先写那些自己可以很快完成的较简单的内容,比如调单价时的闪烁,那么就可以开始只写调一位单价, 然后再加入程序可以调两位单价, 再然后加入闪烁功能,这样既可以使编程变得更有条理,而且对心态也是很有帮助的。一步一步的完成相应的要求会使自己的心情倍感舒爽而不是一直未能达到要求时的迷茫。但是在我设计和调试的过程中,也发现了一些问题,譬如计价的金额位数有限,实际的里程可能会很远,会超出计价器的显示范围。计价器的设计还不够人性化,比如加上语音的提示功能,可能会更有生命力。本设计是对我所学知识的用在实践中一种考验与拓展,并培养我的独立思考、设计和创新能力、解决遇到问题的能力和团队合作能力,
6、以及我在走向工作岗位后能更好的发挥学以致用。 在碰到困难时不急不燥, 在自主解决的前提下,结合团队力量,解决问题并有所创新。在设计中学会了一些疑难问题的探讨和工作中的协调性,汲取知识的方式和途径。为今后的工作奠定了坚实的基础。在设计的整个过程中,使我学习到很多宝贵的知识。III / 38目录1引言 .01.1出租车计价器概述01.2计价器整体功能描述结构01.3各部分电路功能描述.12计价器硬件设计22.1系统的硬件构成及功能22.2MCS-51系列单片机内部结构及功能部件32.2.1MCS-51系列单片机的内部结构框图.32.2.2单片机外部引脚说明.42.2.3并行输入/输出接口.63系统
7、的软件设计9IV/383.1软件总体设计 .93.2系统主程序设计.113.3显示子程序服务程序.93.4按键服务程序.94 系统调试与测试结果分析.104.1系统调试 .104.1.1硬件调试 .104.1.2软件调试 .4.1.3软硬件联调.104.2电路图.11参考文献 . .15V/38附录(关键部分程序清单).19VI/381引言1.1出租车计价器概述计价器显示的营运金额是营运里程与价格的函数 (等候时间一般折算成一定比例的里程来计算) 。出租车计价器通过传感器与行驶车辆连接。出租汽车的实际里程通过传感器的脉冲信号在计价器里折算成一定的计价营运里程。目前市场上出租车计价器功能主要有具
8、有数据的复位功能、 白天 / 晚上转换功能、 数据输出功能、计时计价功能等等,但能够进行语音播报数据信息的出租车计价器还是比较少见的,针对这一点,我来设计一款多功能出租车计价器,在原有功能的基础上增加单价输出、单价调整、路程输出、显示当前的系统时间、语音播报数据信息等功能。1.2计价器整体功能描述结构设计出租车计价器方案并进行仿真,完成不同方式转换计价,显示路程、单价、总金额。1.3各部分电路功能描述1 不同情况具有不同的收费标准。(a) 前两公里(b) 后两公里2 具有数据的复位功能(a) 数据清零开关0/383 数据输出4 按键(a) 启动计时开关(b) 数据复位(清零)(c) 前两公里
9、/ 后两公里1/382 计价器硬件设计2.1系统的硬件构成及功能计价器的单片机控制方案图如图 1 单片机控制方案图所示。它由以下几个部件组成: 单片机 MCS-51、总金额及单价显示部件、键盘控制部件、里程计算单元、串中显示驱动电路等。利用单片机丰富的 IO端口,及其控制的灵活性, 实现基本的里程计价功能和价格调节、时钟显示功能。不但能实现所要求的功能而且能在很大的程度上扩展功能,而且还可以方便的对系统进行升级。总金单价键盘额里程计价MCS-51单片机2/38图 1单片机控制方案图2.2 MCS-51 系列单片机内部结构及功能部件2.2.1 MCS-51 系列单片机的内部结构框图分析图2, 并
10、按其功能部件划分可以看出,MCS-51 系列单片机是由 8 大部分组成的。图 3 为按功能划分的MCS-51系列单片机内部结构简化框图。这 8 大部分是:· 一个 8 位中央处理机CPU。· 128 个字节的片内数据存储器RAM。·4 KB 的片内程序只读存储器 ROM或 EPROM。·18 个特殊功能寄存器SFR。·4 个 8 位并行输入输出I/O 接口: P0 口、 P1 口、 P2口、 P3 口(共 32 线), 用于并行输入或输出数据。· 1 个串行 I/O 接口。·2 个 16 位定时器 / 计数器。·1
11、 个具有 5 个中断源,可编程为2 个优先级的中断系统。它可以接收外部中断申请,定时器 / 计数器中断申请和串行口中断申请。3/38图 2 MCS-51 系列单片机内部结构框图图 3 MCS-51 系列单片机内部结构简化框图2.2.2单片机外部引脚说明MCS-51系列单片机芯片均为 40 个引脚, HMOS工艺制造的芯片采用双列直插( DIP)方式封装, 其引脚示意及功能分类如图4/384 所示。 CMOS工艺制造的低功耗芯片也有采用方型封装的,但为 44 个引脚,其中 4 个引脚是不使用的。图 4 MCS 51 系列单片机引脚及总线结构(a)管脚图; (b)引脚功能分类( 1)主电源引脚 V
12、cc 和 VssVCC (40 脚):接 +5 V 电源正端;VSS(20 脚):接 +5 V 电源地端。( 2)外接晶体引脚 XTAL1和 XTAL2XTAL1(19 脚):接外部石英晶体的一端。 在单片机内部, 它是一个反相放大器的输入端, 这个放大器构成了片内振荡器。 当采用外部时钟时, 对于 HMOS单片机, 该引脚接地; 对于 CHMOS5/38单片机,该引脚作为外部振荡信号的输入端。XTAL2(18 脚):接外部晶体的另一端。在单片机内部,接至片内振荡器的反相放大器的输出端。当采用外部时钟时,对于 HMOS单片机, 该引脚作为外部振荡信号的输入端;对于 CHMOS芯片,该引脚悬空不
13、接。( 3)控制信号或与其它电源复用引脚。 控制信号或与其它电源复用引脚有:RST/VPD 、 ALE/ PROG 、 PSEN 和 EA/Vpp 等 4 种形式。A 、 RST/VPD(9 脚):RST即为 RESET, VPD 为备用电源,所以该引脚为单片机的上电复位或掉电保护端。B 、 ALE/ PROG (30脚 ) :当访问外部存储器时,ALE(允许地址锁存信号)以每机器周期两次的信号输出,用于锁存出现在P0 口的低 8 位地址。C、 PSEN (29 脚):片外程序存储器读选通信号输出端,低电平有效。D 、 EA /Vpp( 31 脚):EA为访问外部程序存储器控制信号,低电平有效
14、。(4) 输入 / 输出( I/O ):引脚 P0 口、 P1 口、 P2 口及 P3 口A、 P0 口( 39 脚 32 脚):P0.0 P0.7 统称为 P0 口。 P0 口是一个三态双向口,可作为地址 / 数据分时复用口,也可作为通用 I/O 接口。6/38B 、 P1 口(1 脚 8 脚):P1.0 P1.7 统称为 P1 口, 可作为准双向 I/O 接口使用。C 、 P2 口(21 脚 28 脚):P2.0 P2.7 统称为 P2 口, 一般可作为准双向I/O 接口。它具有通用I/O 接口或高 8 位地址总线输出两种功能 .D、 P3 口( 10 脚 17 脚):P3.0 P3.7
15、统称为 P3 口。 P3 口除了可作为通用准双向 I/O 接口外, 每 1 根线还具有第 2 功能。 ( 见图 5)图5 P3 口第 2功能表2.2.3并行输入 / 输出接口对于四个并行输入/ 输出接口前面已经简单介绍过了。本设计中主要用到了P1 口现在着重介绍,一下P1 口。P1 口为准双向口其 1 位的内部结构如图6 所示。它在结构上与 P0 口的区别在于输出驱动部分,其输出驱动部分由场效应管 V1 与内部上拉电阻组成。当其某位输出高电平时,可以提7/38供拉电流负载,不必像 P0 口那样需要外接电阻。从功能上来看P1 只有一种功能(对MCS-51子系列), 即通用输入输出 I/O 接口,
16、 具有输入、输出、 端口操作 3 种工作方式, 每1 位口线能独立地用作输入或输出线。图 6P1口的结构原理图8/383 系统的软件设计3.1软件总体设计51 单片机的程序设计语言主要有两种:一是汇编程序设计;二是 C 语言编程设计。两种程序设计语言都有各自的优点。用汇编语言编写和高级语言 (C 语言 ) 比较起来节省空间,这样对于存储空间仅 4Kb 的芯片来说是极之有利的, 51 单片机能更高速的运行。 C 语言编写的程序,虽然不象汇编那样速度快、但程序简单易行、并且需要较小的存储空间。 C 语言作为一种编译型程序设计语言,它兼顾了多种高级语言的特点, 并具备汇编语言的功能。此外, C 语言
17、程序还具有完善的模块程序结构,从而为软件开发中采用模块化程序设计方法提供了有力的保障。因此,使用C语言进行程序设计已成为软件开发的主流。本设计就是采用 C语言编写的,由于采用模块化操作,使得程序在修改,执行的时候显得方便易行。3.2系统主程序设计在主程序模块中, 需要完成对各接口芯片的初始化、 出租车起价和单价的初始化、中断向量的设计以及开中断、循环等待等工作。因为系统主程序的设计是一个十分重要的一个步骤,系统主程序设计的好与坏直接关系着这整个程序的有用与否,所以在系9/38统主程序之中,一定要好好的仔细的完成完善。另外,在主程序模块中还需要设置启动 / 清除标志寄存器、 里程寄存器和价格寄存
18、器,并对它们进行初始化。然后,主程序将根据各标志寄存器的内容,分别完成启动、清除、计程和计价等不同的操作。主程序流程图如图 7 所示。当按下启动键时,就启动计价,将根据里程寄存器中的内容计算和判断出行驶里程是否已超过起价公里数。若已超过,则根据里程值、每公里的单价数和起价数来计算出当前的累计价格,并将结果存于价格寄存器中,然后将时间和当前累计价格送显示电路显示出来。当到达目的地的时候,就停止计价,显示当前所应该付的金额和对应的单价,到下次启动计价时,系统自动对显示清零,并重新进行初始化过程。开始初始化数等 待 启否启动是开始计价10/38否按2公里以内是否是按照 2 公里以动态显示时结束图 7
19、主程序流程图3.3显示子程序服务程序由于是分屏显示数据,所以就要用到 3个显示子程序, 分别是:时分秒显示子程序、金额单价显示子程序、路程单价显示子程序。3.4按键服务程序本程序中所设计的按键程序在主程序之中,该程序在主程序当中时,当没有按键按下的时候,单片机循环主程序,一旦有按11/38键按下,便转向相应的子程序处理,处理结束再返回。12/384 系统调试与测试结果分析4.1系统调试根据系统设计方案,本系统的调试共分为三大部分:硬件调试,软件调试和软硬件联调。流程图如图 8。由于在系统设计中采用模块设计法,所以方便对各电路模块功能进行逐级测试。利用 Keil 软件对其进行编译、 仿真,得出比
20、较满意的效果。 在调试过程中,对其要求显示价格进行观察,比较理想地显示了价格。4.1.1硬件调试在硬件调试中,首先仔细检查自己所连电路是否正确,各电路线与电路板接口的连接是否正确,在正确的基础上,在仔细检查电路线与电路板的接口是否接触良好,是否有松动,如果有所松动,则及时的将接触不好的接口好好地加以紧固,再者,仔细看看电源是否插上。4.1.2软件调试在软件调试中,首先打开软件,然后在把自己写的程序代码复制到软件中,之后在进行编译,看是否有编译错误,如果有编译错误,则自己再好好的检查程序代码,看是在程序的哪个部分出了错误,检查出了错误的根源,在进行逻辑分析,之后再把错13/38误加以改正,如果没
21、有编译错误,则继续进行运行仿真。4.1.3软硬件联调将电脑与实验电路箱连接起来,在软件上启动将所编代码要实现的功能要在实验箱上实现的键,之后再在实验箱上看看实验箱的实验结果与自己的预期结果是否一致,如果一致,则说明自己所编代码是正确的,如果不一致,则说明自己所编代码是错误的。14/38系 统 调硬件调试软件调试软硬件联现场调试调试结束图 8调试流程图4.2电路图15/38图 9电路原理图16/38图 10实物连线图参考文献1 高富平,张楚 . 电子商务法 M. 北京:北京大学出版社,20022 李群芳,肖看 . 单片机原理接口与应用 . 北京:清华大学出版社, 20053 张迎新 . 单片微型
22、计算机原理、应用及接口技术 . 北京:国防工业出版社, 19994 高峰 . 单片微型应用系统设计及实用技术 . 北京:机械工业出版社, 20045 王华祥,张淑英 . 传感器原来及应用(修订版) M. 天津:天17/38津大学出版社 ,19996 何立民 . 单片机应用系统设计 . 北京:北京航空航天大学出版社 ,199018/38附录(关键部分程序清单)#include <reg51.h>#include <intrins.h>void delay(unsigned int i);/函数的声名/ 这个表为 LED 的字模 , 共阴数码管 0-9 -unsignedc
23、harcodeDisp_Tab=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/ 为段码控制/ 这个表为 8 个数码管位选控制 , 共阴数码管 1-8 个 -unsignedcharcodedispbit6=0x20,0x10,0x08,0x04,0x02,0x01;/位选的控制查表的方法控制unsigned char xdata *p=0x8004;unsigned char xdata *q=0x8002;bit flag;sbit flag1=P10;unsigned int i;unsigned int TimeCount=0;/时
24、间 ( 秒 )unsigned int LedOut6,SOut4;19/38float distance,y;int x,z;int r;int Calculate_distance()/路程显示的赋值子程序if(x<1)/这个路程 0.09 公里SOut0=Disp_Tab0;SOut1=Disp_Tab0|0x80;SOut2=Disp_Tab0;SOut3=Disp_Tabx;else if(x<100)/这个路程 0.99 公里SOut0=Disp_Tab0;SOut1=Disp_Tab0|0x80;SOut2=Disp_Tabx/10;SOut3=Disp_Tabx%1
25、0;else if(x<1000)/这个路程 9.99 公里20/38SOut0=Disp_Tab0;SOut1=Disp_Tabx/100|0x80;SOut2=Disp_Tabx%100/10;SOut3=Disp_Tabx/100%10;else/这个路程 99.99 公里SOut0=Disp_Tabx/1000;SOut1=Disp_Tabx%1000/100|0x80;SOut2=Disp_Tabx%1000%100/10;SOut3=Disp_Tabx%1000%100%10;return 0;/ 此为主函数int main(void)21/38flag=0;/ 此为定时器
26、1 初始化 ; 使用定时器 1 TMOD=0X10;TH1=0X3C;TL1=0XB0;/ 此为中断初始化;开放定时器 1 中断和外中断 0、1 EA=1;ET1=1;ET0=1;EX0=1;EX1=1;IT1=1;IT0=1;r=0;while(1)/从这开始distance=TimeCount*0.02;/该车速 0.02 公里 / 秒(正常车速约 80 公里 / 时),行车里程x=distance*100;22/38if(distance>2)/两公里外价钱,取整y=8+(distance-2)*2;z=y/1;/ 行车的时间LedOut0=Disp_TabTimeCount/60/10;LedOut1=Disp_TabTimeCount/60%10|0x80;LedOut2=Disp_TabTimeCount%60/10;LedOut3=Disp_TabTimeCount%60%10;Calculate_distance();/调用路程显示赋值子程序if(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 幼儿园灵活使用教具方案范本
- 体育用品行业可持续发展报告编制规范研究考核试卷
- 2024年中国耐热聚乙烯PERT行业调查报告
- 湖南省2025届2月高三下学期开学联考化学试题(含答案)
- 人才招聘中的候选人面试后跟踪与反馈机制考核试卷
- 乐器知识讲座考核试卷
- 远程技术支持与客户互动策略考核试卷
- 2025年中国矩阵切换控制系统行业全景评估及投资规划建议报告
- 中国家电用多楔带行业调查报告
- 中国租赁业务市场发展现状调研及投资趋势前景分析报告
- 糖尿病护理和管理
- 2025年广东省中考化学真题(解析版)
- 照明组装生产车间试题带答案
- 财务部门半年工作复盘
- 江苏南京金陵中学2024~2025学年高一下册期末考试数学试题学生卷
- 福建福州第八中学2024~2025学年高一下册期末数学试题
- 供电系统安全培训
- 生产工艺流程控制考核试卷
- 农机驾驶培训教程课件
- 箱变吊装方案(3篇)
- 直播电商结算管理制度
评论
0/150
提交评论