- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1设计内容及要求
1.1设计内容及要求
(1)出租车里程测量:采用信号源产生脉冲模拟出租车计价传感器产生脉冲,设每产生100个脉冲出租车行驶1公里信号源脉冲频率〈=1KHZ;
(2)里程显示为:***.***公里;
(3)采用8255芯片管理键盘显示。
1.2框图
根据设计内容及要求,设计框图如图1所示。
图1设计框图
2系统组成及工作原理
2.1控制单元设计
按键名称,O键表示开始计算路程;F键表示暂停;E键表示复位。
当程序开始运行后,按下0键则表示开始计算路程,并由数码管显示出来;按下F键则路程记数器暂停,并显示当前路程,当按下E键则复位。
2.2输出单元设计
通过六个8段LED数码管来显示路程。前四个分别表示千位、百位、十位、个位,而后两个表示十分位和百分位。
2.3定时器的功能和使用方法
首先选择方式1——为16位的定时器,其初始化具体如下:
s
其中fosc为晶振频率,定时时间。
3电路方案设计
3.1电路设计方案
使用单片机来完成设计要求。电路包括显示电路,设置电路,存储电路,复位电路,其工作原理图如图2所示,单片机功能强大,用较少的硬件和适当的软件相互配合可以很容易的实现设计要求,且灵活性强,可以通过软件编程来完成更多的附加功能。针对计费模式的切换,通过软件编程就可以轻容易的实现。避免了机械开关带来的不稳定因素,单片机单元框图如图3所示。
单
片
机
图2 工作原理框图
图3 单片机单元框图
3.2单元电路设计
3.2.1复位电路设计
在单片机的应用系统中,除单片机本身需复位以外,外部扩展的I/O接口电路等也需要复位,因此需要一个系统的同步复位信号:即单片机复位后,CPU开始工作时,外部的电路一定要复位好,以保证CPU有效的对外部电路进行初始化编程。51系列单片机的复位端RST是一个施密特触发输入,高电平有效。复位电路产生的复位信号经施密特电路整形后作为系统复位信号,加到51系列单片机和外部I/O接口电路的复位端.其电路图如图4所示,其中R1=47KΩ,R2=100Ω,C=10uF。
图4 复位电路
3.2.2时钟电路设计
89C51系列单片机内部有一个可控制的反相放大器,引脚XTAL1、XTAL2为反相放大器的输入端和输出端,在XTAL1、XTAL2上外接晶振(或陶瓷谐振器)和电容便组成振荡器。具体的时钟电路如图5所示。
电容1、2的典型值为30pF+10pF(晶振)或40pF+10pF(陶瓷谐振器)。振荡器频率主要取决与晶振(或陶瓷谐振器)的频率,但必须小于器件所允许的最高频率。振荡器的工作受控制,复位后=0(=1)振荡器工作,可由软件置‘1’,使振荡器停止振荡,从而使整个单片机停止工作,以达到节电的目的。
图3.2 时钟电路
图5 时钟电路
3.2.3单片机最小系统
主控机系统采用了Atmel 公司生产的89C51 单片机,它含有128 字节数据存储器,内置4K 的电可擦除FLASH ROM,可重复编程,大小满足主控机软件系统设计,所以不必再扩展程序存储器。复位电路和晶振电路是89C51 工作所需的最简外围电路。
89C51 的复位端是一个史密特触发输入,高电平有效,而系统中的时钟接口和CAN 总线接口的复位信号都是低电平有效。在复位电路中,按一下复位开关就使在RS端出现一段时间的高电平,经过74LS14 的一次反相整形,提供给单片机复位端。再经过一次反相整形,通过I/ORST 端提供给外部接口电路。外接12M 晶振和两个20P 电容组成系统的内部时钟电路。
3.3 8255A键盘显示电路设计
8255的数据线片选信号线、地址线、读写控制线等分别与系统总线相连,其A、B、C三个端口以排针形式引出,供8255实验使用,如图6所示。
图6 系统中的8255线路
4程序设计
4.1主程序模块
在主程序模块中,需要完成对各接口芯片的初始化、中断向量的设计以及开中断、循环等待等工作。另外,在主程序模块中还需要设置启动/清除标志寄存器、里程寄存器,并对它们进行初始化。然后,主程序将根据各标志寄存器的内容,分别完成启动、清除、计程等不同的操作。
1ms产生一次中断,当产生1000次中断的时候,也就到了一秒,送数据到相应的显示缓冲单元,并调用显示子程序实时显示。
里程计数程序流程图如图7所示。
图7里程计数程序流程图
5总结
5.1结论
通过用单片机来模拟出租车计价器, 并且使用了单片机上的键盘和数码显示管来模拟。硬件各方面相对吻合安全性高、耦合度高,能够对键盘上的0键进行启动、F键进行停止、E键进行复位的操作。
程序首先进行初始化设置(包括数码管、字
文档评论(0)