毕业设计29出租车计价器硬件设计报告.doc

毕业设计29出租车计价器硬件设计报告

收藏

压缩包内文档预览:(预览前20页/共26页)
预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图
编号:546404    类型:共享资源    大小:106.38KB    格式:ZIP    上传时间:2015-12-01 上传人:QQ28****1120 IP属地:辽宁
6
积分
关 键 词:
电气电子毕业设计论文
资源描述:
毕业设计29出租车计价器硬件设计报告,电气电子毕业设计论文
内容简介:
出租车计价器 1 摘要 随着北京奥运会的 临近 , 越来越多 游客的旅行问题以及怎样到现场观看比赛,那么出租车就成了首选。在交通发展迅速的今天,出租车是我们交通中不可缺少的工具。同时出租车中的计价器是必不可少的一种设备。这次专业课程设计就是通过模拟设计出租车计价器,使同学们对单片机硬件设计有一些了解。这样一来理论得到了实践。这说明单片机的应用已深入国民经济和日常生活的各个领域。 该设计的主要内容是通过 C51 单片机上的数码显示器来模拟出租车计价器的路程显示表,通过单片机上的键盘上的某些键来表示开始、暂停、复位等功能。 步骤如下:首先,程序开始做一些必要的初始化工作,等待键盘输入。然后,启动键按下( 0)后 LED 数码管开始记录路程并显示。最后,当需要停止是可按相应的键( F)对路程计数器进行暂停。而且还可以复位( E) 更应该学习和掌握专业及计算机知识,利用实习机会掌握课程设计精髓,为日后实习和工作打下牢固的基础等等。 关键字 C51 单片机 8255 出租车计价器 LED 数码管 nts出租车计价器 2 目录 前言 -3 第一章 设计内容及要求 -4 1.1 设计内容及要求 -4 1.2 框图 -4 第二章 系统组成及工作原理 -5 2.1 控制单元设计 -5 2.1.1 按键名称 -5 2.1.2 按键工作操作说明 -5 2.2 输出单元设计 -5 2.3 定时器的功能和使用方法 -5 第三章 电路方案设计 -6 3.1 方案比较 -6 3.2 总设计框图 -7 3.3 单位电路设计 -8 3.3.1 复位电路设计 -8 3.3.2 时钟电路设计 -9 3.3.3 单片机最小系统 -10 3.4 8255A键盘显示电路设计 -11 第四章 程序设计 -12 4.1 主程序模块 -12 4.2 定时中断服务程 -12 4.3 里程计数程序 -12 第五章 实验 调试及测 试结果与分析 -14 第六章 总结与体会 -15 参考文献 -16 附录一 -17 附录二 -25 附录三 -26 nts出租车计价器 3 前言 随着社会的进步以及 人们生活水平的 日益 提高都促使交通工具的不断变化,无论是在大城市或是中小城市越来越多的出租车公司不断的出现。出租车的出现方便了人们的生活,对于现在快节奏生活方式的人们来说出租车无疑是最好的交通工具。 那么其收费的方式自然而然就被给予关注 ,比如收费标准以及行驶里程等。 通过设计实际的 出租车计价器 应用课题,我们也熟悉了 单片机 系统 以及其他硬件操作技术,提高了分析问题和解决问题的能力 。 本次报告共分为 6章:第一章介绍设计内容和要求;第二章介绍系统组成及 工作原理 ;第三、四 章介绍 电路方案和程序设计 ;第 五 至 六 章结合实验和个人体会阐述结果并得出相应结论。 在此 谢谢老师的悉心教导和同学们的互助! 编者 2008-7-3 nts出租车计价器 4 第一章 设计内容及要求 1.1 设计内容及要求 (1) 出租车里程测量:采用信号源产生脉冲模拟出租车计价传感器产生脉冲,设每产生 100 个脉冲出租车行驶 1 公里信号源脉冲 频率 =1KHZ; (2) 里程显示为: *.*公里; (3) 采用 8255 芯片管理键盘显示。 1.2 框图 : 信号源 变换电路 显示器 单片机 nts出租车计价器 5 第二章 系统组成及工作原理 2.1 控制单元设计 2.1.1 按键名称 0 键表示开始计算路程; F 键表示暂停; E 键表示复位。 2.1.2 按键功能操作说明 当程序开始运行后,按下 0 键则表示开始计算路程,并由数码管显示出来;按下 F 键则路程记数器暂停,并显示当前路程,当按下 E 键 2.2 输出单元设计 通过六个 8 段 LED 数码管来显示路程。前四个分别表示千位、百位、十位、个位,而后两个表示十分位和百分位。 2.3 定时器的功能和使用方法 首先选择方式 1 为 16 位的定时器,其初始化具体如下: )(* 2 1612 aT fosc s 其中 fosc 为晶振频率, 定时时间 a 22 )0(TH0) TL 。 nts出租车计价器 6 第三章 电路方案设计 3.1 方案比较 方案一 使用数字电路和模拟电路来完成设计要求。显示器件有: LED显示, VFD显示,分段式数码管等等,针对显示单元电路这里可以使用分段式数码管来显示,分段式数码管分为共阳极和共阴极两种,对数码管的驱动针对不同的类型采用不同的芯片,共阴极数码管通常采用 TTL系列的 74LS48驱动,而共阳极数码管通常采用 CMOS系列的 CD4543来驱动;仅时钟显示电路框图和实际电路就非常复杂,整体电路将更加烦琐。而且 对于模式的切换需要用到机械开关,机械开关时间久了会造成接触不良,功能不 易实现;整体电路的规模较大,用到的器件多,造成故障率高,难调试。 方案二 使用 单片机 来完成设计要求。单片机功能强大,用较少的硬件和适当的软件相互配合可以很容易的 实现 设计要求,且灵活性强,可以通过软件编程来完成更多的附加功能。针对计费模式的切换,通过软件编程就可以轻容易的实现。避免了机械开关带来的不稳定因素。 方案确定 经过 上面 的两种方案的比较,显然第二种方案具有更大的优越性、灵活性,所以我们采用第二种设计方案进行设计。 本电路以 C51单片机为中心,实现对出租车路程的统计,输出采用 8段数码显示管。 nts出租车计价器 7 3.2 总设计框图 3.2.1 工作原理框图 单 片 机 图 1 工作原理框图 3.2.2 单片机单元框图 图 2 单片机单元框图 显示电路 路 程 显 示 设置电路 系统复位 存储电路 CPU 数码管显示 功能按键 时钟电路 系统开始 系统暂停 8255 并行编程 nts出租车计价器 8 3.3 单元电路设计 3.3.1 复位电路设计 在单片机的应用系统中,除单片机本身需 复位以外,外部扩展的 I/O接口电路等也需要复位,因此需要一个系统的同步复位信号:即单片机复位后, CPU开始工作时,外部的电路一定要复位好,以保证 CPU 有效的对外部电路进行初始化编程。 51 系列单片机的复位端 RST 是一个施密特触发输入,高电平有效。复位电路产生的复位信号经施密特电路整形后作为系统复位信号,加到 51 系列单片机和外部 I/O 接口电路的复位端 .其电路图如图 3.1所示,其中 R1=47K ,R2=100 ,C=10uF。 1 2 3 4 5 6ABCD654321DCBAT i t l eN um be r R e vi s i onS i z eBD a t e : 1- O c t - 20 07 S he e t of F i l e : F : 不错的音乐 P R E V I O 1.D D B D r a w n B y :E A / V P31X119X218R E S E T9RD17WR16I N T 012I N T 113T014T115P 101P 112P 123P 134P 145P 156P 167P 178P 0039P 0138P 0237P 0336P 0435P 0534P 0633P 0732P 2021P 2122P 2223P 2324P 2425P 2526P 2627P 2728P S E N29A L E / P30T X D11R X D1089 C 51C310ufR210KS1S W - P B1 2A74 L S 14R110K+5图 3.1 复位电路 nts出租车计价器 9 3.3.2 时钟电路设计 89C51 系列单片机内部有一个可控制的反相放大器,引脚 XTAL1、 XTAL2 为反相放大器的输入端和输出端,在 XTAL1、 XTAL2 上外接晶振(或陶瓷谐振器)和电容便组成振荡器。具体的时钟电路如图 3.2所示。 电容 1、 2 的典型值为 30pF+10pF(晶振)或 40pF+10pF(陶瓷谐振器)。振荡器频率主要取决与晶振(或陶瓷谐振器)的频率,但必须小于器件所允许的最高频率。振荡器的工作受控制,复位后 0( 1)振荡器工作,可由软件置 1,使振荡器停止振荡,从而使整个单片机停止工作,以达到 节电的目的。 图 3.2 时钟电路 图 3.2 时钟电路 1 2 3 4 5 6ABCD654321DCBAT i t l eN um be r R e vi s i onS i z eBD a t e : 6- O c t - 20 07 S he e t of F i l e : F : 不错的音乐 r on gh a o.d db D r a w n B y :E A / V P31X119X218R E S E T9RD17WR16I N T 012I N T 113T014T115P 101P 112P 123P 134P 145P 156P 167P 178P 0039P 0138P 0237P 0336P 0435P 0534P 0633P 0732P 2021P 2122P 2223P 2324P 2425P 2526P 2627P 2728P S E N29A L E / P30T X D11R X D10U1A T 89 C 5124MC R Y S T A L30 P FC A P30 P FC A PGNDnts出租车计价器 10 3.3.3 单片机最小系统 主控机系统采用了 Atmel 公司生产的 89C51 单片机,它含有 128 字节数据存储器,内置 4K 的电可擦除 FLASH ROM,可重复编程,大小满足主控机软件系统设计,所以不必再扩展程序存储器。复位电路和晶振电路是 89C51 工作所需的最简外围电路。单片机最小系统电路图如图 3.3所示。 1 2 3 4 5 6ABCD654321DCBAT i t l eN um be r R e vi s i onS i z eBD a t e : 1- O c t - 20 07 S he e t of F i l e : F : 不错的音乐 B A C K U P 1.D D B D r a w n B y :E A / V P31X119X218R E S E T9RD17WR16I N T 012I N T 113T014T115P 101P 112P 123P 134P 145P 156P 167P 178P 0039P 0138P 0237P 0336P 0435P 0534P 0633P 0732P 2021P 2122P 2223P 2324P 2425P 2526P 2627P 2728P S E N29A L E / P30T X D11R X D1089 C 51C130 P FC310uf24 M H zR210KS1S W - P B1 2A74 L S 14R110K+ 5VC230 P F+5CSC L KD A T AK E YL7L0L3R X DT X D图 3.3 单片机最小系统电路图 89C51 的复位端是一个史密特触发输入,高电平有效, 而系统中的时钟接口和CAN 总线接口的复位信号都是低电平有效。在复位电路中,按一下复位开关就使在RS端出现一段时间的高电平,经过 74LS14 的一次反相整形,提供给单片机复位端。再经过一次反相整形,通过 I/ORST 端提供给外部接口电路。外接 12M 晶振和两个20P 电容组成系统的内部时钟电路。 nts出租车计价器 11 3.4 8255A 键盘显示电路设计 8255的数据线片选信号线、地址线、读写控制线等分别与系统总线相连,其 A、B、 C三个端口以排针形式引出,供 8255实验使用,如图 3.4所示。 XD 0XD 1XD 2XD 3D 0D 1343332XD 4XD 5XD 63130292827XD 7D 2D 3D 4D 5D 6D 7X I O RX I O WXA 0XA 1R E S E TI O Y 359368356RDWRA 0A 1R E S E TCSPA 0PA 1PA 2PA 3PA 4PA 5PA 6PA 7432140393837PB 0PB 1PB 2PB 3PB 4PB 5PB 6PB 7PC 0PC 1PC 2PC 3PC 4PC 5PC 6PC 7825518192022232425211415161713121110系统总线图 3.4 系统中的 8255线路 8255端口地址 信 号 线 寄 存 器 编 址 IOY3 A口 0FF20H B口 0FF21H C口 0FF22H 控制寄存器 0FF23H nts出租车计价器 12 第四章 程序设计 4.1 主程序模块 在主程序模块中,需要完成对各接口芯片的初始化、中断向量的设计以及开中断、循环等待等工作。另外,在主程 序模块中还需要设置启动 /清除标志寄存器、里程寄存器,并对它们进行初始化。然后,主程序将根据各标志寄存器的内容,分别完成启动、清除、计程等不同的操作。 4.2 定时中断服务程序 在定时中断服务程序中,每 1ms产生一次中断,当产生 1000次中断的时候,也就到了一秒,送数据到相应的显示缓冲单元,并调用显示子程序实时显示。 4.3 里程计数程序 如下流程图所示 开始 8255 LED 显示 监听键盘 nts出租车计价器 13 图 4.1 里程计数程序流程图 里程计数程序见附录 开始 等待 进入中断 接受键盘 0 按下 F 按下 E 按下 循环显示各位 复位 Run 程序 P1 为 0 P10 为 0 P100 为 0 P1000 为 0 P10000 为 0 显示百分位 显示十分位 显示个位 显示十位 显示百位 P100000 为0 显示千位 Y Y Y nts出租车计价器 14 第五章 实验 调试及测试结果与分析 通过这两周的专业课程设计,所完成的软件 教务管理信息系统基本能达到课程设计的要求,但是,还是存在不少的漏洞,经过老师指导和调试后,修复了错误和漏洞。 通过用单片机来模拟出租车计价器, 并且使用了单片机上的键盘和数码显示管来模拟。 硬件各方面相对吻合 安全性高、耦合度高,能够对键盘上的 0 键进行启动、F 键进行停止、 E 键进行复位的操作。 程序首先进行初始化设置(包括数码管、字型表、定时中断设置);然后对键盘进行扫描,判断是否有功能键被按下;最后根据哪个功能键被按下,执行相应的程序以实现功能。 nts出租车计价器 15 第六章 总结与体会 经过两周有关于 通过模拟出租车计价器 的 课程设计 ,使同学们 对单片机的 应用有了更深的了解。在课程设计的过程中,还是碰到了许多的问题。比 如,对于单片机的一些基本代码及程序还有一些不清楚的地方; 对于代码的前后顺序及调用掌握的还不够好。通过请教老师和同学,最终把问题解决了。 此外,去图书馆和网上查相关资料也是一种学习的途径。 通过这次课程设计,我们充分体会 到了自己设计东西 的乐趣和 学习 交流的重要性, 在动手的过程中,不但增强了实践能力,而且在理论上有了更深的认识; 懂得了实践与知识结合的重要性 , 并在以后的学习中不段的提高自己 , 通过不断的摸索和实践来弥补自己在 硬件 方面的差距。我相信,这次实习将使我 受益匪浅,我更相信,我会以更热忱的态度去学习并研究这门重要的 实践性课程 。 nts出租车计价器 16 参考文献 1 吴开志 等 .单片机技术指导 .南昌航空 出版社, 2007.8 2 张友德 赵志英 涂时亮 .单片 微型机 原理、应用与实验 .复旦大学 出版社, 2006.6 3 孙涵芳 .MCS-51系列单片机原理及应用 .北京航空航天大学出版社, 1996.4 nts出租车计价器 17 附录 ORG 0000H SJMP START ;定义程序起始位置 ORG 000BH SJMP DS0 ;定时器 T0 入口地址 START: CLR TR0 ;关闭 T0 中断 MOV A,#81H ;将立即数 81H 放入 A 中 MOV DPTR,#0FF23H ;定义 DPTR 外部数据指针为 0FF23H,指向 8255 的控制字口 MOVX DPTR,A ;把 81H 放入 8255 控制字口,让 8255 以 PA、 PB 口 0 状态输出工作, PC 口 0 状态输入 MOV TMOD,#01H ;定义 T0 为 16 位计数器 MOV TH0,#0FCH ;定义中断延时 MOV TL0,#24H ;定义中断延时 ; 1MS = 1000US , 假设晶振频率为 12MHZ,延时常数 =( 2 的 16 次方 - 1000)将其转换到16 进制 MOV IE,#82H ;定义中断允许控制字,开 CPU 中断,开 T0 中断 MOV 71H,#00H ; MOV 72H,#00H MOV 73H,#00H MOV 74H,#00H MOV 75H,#00H MOV 76H,#00H MOV 40H,#50 ;延时用 MOV 00H,#00H ;标志 MOV 01H,#00H MOV 02H,#00H MOV 03H,#00H MOV 04H,#00H MOV R1,#00H ;用来检测键盘开始键 nts出租车计价器 18 MOV R3,#00H ;用来检测停止键 MOV R4,#00H ;用来监听复位键 MOV 50H,#10 ;循环次数 MOV 51H,#10 ;循环次数 MOV 52H,#10 MOV 53H,#10 MOV 54H,#10 MOV 55H,#10 SETB TR0 ;允许 T0 计数 CLR C ;清空 CY SJMP $ ;等待中断来临 DS0: ;中断处理子程序 MOV TH0,#0FCH ;把中断延时还给 T0 MOV TL0,#24H LCALL KEY_STATE ;调用键盘扫描子程序,获取当前的键盘状态, 1MS 扫描一次 CJNE R1,#0,RUN ;如果“ 0”被按下,就跳转到运行子程序,计算里程数 CJNE R3,#0,STOP ;如果“ F”被按下,就跳转到停止子程序 CJNE R4,#0,RESET ;如果“ E”被按下,就跳转到复位子程序 RETI ;如果 3 个键都没有被按下,不做处理,直接返回中断,等待下一次中断来临 RESET: ;复 位的子程序 MOV 71H,#00H ;初始化查表单元数据 MOV 72H,#00H MOV 73H,#00H MOV 74H,#00H MOV 75H,#00H MOV 76H,#00H MOV 51H,#10 ;初始化循环次数 MOV 52H,#10 MOV 53H,#10 nts出租车计价器 19 MOV 54H,#10 MOV 55H,#10 LJMP XIANSHI ;跳转到显示子程序 RETI ;返回中断 STOP: ;停止子程序 LJMP XIANSHI ;跳转到显示子程序 KEY_STATE: ;键盘行扫描处理子程序 KEY_0: ;检查 0 MOV R2,#0FDH ;定义 8255 对第 2 个 LED 数码管进行键盘扫描 MOV DPTR,#0FF20H MOV A,R2 MOVX DPTR,A MOV DPTR,#0FF22H ;将 DPTR 指向 8255 的 PC 口 MOVX A,DPTR ;从 PC 口获取键盘状态 JB ACC.1,KEY_F ;判断第 1 列是否为 0,如果为 0,证明 0 被按下 SJMP KEY_DOWN0 ;按下了就跳转到 0 被按下的子 程序 RETI ;返回中断 KEY_F: ;检查 F MOV R2,#0F7H MOV DPTR,#0FF20H MOV A,R2 MOVX DPTR,A MOV DPTR,#0FF22H MOVX A,DPTR JB ACC.1,KEY_E SJMP KEY_DOWNF RETI KEY_E: ;检查 E MOV R2,#0DFH MOV DPTR,#0FF20H nts出租车计价器 20 MOV A,R2 MOVX DPTR,A MOV DPTR,#0FF22H MOVX A,DPTR JB ACC.1,RETURN2 SJMP KEY_DOWNE RETURN2: ;返回中断 RETI KEY_DOWN0: ; 0 被按下 MOV R1,#1 ;把标志 R1 设置为 1 MOV R3,#0 ;其他标志设置为 0 MOV R4,#0 RETI ;返回中断 KEY_DOWNF: ; F 被按下 MOV R3,#1 ;把 R3 设置为 1 MOV R1,#0 ;其他标志设置为 0 MOV R4,#0 RETI ;返回中断 KEY_DOWNE: ; E 被 按下 MOV R4,#1 ;把 R4 设置为 1 MOV R3,#0 ;其他标志设置为 0 MOV R1,#0 RETI ;返回中断 RUN: ;运行子程序 DJNZ 40H,XIANSHI ;延时显示 MOV 40H,#50 INC 71H ;百分位查表单元 +1 DJNZ 50H,XIANSHI ;循环 10 次 MOV 50H,#10 ;如果百分位循环了 10 次,那么十分位上应该得到进位 INC 72H ;十分位查表单元 +1 nts出租车计价器 21 MOV 71H,#00H DJNZ 51H,XIANSHI MOV 51H,#10 INC 73H MOV 71H,#00H MOV 72H,#00H DJNZ 52H,XIANSHI MOV 52H,#10 INC 74H MOV 71H,#00H MOV 72H,#00H MOV 73H,#00H DJNZ 53H,XIANSHI MOV 53H,#10 INC 75H MOV 71H,#00H MOV 72H,#00H MOV 73H,#00H MOV 74H,#00H DJNZ 54H,XIANSHI MOV 54H,#10 INC 76H MOV 71H,#00H MOV 72H,#00H MOV 73H,#00H MOV 74H,#00H MOV 75H,#00H DJNZ 55H,XIANSHI AJMP START XIANSHI: ;显示百分位 nts出租车计价器 22 JB 00H,P10 ;作为标志判断当前应该去显示哪个数码管 JB 01H,P100 JB 02H,P1000 JB 03H,P10000 JB 04H,P100000 MOV DPTR,#0FF20H ; 定义显示最右边的数码管 MOV A,#0FEH MOVX DPTR,A MOV A,71H ;把百分位查表单元的数据送到 A 中 MOV DPTR,#TAB1 ;查表 MOVC A,A+DPTR ;把字型码送到 8255 的 PB 口 MOV DPTR,#0FF21H MOVX DPTR,A CPL 00H ;取反标志,能够让数码管循环点亮 CPL 01H CPL 02H CPL 03H CPL 04H LJMP RETURN ;返回中断 P10: ;显示 十分位 MOV DPTR,#0FF20H MOV A,#0FDH MOVX DPTR,A MOV A,72H MOV DPTR,#TAB1 MOVC A,A+DPTR MOV DPTR,#0FF21H MOVX DPTR,A CPL 00H LJMP RETURN P100: ;显示个位 nts出租车计价器 23 MOV DPTR,#0FF20H MOV A,#0FBH MOVX DPTR,A MOV A,73H MOV DPTR,#TAB1 MOVC A,A+DPTR MOV DPTR,#0FF21H MOVX DPTR,A CPL 01H LJMP RETURN P1000: ;显示十位 MOV DPTR,#0FF20H MOV A,#0F7H MO
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
提示  人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:毕业设计29出租车计价器硬件设计报告
链接地址:https://www.renrendoc.com/p-546404.html

官方联系方式

2:不支持迅雷下载,请使用浏览器下载   
3:不支持QQ浏览器下载,请用其他浏览器   
4:下载后的文档和图纸-无水印   
5:文档经过压缩,下载后原文更清晰   
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

网站客服QQ:2881952447     

copyright@ 2020-2025  renrendoc.com 人人文库版权所有   联系电话:400-852-1180

备案号:蜀ICP备2022000484号-2       经营许可证: 川B2-20220663       公网安备川公网安备: 51019002004831号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知人人文库网,我们立即给予删除!