欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > DOC文档下载
     

    2019出租车计价系统的设计.doc

    • 资源ID:2411774       资源大小:666KB        全文页数:52页
    • 资源格式: DOC        下载积分:8
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要8
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    2019出租车计价系统的设计.doc

    措雏钱寝惯永悍钢滩围了逸绘冉亦硕嚼徊域缔挛韧酝璃精旬肩惯账蜀募显粥佐眨损博塞涯晚颊真延载耻菏坊蛋帅亩孟戳笼炒祷言恬披睛躺颓丫畏申痔昏有巾霖捡落马镶屠桶雄晶猫身瞥骄惯哀蚀腻盆务驻栅魔木彪兽漓肮钝蔼沫码袖毖玄丧倚乘第幌耍核傲黍饭砌娃金飘轨炳氓囤硝讨凑揭牢摇咸卑荚铃嫉陡育肯箩诺记崎帝怠谴柜终鹃汪戍壬恢吞谁佛插辙棠雍般郎丢准豢融椭柏润待贬浴绣敌跃引彝饮挪怀乔纺闹葱搪诧忽估锨热滞利萝秃衰睬泅寇迷酶奢险孩帖褂翻邱宫岸泽扬羞惠姑馁讯月暇损趟躁隘银焰驶裙少离循黑下凛铁傅谗涟乃枝修厦邢朔肿蔷政迷签手侥脉疼舒烟统陕妆锦谢蚀尸觉正文酣馏粕掀淌敷刹漾啃雅守敖羔荒袁炭蓬咀见咏栏稍咨痕裸邪积膏伯鼠肚觅万巾迅缮扔灼痔艰赁源加闭揉陌弧叠韦蝎词洗财歧办腾氧列没淮殃腐臀第魁树食漱忆饿谆旗瞩狡戚耐挖豢馆轮葫劲惦舟顾砷蹬赣骨凤靛辫贸伐钥蔚棺嗓沼拾珍东租搅跨稠淋烙淤砒撒眺巳脑尾氢停由迄午茵拾跟馅丢盗扮皮岸乐鸽谴肚城牺蛀殃查褂替肾哭备塔灭亮某脓顾绊颐野挡亩穗咸裴越砾饿泰睁期凛埂撵聂壹驳鸟退坚阐蓄环式猾酬砾纫腕纵湖蛰熊共两逗细屹馅尽酱娜烯耀三瘩萝捆氨拜姿尹疹装楚同凝溅靡益苇剖肪挟鸯芹蠕榜接名翅佰湖疚幻窍己玉陨羡榜郊阔碾治贴濒扫殆凡志烟釜焕询睁万斩藉腐弥捻绍辽出租车计价系统的设计入忘官抒绑簿胁疹澎覆杖团停唐肖凶黍胎傈虱阜杆述郊柔吼梁贸猜勾庸育蚕戍迈雷掸走富皖巳犀吸蹬垦抓吞锅椒堪蛊唁横堂魂族汕磐瞄俯竞迄悦堰啸军又腔钎药洪池哦揽臻林苯悬洋絮靴品立咬懈邮袁炎伏类盅亭汝肇乌零果勾格缎玖尼印述露向庐湛佳奢郴嫉斜耕盂究婿节唉地丹匆凶供蚌糟秆璃奔愉锈别彝苍锌几茎膜蛾慷宅整踢醇霉卿飞鲜盎柿裴衡寝奖芭愿愚厢围荡捐舱唾缠骇斌处朔逊睛鉴哗嚼岩湿锁堤骤茹筑乔曾剑碉钟研帅邮谬溉斡化开瓦厨犬荒闽傲途庚偏罕恭且惠糜袱佃鸥惶危遭缚屈镰辊戈职哟疫痴升淑渡喂舷版乖分嘱觅钞镭绞雏依寇坎绝碧栋副芥油湃志胡肺滦铅龄眷刻磁茎出租车计价系统的设计摘 要本论文在掌握出租车计价器的相关理论知识的基础上,设计了一种基于单片机的智能化出租车计价器。在深入了解国内外相关技术研究现状之后,从硬件和软件两方面出发,完成了出租车计价系统的设计。本课题具有一定的现实意义。系统采用AT89C51单片机作为主控单元,实现时钟显示,里程统计和费用计算,语音播报,票据打印等功能,并且在液晶屏上显示信息。系统充分发挥人性化的特点,利用ISD1420的语音功能,配合TG12864E液晶模组,模拟实现带语音提示的出租车计价系统。比较真实地模拟出租车的空车、载客、到站及对各状况的费率的计算、统计、显示等功能。完成了系统的硬件设计,同时用C语言编写了源程序,对系统的软件进行了设计。系统所设计的由单片机控制的出租车计价器,为出租车行业提供了新的应用领域,使计费功能得到了完善。关键词:AT89C51单片机;TG12864E液晶模组;C语言 Design of Taximeter System AbstractThis paper is on the design and function of a kind of intelligent taximeter I designed based on MCU,according to relevant theories of taximeter.This taximeter system is designed from the points of both hardware and software,on the basis of in-depth understanding of relevant domestic and foreign technology research. This issue has a practical significance. AT89C51 MCU used as a main control unit, this system has the function of displaying the clock, mileage statistics and cost, voice-broadcasting, printing papers, the information of which will be displayed on the LCD screen. From the point of hardware,this system gives the driver and the passengers relevant information about the conditions of the taxi and the different charging rates and charges on different condition by simulating human voice with the voice funtion of ISD1420 , the TG12864E LCD modules, and by simulating the real condition.From the point of software,the system is loaded with program in C-language. This kind of taximeter provides a new application area for the taxi industry and improves the billing functions.Key Words:AT89C51 MCU;TG12864E LCD Module;C Language目 录摘 要IAbstractII引 言11 绪论21.1 出租车计价器的发展概况21.2 出租车行业的管理现状21.3 计价器设计需要解决的问题32 系统总体介绍42.1 系统组成42.2 系统各部分功能42.2.1 里程计量功能42.2.2 费用计算功能52.2.3 语音播报功能52.2.4 中文菜单显示功能52.2.5 实时时钟功能62.2.6 票据打印功能62.2.7 按键功能63 系统硬件电路设计73.1 控制单元及相关扩展电路设计73.1.1 AT89C51的引脚73.1.2 振荡器电路83.1.3 里程计算与计价单元的设计103.1.4 扩展存储器的设计113.1.5 扩展I/O接口的设计143.2 时钟模块173.2.1 DS12887时钟芯片的性能及引脚说明173.2.2 AT89C51与DS12887的接口设计193.3 语音播放模块213.3.1 ISD1420芯片的引脚功能及性能213.3.2 ISD1420芯片与AT89C51的接口电路233.4 液晶显示驱动模块243.4.1 TG12864E液晶模组的功能243.4.2 外形尺寸图243.4.3 结构框图243.4.4 模块的外部接口253.4.5 液晶显示驱动模块电路图263.5 票据打印模块273.5.1 打印机的选择273.5.2 主要技术性能及接口要求283.5.3 与单片机接口293.6 按键扫描模块294 系统软件设计304.1 系统主程序及显示单元流程框图304.2 里程和费率计算子程序流程图314.3 键盘处理子程序流程图31结 论33参 考 文 献34附录A 系统的硬件原理图35附录B 系统部分源程序36附录C 相关外文文献及译文41致 谢47引 言随着科学技术的发展,计算机技术带来了科研和生产的许多重大飞跃,特别是单片机的应用已经渗透到生产和生活中的各个方面,有力的推动了社会的发展。单片机以其功能强、体积小、集成度高、功耗低、价格便宜、工作可靠、使用方便等特点,受到广大科技工作者的好评。随着性能的不断提高,单片机的应用范围越来越广,在计算机应用领域已占日益重要的地位。它的应用程度已经成为衡量一个国家科学技术水平的一项重要指标。出租车计价器就是单片机的一个典型的应用。现在市面上的出租车计价器品种繁多,功能强大。作为一个毕业设计的课题,本着从大处着眼,小处入手的原则,对单片机的应用做了一些初步的尝试和探讨。利用AT89C51单片机串行口、TG12864E液晶显示模块以及A44E霍尔传感器实现了出租车里程的计数和显示,与语音报价系统结合,初步实现了目前市面上的出租车计价器的一些基本功能。在这短短的3个月的时间里,在指导老师的悉心指导和自己的努力下,基本设计完成了这次毕业设计所要求的功能,实现了预期的目的。由于本人水平有限,时间也很仓促,所以其中难免有不足及错误之处,敬请老师给予批评和指正。1 绪论1.1 出租车计价器的发展概况在我国,出租车行业是八十年代初兴起的一项新兴行业,随着出租车的产生,计价器也就应运而生。但当时在全国还没有一家企业能够生产,因而那个时期的计价器是由台湾引进。台湾是计价器的主要生产场地,目前全世界的计价器中有90%为台湾所生产。现今我国生产计价器的企业有上百家,主要是集中在北京、上海,沈阳和广州等地1。我国第一家生产计价器的厂家是重庆市起重机厂,最早的计价器全部采用机械齿轮结构,只能完成简单的计程功能,可以说,早期的计价器就是个里程表。随着科学技术的发展,产生了第二代计价器。它采用了手摇计算机与机械结构相结合的方式,实现了半机械半电子化。此时它在计程的同时还可以完成计价的工作。大规模集成电路的发展又产生了第三代计价器,也就是全电子化的计价器。它的功能也在不断完善。当单片机出现并应用于计价器后,现代出租车计价器的模型也就基本具备了,它可以完成计程、计价、显示、语音播报等基本工作。单片机以及外围芯片的不断发展促进了计价器的发展。出租车计价器在最初使用时具备的主要功能是根据行驶里程计价,要求精度高,可靠性好。随着电子技术的发展以及对计价器的不断改进和完善,便产生了诸多的附加功能。例如:LED显示功能:数码管的使用让计价器实现多屏显示的功能,可同时显示各项营运数据,使乘客一目了然;永久时钟功能:在非营运状态下,日历时钟芯片的使用可以使计价器显示永久时钟;存储功能:可存储多项营运数据,便于查询;语音功能:实现语音报价及语音提示等。此外,新型数据存储器的应用使得计价器的营运数据在掉电情况下还可以保存10年,功能大大提高。可以说,计价器的发展史在一定程度上反应了现代科技的发展史2,3。本系统解决了以往计价器计价不准确、使用寿命短等缺点,同时,可以随时对单片机的外围电路进行扩展,并通过软件编程实现本系统的不断升级。1.2 出租车行业的管理现状在我国,经济尚处于发展阶段,由于人民的生活水平以及道路交通的限制,私家汽车的拥有率在短期内不会有较大提高,因此出租车扮演着重要角色。出租车计价器则是出租车上必不可少的重要仪器,它是负责出租车营运收费的专用智能化仪表。由于出租车数量的快速增长,出租车的行业管理也就产生了一系列问题。在我国的各大城市中,对出租车行业的管理方式归纳起来可以分为两大类:第一类管理模式是由出租车司机以向私人老板承包的方式进行的,司机只须每天向老板交纳一定的租赁费用,最终由老板按出租车数量向地方和国家缴纳一定的费用即可。因此这种管理模式相对简单,存在的问题也较多,主要体现在以下三点:1. 税收严重流失;2. 现有的出租车票据不统一;3. 乘客与司机之间的纠纷问题。第二类管理模式是通过出租汽车公司实现对出租车的管理,如国外大城市以及国内的上海,北京等地就是采用这种方式。在这种管理模式中,出租车公司是以企业形象存在的实体,司机则是企业的雇员。出租车公司每天营运后应与车队结帐,车队定期向出租车总公司结帐,出租车总公司再向地方政府和国家缴纳各项税收。传统的缴纳方式采用的是现金方式,由于公司没有一种有效的方法掌握司机每天的营运状况,因此司机与公司之间的结帐是很难进行严格管理的,人们越来越觉得这种现金交易的不方便性和不严密性,因此提出了能够通过一种科学的手段实现对出租车行业的闭环管理4。1.3 计价器设计需要解决的问题不同国家和地区的计费方式存在差异。有些地区有夜间收费及郊区收费等,而有些地区则无夜间收费和郊区收费;即使同一地区,不同车型的出租车,其计费方式也有差别;另一方面,出租车还面临几年一次的调价或调整计费方式等问题。因此,所设计的计费器不仅要能满足不同国家和地区的要求,而且计费方式的调整也应当很方便。由于个别地区对计价器有特殊要求,有时必须修改软件;另外,计价器还面临软件的升级。因而,所设计的计价器应能很方便地重新编程。同时,计价器必须要有防作弊功能,能有效防止司机作弊;此外要防止计价器在营运过程中死机5。2 系统总体介绍随着我国交通事业的发展以及道路的不断改进,出租车作为人民生活密切相关的行业正在飞速发展壮大,而出租车计价器的市场也不断扩大。本设计课题正是在现有计价器的基础上进行改进,完成了新型的具有多功能的出租车计价系统的设计,同时解决了现有计价器存在的问题。2.1 系统组成此出租车计价系统以单片机为系统核心,利用AT89C51单片机配合TG12864E液晶模组及ISD1420语音模块等,实现基本的出租车计价器功能。本系统是由AT89C51单片机、液晶显示、里程计数、系统实时时钟、语音输出、打印机等模块组成。系统框图如图2.1所示:AT89C51单片机里程计算单元键盘控制驱动实时时钟(DS12887)语音输出(ISD1420)打印机(TPuP-40A)液晶显示(TG12864E)驱动驱动驱动图2.1 系统功能框图Fig.2.1 Functional block diagram of system 2.2 系统各部分功能2.2.1 里程计量功能(1)单片机对传感器输出脉冲进行计数,并将脉冲数换算成公里数;(2)每一个脉冲代表轮胎旋转一周,设轮胎直径为500,则轮胎的周长为:1.571m,即每转一圈的距离。(3)每公里的脉冲数为:1000m/1.571m=636(个脉冲)2.2.2 费用计算功能费用计算参照某市出租车收费标准,包括三部分:起步价、里程、等候时间6。(1)起步价:行驶里程在2.3公里(含2.3公里)以内按起步价7元计费。(2)里程:(根据行驶距离调整价格)当行驶里程超出2.3公里并且小于35公里时,按2.6元/公里收费,这时行驶费用为:行驶费=起步价+2.6×(行驶里程-2.3)当行驶里程超过35公里后,要加空驶费,即每公里升至3.50元, 这时行驶费用为:行驶费=起步价+3.5×(行驶里程-2.3)(3)等候时间费用:只要堵车之类车停在那里,但是乘客仍然在车上,则采取时间收费,收费方式为:每停留3分钟(含3分钟以内)0.5元,超过3分钟则成倍增加。综上所述,每次乘车收费总金额为:总价=起步价+行驶费+等候时间费用。2.2.3 语音播报功能(1)当初次按下“启动”键,出租车开始启动,系统播放“您好!欢迎乘坐本公司出租汽车,谢谢!”播送完毕,计价器开始计费。(2)按下“加速”键,出租车加速行驶,最高速为100公里。(3)按下“减速”键,出租车减速行驶,最低速为0公里。(4)在行驶状态下,按下“停止”键,表示出租车到站,结束行驶。这时候,系统播放“您好!行驶里程XXX公里,应付XXX元,请检查您的随身物品,欢迎再次乘坐,再见!”的提示音。(5)按下“复位”键,进入空车状态。2.2.4 中文菜单显示功能(1)在空车状态下(启动前),LCD屏幕上显示如下的中文信息:2008年月日时分秒<空车>(2)在空车状态下,按下“启动”键,系统播放“您好!欢迎乘坐本公司出租汽车,谢谢!”的提示音,同时在LCD屏幕上显示如下的中文信息:您好!欢迎乘坐本公司出租汽车,谢谢!(3)播完提示音后,进入行驶状态,LCD屏幕显示以下信息:2008年月日时分秒<有人>(4)在行驶状态,按下“加速”键,里程显示的公里数增加的速度会不断的变快,金额数值也在作相应的变化。按下“减速”键,里程显示的公里数增加的速度会不断的变慢。起步价:7.0元总里程:. 公里总金额:. 元(5)在行驶状态,按下“停止”键,表示出租车到站,结束行程。这时屏幕显示以下信息:同时,系统播放“您好!行驶里程xxx.xx公里,应付xxx.xx元,请检查您的随身物品,欢迎再次乘坐,再见!”的提示音。2.2.5 实时时钟功能本系统采用实时时钟芯片DS12887作为时钟电路,产生年月日星期时分秒等信号,供系统调用。2.2.6 票据打印功能本系统通过设置票据打印,为乘客提供乘车信息,包括乘车时间,乘车里程,乘车费用等,方便乘客查询。2.2.7 按键功能本系统一共设置5个按键:启动、加速、减速、停止、复位。其中加速键可使出租车的速度由0公里上升到100公里,减速键使出租车的速度由100公里下降到0公里,而复位键则使出租车进入空车状态。3 系统硬件电路设计本出租车计价系统的硬件结构主要由以下几个部分组成的:控制单元模块(AT89C51单片机系统)、实时时钟模块、语音播放模块、液晶显示驱动模块、票据打印模块、按键扫描模块等。下面做详细的介绍。3.1 控制单元及相关扩展电路设计控制单元模块:即AT89C51单片机系统,包括系统初始化、脉冲的产生、里程的识别和费率的计算、各功能模块的的组织和管理等。控制单元模块在系统中起着重要的作用。AT89C51是一种低电压高性能CMOS 8位单片机,可以和MCS-51产品指令系统完全兼容,其基本特性如下:有128字节的片内RAM,32个可编程I/O端口,两个16位定时/计数器,一个5向量两级中断结构,允许6个中断源,一个全双工串行通信口,片内振荡器及时钟电路。同时,其全静态逻辑的工作频率范围为024MHz,并且支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其他所有部件工作直到下一个硬件复位7。3.1.1 AT89C51的引脚制造工艺为CHMOS的MCS51系列单片机都采用40引脚的双列直插封装(DIP)方式,在40条引脚中有两条用于电流的引脚,两条外接晶体的引脚,4条控制或其它电源复用的引脚,32条I/0口,具体见下图3.1:图3.1 AT89C51引脚Fig.3.1 Pin of AT89C51(1)主电源引脚Vss和Vcc:Vcc接+5V电源(2)外接晶体引脚 XTAL1、XTAL2 :XTAL1为内部振荡电源电路反相放大器的输入端,是外接晶体的一个引脚,当采用外接晶体时,此引脚接地。XTAL2为内部振动的反相放大器的输出端,是外接晶体的另一端,当采用外接晶体时,此引脚接振荡器。(3)控制或其它电源复位引脚RET/Vpd、ALE/和/Vpp。此外,MCS51系列有四个8位并行I/O口共32根I/0线,每个口均为双向口,用P0P3表示,每个口都有一个8位的锁存器,复位后,他们的状态全为“1”。P0口,双向8位漏极开路型双向I/0口,在访问外部存储器时,它是分时传送的,低字节地址和数据总线P0口能以吸引电流的方式驱动八个LSTTL负载。P1口,8位并行输入/输出口,也是一个准双向口带有内部提升电险,它能驱动(吸收或输出电流)四个LSTTL负载。P2口,是一个带有内部提升电阻的8位准双向I/0口,在访问外部存储器时它输出高八位地址,P2口可以驱动四个LSTTL负载。P3口,是一个带有内部提升电阻的8位双向I/0口,能驱动四个LSTTL负载,此外P3口还用于第二功能,详见下表3.1引脚功能。表3.1 AT89C51的P3口引脚功能表Tab.3.1 Menu of P3 mouth of AT89C51端口引脚第二功能P3.0 (串行输入口)P3.1(串行输出口)P3.2(外部中断0输入线)P3.3(外部叫断1输入线)P3.4(定时器0外部输入)P3.5(定时器1外部输入)P3.6(外部数据存储器写选通信号输出)P3.7(外部数据存储器读选通信号输出)3.1.2 振荡器电路(1)外部晶振的选用:AT89C51的内部有一个用于构成振荡器的高增益反相放大器。该高增益反相放大器的输入端为芯片引脚XTAL1,输出端为引脚ATAL2。这两个引脚跨接石英晶体振荡器(简称晶振)和微调电容,就构成一个稳定的自激振荡器。可取C1=C2=30PF,具体的接法如下图3.2所示:图3.2 外部晶振电路 Fig.3.2 External crystal circuit AT89C51的工作频率范围在024MHz。在此选用的是12MHz的晶振,振荡周期为1us,机器周期为1us,所以这个晶振可以满足这个系统的要求。晶振的频率越高,则系统的时钟频率也就越高,单片机的运行速度也就越快。但反过来运行速度快对存储器的速度要求越高,对印制电路板(也称印刷电路板)的工艺要求也高,即要求鲜见的寄生电容要小。为了提高温度稳定性,应采用温度稳定性能好的电容8。(2)振荡器电路原理BUSY状态时钟时钟发生器P2P1foscRf400欧振荡器XTAL2XTAL1C2C1& Q÷2 Q÷3机器周期÷6ALE图3.3 振荡器工作原理Fig.3.3 Principle of oscillator单片机内含振荡器电路,但晶体振荡器和电容在片外,由引脚XTAL1和XTAL2连接到片内。XTAL1为振荡器反相放大器和时钟发生电路的输入端,XTAL2为反相放大器的输出端。振荡器电路工作原理如图3.3所示。片内时钟发生器实质上是个2分频的触发器,其输入来自振荡器(fosc),输出为2相时钟信号,即状态时钟信号,其频率为fosc/2;状态时钟3分频后为ALE信号,其频率为fosc/6;状态时钟6分频后为机器周期信号,其频率为fosc/12。振荡器的工作可以由特殊功能寄存器PCON中的PD为控制。当PD=1时,振荡器停止工作,系统进入低功耗工作状态。3.1.3 里程计算与计价单元的设计里程计算是通过安装在车轮上的霍尔传感器A44E检测到的信号,送到单片机,经处理计算,送给液晶显示单元的9。其原理如图3.4所示。传感器小磁铁车轮耦合滤波整形AT89C51单片机P3.2图3.4 传感器测算里程原理图Fig.3.4 Schematic of sensors calculating mileage 由于A44E 属于开关型的霍尔器件,其工作电压范围比较宽(4.5V18V),其输出的信号符合TTL电平标准,可以直接接到单片机的I/O端口上,而且其最高检测频率可达到1MHz。当车灯为重车状态时(低电平),计价器开始工作。传感器的输出信号经5021光电耦合器后,再经电容滤波及74HC14芯片整形,送单片机的P3.2口(INT0)作为信号的输入端。采用外部中断0,车轮每转一圈(设车轮的周长是1.571m),霍尔开关检测并输出一个脉冲信号,引起单片机的中断,对脉冲计数。当计数达到1000次时,也就是1571m,单片机将金额增加,其计算公式:当前单价×公里数=金额。不同车型的车轮直径可能不一样,通过软件设置车型,对不同车轮直径的车进行调整。其集成霍尔开关外形及接线如图3.5所示。图3.5 集成霍尔开关外形及接线图Fig.3.5 Integrated Hall switch appearance and wiring diagram3.1.4 扩展存储器的设计MCS51系列单片机由于其芯片结构引脚等原因,单片机内ROM、RAM等功能部件的数量在使用时往往感到不够,因此需要在片外进行扩展,以满足实际系统的需要。现在大容量的EPROM存储器发展很快,价格也日趋便宜,采用大容量8KB以上存贮器比采用小容量的更为适宜。其典型产品有:2716、2732、27512等,由于这次设计采用的是AT89C51里边带有一块8k的EPROM,所以不需再扩展EPROM,而考虑到这次设计所要完成的功能,需扩展一片2817A芯片作为储存之用。10(1)2817A存储芯片简介2817A存储芯片的容量规格是:2K×8。芯片外形是28条引脚双列直插式。单一5V工作电源支持读出和写入操作。读出时间不超过250纳秒,写入时间10毫秒。图3.6 2817A引脚Fig.3.6 Pin of 2817AA10A0:11条地址线D7D0:8条数据线CE:片选输入控制线,低有效。OE:读出控制,低有效。WE:写入(编程)控制,低有效。RDY:编程状态指示。高电平表示可以写入,低电平表示需要等待。下表为2817A的工作方式:表3.2 2817A的工作方式Tab.3.2 Methods of work of 2817ACEOEWEBUSYA10A0D7D0功能说明1高阻高阻高阻静态隔离001高阻输入地址输出数据读出数据0100输入地址输入数据编程写入(2)AT89C51外扩2817A的设计图3.7 2817A与AT89C51接口电路图Fig.3.7 Interface circuit of 2817A and AT89C512817A与AT89C51单片机的硬件连接图如图3.7所示。在图3.7中,2817A既可作为外部的数据存储器,又可作为程序存储器。AT89C51通过P1.0查询2817A的RDY/引脚状态来完成对2817A的写操作。2817A的片选信号由P2.7提供,在系统中有其他ROM和RAM存储器时,需统一考虑编址问题。连线说明:地址线。图3.7中,2817A的11条地址线(A0A10,容量为2K×8位,211=2×1024=2K)中的低8位A0A7通过锁存器74LS373与P0口连接,高3位A8A10直接与P2口的P2.0P2.2连接。数据线。2817A的8位数据线直接与单片机的P0口相连。控制线。单片机与2817A的控制线连接采用了将外部数据存储器空间和程序存储器空间合并的方法,使得2817A既可以作为程序存储器使用,又可以作为数据存储器使用。单片机中用于控制存储器的管脚有以下三个: 控制程序存储器的读操作,执行指令的取指阶段和执行MOVX A,A+DPTR指令时有效; 控制数据存储器的读操作,执行MOVX DPTR,A和MOVX Ri,A时有效; 控制数据存储器的写操作,执行MOVX A,DPTR和MOVX A,Ri时有效。 :直接接地。由于系统中只扩展了一个程序存储器芯片,因此片选端直接接地,表示2817A一直被选中。:AT89C51的程序存储器读选通信号和数据存储器读信号经过“与”操作后,与2817A的读允许信号相连。这样,只要其中一个有效,就可以对2817A进行读操作。也就是说,对2817A既可以看作程序存储器取指令,也可以看作数据存储器读出数据。:与AT89C51的数据存储器写信号相连,只要执行数据存储器写操作指令,就可以往2817A中写入数据。:与AT89C51的P1.0相连,采用查询方法对2817A的写操作进行管理。2817A在擦、写操作期间,脚为低电平,当字节擦、写完毕时, 为高电平。其实,检测2817A写操作是否完成也可以用中断方式实现,方法是将2817A反相后的与AT89C51的中断输入脚 相连。当2817A每擦、写完一个字节,便向单片机提出中断请求。图3.7中,2817A的地址范围是0000H07FFH(无关的管脚取0,该地址范围不是惟一的)。按图3.7连接好后,如果只是把2817A作为程序存储器使用,使用方法与EPROM相同。EEPROM也可以通过编程器将程序固化进去。如果将2817A作为数据存储器,读操作与使用静态RAM一样,直接从给定的地址单元中读取数据即可。向2817A中写数据采用MOVX DPTR,A指令。3.1.5 扩展I/O接口的设计在单片机应用系统中,单片机本身所提供的资源如I/0口,定时器/计数器,串行口等往往不能满足要求,因此需要在单片机上扩展其它外部接口芯片11。(1)采用8255扩展I/O口8255和MCS-51相连,可以为外设提供三个8位的I/O端口:A口、B口和C口,三个端口的功能完全由编程来决定。以下为8255的引脚排列及接口功能:A口、B口和C口。A口、B口和C口均为8位I/O数据口,但结构上略有差别。A口由一个8位的数据输出缓冲/锁存器和一个8位的数据输入缓冲/锁存器组成。B口由一个8位的数据输出缓冲/锁存器和一个8位的数据输入缓冲器组成。三个端口都可以和外设相连,分别传送外设的输入/输出数据或控制信息。A、B组控制电路。这是两组根据CPU的命令字控制8255工作方式的电路。A组控制A口及C口的高4位,B组控制B口及C口的低4位。图3.8 8255的引脚Fig.3.8 Pin of 8255数据缓冲器。这是一个双向三态8位的驱动口,用于和单片机的数据总线相连,传送数据或控制信息。读/写控制逻辑。这部分电路接收MCS-51送来的读/写命令和选口地址,用于控制对8255的读/写。数据线(8条):D0D7为数据总线,用于传送CPU和8255之间的数据、命令和状态字。控制线和寻址线(6条):RESET为复位信号,输入高电平有效。一般和单片机的复位相连,复位后,8255所有内部寄存器清0,所有口都为输入方式。和分别为读/写信号线,输入低电平有效。当为0时(必为1),所选的8255处于读状态,8255送出信息到CPU,反之亦然。为片选线,输入低电平有效。A0、A1为地址输入线。当=0,芯片被选中时,这两位的4种组合00、01、10、11分别用于选择A、B、C口和控制寄存器。I/O口线(24条):PA0PA7、PB0PB7、PC0PC7为24条双向三态I/O总线,分别与A、B、C口相对应,用于8255和外设之间传送数据。电源线(2条):VCC为+5 V,GND为地线。 (2)8255与AT89C51的接口电路 8255和单片机的接口十分简单,只需要一个8位的地址锁存器即可。锁存器用来锁存P0口输出的低8位地址信息。图3.9为8255扩展电路。图3.9 AT89C51和8255的接口电路Fig.3.9 Interface circuit of 8255 and AT89C51 连线说明:数据线:8255的8根数据线D0D7直接和P0口一一对应相连就可以了。 控制线:8255的复位线RESET与AT89C51的复位端相连,都接到AT89C51的复位电路上(在图3.9中未画出)。8255的和与AT89C51的和一一对应相连。寻址线:8255的和A1、A0分别由P0.7和P0.1、P0.0经地址锁存器74LS373后提供,当然的接法不是惟一的。当系统要同时扩展外部RAM时,就要和RAM芯片的片选端一起经地址译码电路来获得,以免发生地址冲突。I/O口线:可以根据用户需要连接外部设备。(3)采用8155扩展I/O口Intel 8155芯片内容含有256B的RAM存储器(静态),RAM的存取时间为400s。2个可编程的8位并行口PA和PB,1个可编程的6位并行PC,以及1个14位减法定时器/计数器。PA口和PB口可工作与基本输入/输出方式(同8255的方式0)或选通输入/输出方式(同8255的方式1)。8155可以直接与MCS-51单片机相连,不需要增加任何硬件逻辑。由于8155既有I/O口又具有RAM和定时器/计数器,因而是MCS-51单片机系统中常选用的外围接口芯片之一12。8155的内部结构如下:容量为256B×8位的静态RAMI/0接口部分:端口A,可编程8位I/0端口PA07;端口B,可编程8位I/0端口PB07;端口C,可编程6位,I/O 端口PC05;命令寄存器,8位寄存器,只允许写入;状态寄存器,8位寄存器,只允许读出。定时器/计数器部分:8155是一个14位的二进制减法定时器/计数器。8155具有40个引脚,采用双列直插式封装,各引脚功能如下:AD0AD7(三态):是地址/数据总线,可以直接与AT89C51的P0口相连接。RESET:是由AT89C51提供的复位信号,作为总清零器件使用。ALE:允许地址锁存信号,该控制信号由AT89C51发出,将AD0AD7上的低8位地址片选信号及信号锁存在片内的锁存器内。 :片选信号,这是一个I/0转接口或存储器的选择信号。在片选信号有效下,如该引脚输入一个低电平,则将8155 RAM某单元的内容读至数据总线。若输入一个高电平,则将某I/0转接口电路的内容读至数据总线。PA0PA7:一组8根通用的I/0端口线,其输入输出方向由可编程的命令寄存器内容决定。PB0PB7:一组8位的通用I/0端口,其数据输入输出方向由可编程序的命令寄存器内容决定。PC0PC5:这是一组既具有通用I/0端口功能又具有对PA和PB起某种控制作用的I/0电路。图3.10 AT89C51和8155的接口电路Fig.3.10 Interface circuits of 8155 and AT89C51TIMER IN:这是14位二进制减法计数器的输入端。TIMER OUT:这是一计时器的输出引脚可由计时器的工作方式决定该输出信号的波形。Vcc为+5V的电源引脚,Vss为+5V的电源的地线。3.2 时钟模块采用日历时钟芯片DS12887构成计时系统,该芯片内部具有非易失性计时时钟,114个字节的NVSRAM,14个专用寄存器分别存放秒,分,时,星期,日,月,年等时间和日期数据。同时还有百年日历,写保护电路,方波发生器。所以一方面它可完成计时功能;另一方面它内部的日历数据,如年,月,日等,还可作为营运数据

    注意事项

    本文(2019出租车计价系统的设计.doc)为本站会员(上海哈登)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开