您好,欢迎来到九壹网。
搜索
您的当前位置:首页基于单片机的出租车计价器的设计

基于单片机的出租车计价器的设计

来源:九壹网
毕业设计(论文)说明书

摘要

随着电子技术的发展,出租车计价器技术也在不断进步和提高,国内出租车计价器已经经历了四个阶段的发展,从传统的全部由机械元器件组成的机械式,到半电子式即用电子线路代替部分机械元器件的出租车计价器,再从集成电路式到目前的单片机系统设计的出租车计价器。

本设计是以单片机ATC51为核心,以8279、7407, 75451等智能芯片为外设的出租车计价器的微机系统设计,该系统满足集计程、计时、计费、存储、查看、统计等多种计量功能为一体的出租车计价器的实用要求。其里程计算是将A4EE霍尔传感器安装在车轮上并,将检测到的信号传输给单片机,由车轮滚动次数来计算汽车的行驶路程。设计中充分考虑了出租车行驶过程中的各种突发情况,利用键盘设计来切换计费模式予以解决。给出了硬件电路图及主程序流程图,阐述了软硬件设计过程中关键技术的处理。

1

毕业设计(论文)说明书

Abstract

Along with the electronic technology development, the rental car mileage fare meter technology unceasingly is also progressing and the enhancement, the domestic rental car mileage fare meter has already experienced four stage development, from the tradition completely the mechanical type which is composed by the mechanical primary device, namely replaces the part mechanical primary device to half electronic formula with the electronic circuit the rental car mileage fare meter, again from integrated circuit type to present monolithic integrated circuit system design rental car mileage fare meter.

This design is take monolithic integrated circuit ATC51 as a core, take 8279, 7407, 75451 and so on the intelligent chips as the peripheral rental car mileage fare meter microcomputer system design, this system satisfies the collection idea regulation, the time, the cost, the memory, the examination, the statistics and so on many kinds of measurement function is a body rental car mileage fare meter practical request.Its hodometer is sensor installs A4EE the Hall on the wheel and, will examine the signaling will give the monolithic integrated circuit, will calculate the automobile based on the wheel trundle number of times the travel distance.In the design had considered fully in rental car travel process each kind of sharp-edged situation, cuts the cost pattern using the keyboard design to solve.Has given the hardware circuit diagram and the master routine flow chart, elaborated in the software and hardware design process key technologies processing.

2

毕业设计(论文)说明书

目录

摘要...................................................1

Abstract...............................................1

1. 绪论................................................1

1.1 概述............................................1 1.2 出租车计价器的研究现状..........................2 2. 系统总体构成方案选定................................3 2.1 出租车计价器系统构成及工作原理..................3 2.2 计价器各组成部分的作用..........................3

2.2.1 里程计算单元.................................4 2.2.2 键盘控制及LED显示部分.......................4 2.2.3 单片机部分...................................4 3. 系统硬件设计........................................7 3.1 里程计算单元硬件设计............................7 3.2 键盘控制及LED显示硬件设计设计..................9

3.2.1暂停键......................................9 3.2.2 8279动态六位LED显示及三个按键的实现.........9 3.2.3 C51串口静态六位LED显示...................10 3.2.4 8279芯片介绍................................10 3.2.5 LED的结构及工作原理.........................16

3.3 单片机部分硬件设计.............................17 3.3.1 ATC51的特点...............................17 3.3.2 ATC51的功能描述...........................17 3.3.3 ATC51的引脚功能...........................18 4. 系统软件设计.......................................20 4.1 主程序模块.....................................20 4.2 单价、起价调整模式................. ............20 4.3 定时中断服务程序................. .... .........21 4.4 里程计数中断服务程序................. .... .....22 4.5 中途等待中断服务程序................. ......... 22 4.6 显示子程序服务程序................. ...........22 4.7 键盘服务程序................. ................. 22 4.8 C51芯片内部RAM分配................. ..........22 4.9 标志位及关键技术的程序说明................. ...23 4.9.1 内部RAM 3F................. ................23

3

毕业设计(论文)说明书

4.9.2 内部RAM 4F................. ................23 4.9.3 内部RAM 5F................. ......... ......23 4.9.4 三个按键程序设计................. .........23 4.9.5 定时、技术、中断设定................. .... ...24 5. 结论................. ...................... .......26

致谢................. ..................... ..........27 参考文献................. .... ................. ......28

4

毕业设计(论文)说明书

1.绪论

1.1 概述

随着生活水平的提高,人们已不再满足于衣食住的享受,出行的舒适已受到越来越多人的关注。于是,出租车行业以低价高质的服务给人们带来了出行的享受。但是总存在着买卖纠纷困扰着行业的发展。而在出租车行业中解决这一矛盾的最好方法就是改良计价器。用更加精良的计价器来为乘客提供更加方便快捷的服务。凡坐过出租车的人都知道,只要汽车一开动,随着行驶里程的增加,就会看到汽车前面的计价器里程数字显示的读数从零逐渐增大,而当行驶到某一值时(如5KM)计费数字显示开始从起步价(如10元)增加。当出租车到达某地需要在那里等候时,司机只要按一下“计时”键,每等候一定时间,计费显示就增加一个该收的等候费用。汽车继续行驶时,停止计算等候费,继续增加里程计费。到达目的地,便可按显示的数字收费。

我过在70年代开始出现出租车,但那时的计费系统大都是国外进口不但不准确,价格还十分昂贵。随着改革开放日益深入,出租车行业的发展势头已十分突出,国内各机械厂家纷纷推出国产计价器。出租车计价器的功能从刚开始的只显示路程(需要司机自己定价,计算后四舍五入),到能够自主计费,以及现在的能够打和语音提示、按时间自主变动单价等功能。随着城市旅游业的发展,出租车行业已成为城市的窗口,象征着一个城市的文明程度。

最早的出租车计价器是机械式,用齿轮比的方式来计算出租车所跑的里程数,并由里程数来换算车费。但是机械齿轮体积较

5

毕业设计(论文)说明书

大,计算不是很准确,而且容易磨损。后来采模拟电路和数字电路设计的计价器整体电路的规模较大,用到的器件多,造成故障率高,难调试,对于模式的切换需要用到机械开关,机械开关时间久了会造成接触不良,功能不易实现。为此我们采用了单片机进行设计,相对来说功能强大,用较少的硬件和适当的软件相互配合可以很容易的实现设计要求,且灵活性强,可以通过软件编程来完成更多的附加功能。

本设计式采用单片机制作,其核心部分是ATC51单片机,以8279、7407, 75451等智能芯片为外设,满足集计程、计时、计费、存储、查看、统计等多种计量功能。由霍尔传感器A44E检测车轮滚动产生脉冲信号,将信号传送给单片机来进行里程计算。

1.2出租车计价器的研究现状

国内出租车计价器已经经历了四个阶段的发展,从传统的全部由机械元器件组成的机械式,到半电子式即用电子线路代替部分机械元器件的出租车计价器,再从集成电路式到目前的单片机系统设计的出租车计价器。

使用单片机设计的出租车计价器功能强大,能够满足计程、计时、计费、存储、查看、统计等多种计量功能。利用软件编程可设计出不同的计费模式,不同的情况采取不同的收费方式,使司机在工作中能够应付各种突发状况,设计理念更加人性化,符合当今社会的需要。其各种功能由键盘控制,操作简单。且计价器造价低廉,安装方便,成为当今出租车司机的首选产品。

6

毕业设计(论文)说明书

2.系统总体构成及方案选定

2.1 出租车计价器系统构成及工作原理

出租车计价器根据乘客乘坐汽车行驶距离和等候时间的多少进行计价,并在行程中同步显示车费值。从起步价开始,当汽车程行驶未满3公里时,均按起步价计算。过3公里后,实现每1公里单价收费,中间遇暂停时,计程数不再增加,开始计时收费,测距收费和测时收费的和便构成了一位乘客的车费。完整的出租车计价器还应包括存储,查看,统计等功能项目。(默认起步价为3元/公里,里程单价为1元/公里,等待计时单价为0.5元/公里)

该计价器设计采用单片机控制。主要是利用单片机丰富的I/O端口以及其控制的灵活性,实现基本的里程计价功能和价格调整、时钟显示供能。其原理框图如图1所示。 里程计算单元

图1 计价器原理框图

串口显示驱动电路 键盘控制 总金额显示 单价显示 S51 单片机 2.2 计价器各组成部分的作用

7

毕业设计(论文)说明书

本设计计价器由里程计算单元,键盘控制,单片机核心部分,LED显示部分组成, 2.2.1 里程计算单元

里程计算是通过安装在车轮上的霍尔传感器A44E检测到的信号,送到单片机,经处理计算,送给显示单元的。

图2 里程单元结构图

2.2.2 键盘控制及LED显示部分

键盘控制采用一种通用可编程键盘8279,它能完成键盘输入和显示控制两种功能。本设计采用六位LE,其中计程屏两位计程显示,同步显示公里数,路程精确到1km。四位LED同步显示该乘客应所付的总金额

2.2.3 单片机部分

单片机部分是整个设计的核心部分,采用的是ATC51。

目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保

8

毕业设计(论文)说明书

障系统,录象机、摄象机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴: 1.在智能仪器仪表上的应用

单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。采用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更加强大。例如精密的测量设备(功率计,示波器,各种分析仪)。 2.在工业控制中的应用

用单片机可以构成形式多样的控制系统、数据采集系统。例如工厂流水线的智能化管理,电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等。 3.在家用电器中的应用

可以这样说,现在的家用电器基本上都采用了单片机控制,从电饭褒、洗衣机、电冰箱、空调机、彩电、其他音响视频器材、再到电子秤量设备,五花八门,无所不在。 4.在计算机网络和通信领域中的应用

现代的单片机普遍具备通信接口,可以很方便地与计算机进行数据通信,为在计算机网络和通信设备间的应用提供了极好的物质条件,现在的通信设备基本上都实现了单片机智能控制,从

9

毕业设计(论文)说明书

手机,电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。

5.单片机在医用设备领域中的应用

单片机在医用设备中的用途亦相当广泛,例如医用呼吸机,各种分析仪,监护仪,超声诊断设备及病床呼叫系统等等。此外,单片机在工商,金融,科研、教育,国防航空航天等领域都有着十分广泛的用途。

单片机以其强大的功能,低廉的价格,简单的操作渗透倒我们甚或的方方面面,因此本设计也是采用的单片机做为其核心部件。

10

毕业设计(论文)说明书

3.系统硬件设计

3.1 里程计算单元硬件设计

出租车中需要一个能准确获得车轮转动即路程计量信号的装置,以得到标准的脉冲信号送入单片机T1即P3.5引 脚,由单片机完成计程数及车费的换算及显示。我们在汽车联轴器按圆周间隔嵌入磁钢,用霍尔传感器集成芯片44E检测并输出脉冲,按照标准,23每获得66个脉冲便表示车已行程 10米。霍尔传感器集成芯片44E有信号转换、电压放大、整形输出等功能。为增加其抗干扰,再通过光偶送入P3.5引脚。原理图如图3所示。 5V5V 3KΩ接C51P3.5引脚霍尔44E12312 图3 里程计算、计价单元 由于A44E 属于开关型的霍尔器件,其工作电压范围比较宽(4.5~18V),其输出的信号符合TTL 电平标准,可以直接接到单片机的IO 端口上,而且其最高检测频率可达到1MHZ。 11 毕业设计(论文)说明书

图4 集成开关型霍尔传感器原理图

A44E 集成霍耳开关由稳压器A、霍耳电势发生器(即硅霍耳片)B、差分放大器C、施密特触发器D 和OC 门输出E 五个基本部分组成。在输入端输入电压CC V ,经稳压器稳压后加在霍耳电势发生器的两端,根据霍耳效应原理,当霍耳片处在磁场中时,在垂直于磁场的方向通以电流,则与这二者相垂直的方向上将会产生霍耳电势差H V 输出,该H V 信号经放大器放大后送至施密特触发器整形,使其成为方波输送到OC 门输出。当施加的磁场达到“工作点”(即OP B )时,触发器输出高电压(相对于地电位),使三极管导通,此时OC 门输出端输出低电压,通常称这种状态为“开”。当施加的磁场达到“释放点”(即rP B )时,触发器输出低电压,三极管截止,使OC 门输出高电压,这种状态为“关”。这样两次电压变换,使霍耳开关完成了一次开关动作。

我们选择了P3.2 口作为信号的输入端,内部采用外部中断0(这样可以减少程序设计的麻烦),车轮每转一圈(我们设车轮的周长是1 米),霍尔开关就检测并输出信号,引起单片的中断,对脉计数,当计数达到1000 次时,也就是1 公里,单片机就控制将金额自动的加增加,其计算公式:当前单价× 公里数=金额。

12

毕业设计(论文)说明书

3.2 键盘控制及LED显示硬件设计设计

3.2.1 暂停键

在行车过程中,难免会碰到红灯或者乘客遇事要求停车, 转入计时系统,并按时计费,所以应设暂停键,启动计时。按等待单价计费,汽车开动后,再转入计程计费。按此要求在INT1设暂停键(单刀单掷开关),低电平触发。此暂停键与出租车司机刹车手柄联动。停车按下, INT1为低电平,产生中断,进入计时中断程序,开车拉起, INT1为高电平,结束计时中断,返回主程序,继续计程计费。

3.2.2 8279动态六位LED显示及三个按键“存储”“查看”“全天”的实现

8279是一种通用可编程键盘,显示器接口芯片,它能完成键盘输入和显示控制两种功能。键盘部分提供一种扫描工作方式,可与个按键的矩阵键盘连接,能对键盘不断扫描,自动消抖,自动识别按下的键并给出编码,能对双键或N键同时按下实行保护。显示部分为发光二极管,荧光管 及其他显示器提供了按扫描方式工作的显示接口,它为显示器提供多路复用信号,可显示多达16位的字符或数字。由于LED为动态显示,为了保证显示器有一定的亮度, 必须要有驱动芯片,位驱动芯片选75451,它最大驱动电流为 300mA,段驱动芯片选7407,最大驱动电流为40mA,串联保护电阻68欧姆,保证段工作电流为20mA左右。

六位LED显示:其中计程屏两位计程显示,同步显示公里数,路程精确到1km。计满99km。

金额屏:四位LED同步显示该乘客应所付的总金额。 存储键:结束本次乘客的行程,程序转入下一位乘客时,司机

13

毕业设计(论文)说明书

必按键。

查看键:查看上次乘客的行程公里数和钱数。再按一次,查看上上次乘客的行程公里数和钱数,依此类推……

全天键: 统计一天中司机所带乘客的总公里数及乘车费用。 在本系统中,用8279实现3个按键和6个LED显示。原理图如图5所示。(附录1)

3.2.3 C51串口静态六位LED显示

串口静态八位LED显示:其中单价占两位LED显示公里的单价计费为1.0元/公里,此数由在行车时固定,初始化时即送入。计时屏占四位LED计时显示,暂停键按下后从零秒开始计时,计满59min59s。在设计中,通过单片机的串行口,输出数据到外接的6个串入并出的移位寄存器( 74LS1),由这6个移位寄存器驱动6个共阴极的LED数码管,达到数据串行输出、驱动显示的目的。

3.2.4 8279芯片介绍

1.8279可编程键盘/显示接口8279的引脚功能 8279采用单一+5V电源供电,40脚封装。

DB0~DB7:双向数据总线,用来传送8279与CPU之间的数据和命令。

CLK:时钟输入线,用以产生内部定时的时钟脉冲。

RESET:复位输入线,8279复位后被置为字符显示左端输入,二键闭锁的触点回弹型式,程序时钟前置分频器被置为31,RESET信号为高电平有效。

CS:片选输入线,低电平有效,单片机在CS端为低时可以对8279

14

毕业设计(论文)说明书

读/写操作。

A0:缓冲器低位地址,当A0为高电平时,表示数据总线上为命令或状态, 当为低电平时,表示数据总线上为命令或状态,当为低电平时,表示数据总线上为数据。

RD:读信号输入线,低电平有效,将缓冲器读出,数据送往外部总线。

WR:写信号输入线,低电平有效,将缓立器读出,将数据从外部数据总线写入8279的缓冲器。 RL2-- 1 40 --VCC RL3-- 2 39 --RL 1 CLK-- 3 38 --RL 0 IRQ-- 4 37 --CNTL/STB RL4-- 5 36 --SHIFT RL5-- 6 35 --SL 3 RL6-- 7 34 --SL 2 RL7-- 8 33 --SL 1 RESRT-- 9 32 --SL 0 RD-- 10 31 --OUT B0 WR-- 11 30 --OUT B1 DB0-- 12 29 --OUT B2 DB1-- 13 28 --OUT B3 DB2-- 14 27 --OUT A0 DB3-- 15 26 --OUT A1 DB4-- 16 25 --OUT A2 DB5-- 17 24 --OUT A3

15

毕业设计(论文)说明书

DB6-- 18 23 --BD DB7-- 19 22 --CS VSS-- 20 21 --A0

IRQ:中断请求输出线,高电平有效,在键盘工作方式下,当FIFO/传感器RAM中有数据时,此中断线变为高电平,在FIFO/传感器RAM每次读出时,中断线就下降为低电平,若在RAM中还有信息,则此线重又变为高电平。在传感器工作方式中, 每当探测到传感器信号变化时,中断线就变为高电平。SL0~SL3:扫描线,用来扫描按键开关,传感器阵列和显示数字, 这些可被编程或被译码。 RL0~RL7:回送线,经过按键或传感器开关与扫描线联接, 这些回送线内部设置有上拉电路,使之保持为高电平,只有当一个按闭合时,对应的返回线变为低电平;无按键闭合时,均保持高电平。SHIFT:换位功能,当有开关闭合时被拉为低电平,没有按下SHIFT开关时,SHIFT输入端保持高电平,在键盘扫描方式中,按键一闭合,按键位置和换位输入状态一起被存贮起来。 CNTL/STB:当CNTL/STB开关闭合时将其拉到低电平,否则始终保持高电平, 对于键盘输入方式,此线用作控制输入端,当键被按下时,按键位置就和控制输入状态一起被存贮起来,在选通输入方式中,作选通用,把数据存入FIFO RAM中。

OUTA3~OUTA0及OUTB3~OUTB0:显示输出A口及B口,这两个口是1切换的数字显示。这两个端口可被控制,也可看成一个8位端口。

BD:空格显示,此输出端信号用于在数字转换时将显示空格或者用显示空格命令控制其显示空格字符。

16

毕业设计(论文)说明书

VCC:+5V电源输入线。 VSS:地线输入线。

2.8279的编程方法

1.8279可按其功能分为:键盘功能块;显示功能块;控制功能块;与CPU接口功能块控制功能块包括控制和定时寄存器,定时和控制,扫描计数器三部分,它主要用来控制键盘和显示功能块工作. 控制和定时寄存器:用于存贮来自CPU的编程命令,CPU对8279编程以确定键盘与显示器工作方式和其它工作条件时,先把命令控制数据放到数据总线上,然后使A0=1,WR=0CS=0,并在WR上升沿把命令键存在控制和定时寄存器中,并经译码,建立适当的功能. 定时和控制:它含基本的定时计数器,第一个计数器是一个分频系数为2-31的前置定时器,分频系数可由程序预置,使内部频率为100KHz,从而能给出5.1ms键盘扫描时间和10.3ms反跳时间,其它计数器将此基本频率分频后,提供适当的按键扫描.行扫描.键盘阵列扫描.以及显示器扫描次数.

扫描计数器:扫描计数器有两种工作方式,在编码工作方式时,计数器提供一种二进制计数,通过管脚SL0-SL3输出后经外部译码才能提供给键盘和显示器的扫描作用,在译码工作方式时,扫描计数器对最低二位进行译码,SL0-SL3输出4选1的译码信号,作为显示器和键盘的译码扫描.键盘功能块包括:返回缓冲器,键盘反跳及控制,8x8 FIFO传感器RAM,FIFO/传感器RAM状态。2.返回缓冲器与键盘反跳及控制返回线被返回缓冲器缓冲,在键盘工作方式中,这几条线被逐个检测,以找出该行键中闭合的键,如果反跳电路测知某键闭合,则它等待10.3ms,然后重核此键是否仍然闭合,

17

毕业设计(论文)说明书

如果仍闭合,那么该键在矩阵中的行列地址以及SHIFT和CNTL的状态一起被送到FIFORAM中,其在FIFO RAM中的数据格式如下: D7 D6 D5 D4 D3 D2 D1 D0 CNTL SHIFT SCAN RET URN

数据格式中,最高位CNTL,次高位为SHIFT状态,D5-D3来自扫描计数器,D2-D0来自返回计数器,扫描线计数器和回扫线计数器的值分别反映出被按下键的行.列的值,如果在传感器阵列中,返回线上的数据直接进入传感器RAM中相应于阵列中正被扫中的那行,这样每个开关位置就直接反映为一个传感器RAM的位置. FIFO/传感器RAM一个8x8 RAM,在键盘方式和选通方式中它是一个先入先出(FIFO)存贮器,每一条新的信息顺次写入,然后又按写入顺序读出,在传感器阵列扫描方式时,存贮器作为传感器RAM,这时RAM中的各行存着传感器阵列中相应行的状态.

FIF0/传感器RAM状态在键盘或选通方式中,FIFO状态跟踪FIFO中字符数量注意它是\"满\"还是\"空\写入或读出过多均被认作出错,当FIFO非空时,状态逻辑提供一个中断申请IRQ信号,在传感器阵列扫描方式中,若测知某一传感器变化时,IRQ则为有效高电平.FIFO状态字的低3位表示FIFO中的字符数,F表示FIFORAM已满;O(over mn)表示越限错误,即试图向已满的FIFO送另一字符;U(Under done)表示取空错误,即试图读取已空的FIFO.S/F有两种含义:在传感器扫描方式时,S/F表示在传感器RAM中至少包含了一个传感器闭合指示,在特殊错误方式时S/F位是出错标志,用来指示是否发生了多路同时闭合错误,Du位表示由于 CLEAR DISPLAY或CLEAR ALL命令尚末完成其消除操作而使显示RAM尚不可用.

18

毕业设计(论文)说明书

3.显示功能块包括:显示寄存器,16X8显示RAM,显示地址寄存器. 显示RAM和显示寄存器

8279内部有16X8的显示RAM,通过显示寄存器和两个四位端口0UT A0-3,0UT BO-3来刷新显示,显示器可以是白炽灯,也可以是8段数码管,显示RAM可以是16X8的形式,也可以构成两个16x4的RAM形式,显示RAM可由CPU进行读写,被读写的RAM字节地址由显示地址寄存器指示.

显示地址寄存器保存当前CPU读或写的那个RAM地址,以及正显示着的那两个4位半字节的地址,读写地址由CPU命令编程,也可置为每次读写后地址自动加1的工作方式,在设置了正确的工作方式后,显示RAM可直接由CPU读出,半字节A和半字节B地址自动由8279更新,以适应由CPU送入的数据,A和B半字节可送入,也可作为一个字送入,随CPU所设置的工作方式而定 3.I/O 接口功能块

8279通过数据缓冲器与I/O控制,使8279与CPU系统总线接口,I/O控制部分用CS.A0.RD和WR四条

线控制CPU与8279之间的数据交换,数据缓冲器是数据交换的双向通道,控制信号与数据交换间 的逻辑关系见下表: CS A0 WR RD

1 0 CPU从8279读状态 0 1 0 1 CPU向8279写状态 1 0 CPU从8279读数据 0 0 1 CPU向8279写数据 1 X X X 数据缓冲器输出呈三态

19

毕业设计(论文)说明书

x为任意数(0或1)

3.2.5 LED的结构及工作原理

每只LED由7个发光二极管按“日”字形排列,所有发光二极管的阳极连在一起称共阳极接法,阴极连在一起称共阴极接法。一般共阴极可以不需要接电阻,但共阳极接法中发光二极管必须外接电阻。图3(a)所示 :a-g七段及十进制小数点dp均为发光二极

9管。

VCCafeabgdcdbcefdpgdpDS?AMBERCA 若采用共阳极结构,则它们的阳极为一公共点,接电源正极。八只发光二极管的阴极上相,哪一个阴极接地,哪一段即发光,阴极也接高电平者便呈暗淡。如果共阴极结构,那么阴极公共点接地,各阳极,接高电平者发光,阳极接地者呈暗淡。此次设计采用共阳极。

LED显示器与单片机的接口一般有静态显示和动态显示两种方式。LED采用静态显示与单片机接口时,共阴极或共阳极点连接在一起接地或高电平。静态显示器接口电路,在位数较多时,电路比较复杂,需要的接口芯片较多,成本也较高。动态LED显示接口

12345678图6 LED结构图

20

毕业设计(论文)说明书

由于各个数码管共用同一个段码输出口,分时轮流通电的,从而大大简化了硬件线路,降低了成本。此次设计采用动态显示,目的就是为了节省硬件资源。LED显示器中每个发光二极管要通过5毫安-20毫安的电流才能达到正常亮度。 在本设计中,LED的主要功能就是可以把乘客坐出租车所用的费用显示出来,给乘客带来方便。

3.3 单片机部分硬件设计

本设计采用的是ATC51单片机。 3.3.1 ATC51的特点

ATC51具有以下几个特点:

·ATC51与MCS-51系列的单片机在指令系统和引脚上完全兼容;

·片内有4k字节在线可重复编程快擦写程序存储器; ·全静态工作,工作范围:0Hz~24MHz; ·三级程序存储器加密; ·128×8位内部RAM; ·32位双向输入输出线; ·两个十六位定时器/计数器; ·五个中断源,两级中断优先级; ·一个全双工的异步串行口; ·间歇和掉电两种工作方式。 3.3.2 ATC51的功能描述

ATC51是一种低损耗、高性能、CMOS八位微处理器,片内有4k字节的在线可重复编程、快速擦除快速写入程序的存储器,能

21

毕业设计(论文)说明书

重复写入/擦除1000次,数据保存时间为十年。它与MCA-51系列单片机在指令系统和引脚上完全兼容,不仅可完全代替MCS-51系列单片机,而且能使系统具有许多MCS-51系列产品没有的功能。

ATC51可构成真正的单片机最小应用系统,缩小系统体积,增加系统的可靠性,降低系统的成本。只要程序长度小于4K,四个I/O口全部提供给用户。可用5V电压编程,而且擦写时间仅需10毫秒,仅为8751/87C51的擦除时间的百分之一,与8751/87C51的12V电压擦写相比,不易损坏器件,没有两种电源的要求,改写时不拔下芯片,适合许多嵌入式控制领域。工作电压范围宽(2.7V~6V),全静态工作,工作频率宽在0Hz~24MHz之间,比8751/87C51等51系列的6MHz~12MHz更具有灵活性,系统能快能慢。ATC51芯片提供三级程序存储器加密,提供了方便灵活而可靠的硬加密手段,能完全保证程序或系统不被仿制。P0口是三态双向口,通称数据总线口,因为只有该口能直接用于对外部存储器的读/写操作。

3.3.3 ATC51引脚功能

ATC51单片机为40引脚芯片见图7 1 口线:P0、P1、P2、P3共四个八位口。

P0口是三态双向口,通称数据总线口,因为只有该口能直接用于对外部存储器的读/写操作。P0口也用以输出外部存储器的低8位地图1址。由于是分时输出,故应在外部加锁存器将此地址数据锁存,地址锁存信号用ALE。

P1口是专门供用户使用的I/O口,是准双向口。 P2口是从系统扩展时作高8位地址线用。不扩展外

22

毕业设计(论文)说明书

部存储器时,P2口也可以作为用户I/O口线使用,P2口也是准双向口。

P3口是双功能口,该口的每一位均可地定义为第一I/O功能或第二I/O功能。作为第一功能使用时操作同P1口。P3口的第二功能如表1所示。

2.控制口线:PSEN(片外选取控制)、ALE(地址锁存控制)、EA(片外存储器选择)、RESET(复位控制);

3.电源及时钟: VCC:供电电压。 GND:接地

XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。

C51P1.0P1.1P1.2P1.3P1.4P1.5ALEP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7INT0P27RDWRP3.0P3.1P20P21P22P3.3P3.5RESETXTAL1XTAL2GND 图7 ATC51

23

毕业设计(论文)说明书

4.系统软件设计

软件设计包括主程序模块,单价、起价调整模块,INT0、INT1中断程序模块,串口静态六位LED显示程序模块, 8279动态六位LED显示程序模块,T1计数中断程序模块,T0计时中断程序模块 ,延迟程序模块, 8279初始化程序模块等。

4.1 主程序模块

在主程序模块中,需要完成对各接口芯片的初始化、出租车起价和单价的初始化、中断向量的设计、开中断、循环等待以及启动/清除标志寄存器、里程寄存器和价格寄存器等工作。主程序将根据各标志寄存器的内容,分别完成启动、清除、计程和计价等不同的操作。主程序流程图如图8所示。

4.2 单价、起价调整模式

按键S0:模式选择按键。按下一次为里程单价调整,LED1亮;

按下第二次为起价调整,LED2亮;按下第三次为等待单价调整,LED3亮;再按下返回到了程单价调整,以此类推。

按键S1:位调整按键。按下一次为最低位调整;按下第二次

为次低位调整;以此类推至功能所需位数调整完或有中断插入。

按键S2:“+”按键。每按一次被调整位加1。 按键S3:“-”按键。每按一次被调整位减1。 按键S4:调整位完成按键。

24

毕业设计(论文)说明书

4.3 定时中断服务程序

在定时中断服务程序中,每 100ms 产生一次中断,当产生 10 次中断的时候,也就到了一秒,送数据到相应的显示缓冲单元,并调用显示子程序实时显示。

开 始 标志位、单价、起价赋初值 外部内部RAM、8279、 串口初始化 开中断INTO、INT1、T1, 启动T1 否 否 是 5FH赋00H

TF1=1? 是 5FH为0FFH换乘客否? 4FH内加1 4FH满3公里否? 是 否 更新44H-47H车费 更新40H-43H公里数 8279显示 图4 主程序流程图

25

毕业设计(论文)说明书

4.4里程计数中断服务程序

车每行进10米霍尔传感器输出一个低电平信号,使单片机中断一次,当里程计数器对里程脉冲计满100次时,就有程序将当前总额,使微机进入里程计数中断服务程序中。在该程序中,需要完成当前行驶里程数和总额的累加操作,并将结果存入里程和总额寄存器中。

4.5 中途等待中断服务程序

当在计数状态下霍尔开关没有输出信号,片内的 T1定时器便被启动,每当计时到达10分钟,就对当前金额加上中途等待的单价,以后每十分钟都自动加上中途等待的单价。当中途等待结束的时候,也就自动切换到正常的计价。

4.6 显示子程序服务程序

由于是分屏显示数据,所以就要用到3个显示子程序,分别是:分秒显示子程序(MS_DIS)、金额单价显示子程序(CP_DIS)、路程单价显示子程序(DP_DIS)。

4.7键盘服务程序

键盘采用查询的方式,放在主程序中,当没有按键按下的时候,单片机循环主程序,一旦有按键按下,便转向相应的子程序处理,处理结束再返回。

4.8 C51芯片内部RAM分配

26

毕业设计(论文)说明书

内部 RAM30H-35H:30H-31H 置单价,32H -35H 置电子钟时:分,秒。

内部 RAM40H-47H: 40H-43H 置公里数, 44H-47H置车费。 内部 RAM3EH、4EH:外部RAMDPTR 高八位及低八位指针。

4.9标志位及关键技术的程序说明

4.9.1 内部 RAM 3FH

1秒标志位,初值为00H,当1s计满时,3FH置#FFH。

同时1s计满时查看INT1是否为高电平,若为高电平,说明车开,则结束INT1中断,返回主程序中继续记程;若仍旧保持低电平,则继续计时。

4.9.2 内部 RAM 4FH

满3公里标志,由于三公里以前都为起步价,故设。4FH 初值设#00H, T1每满66,4FH加1,当满3公里时即4FH内为1FH,开始更新44H-47H 单元,加1元,并设4FH为固定值1FH。

4.9.3 内部 RAM 5FH

换乘客标志位。在主程序初始化,设5FH 为#00H,当司机结束一次乘车,按下INT0中断存储键,此时存储乘客信息,并设标志位5FH 为#FFH。

4.9.4 三个按键“存储”“查看”“全天” 实现程序:

……

27

毕业设计(论文)说明书

MOV DPTR,#7FFFH ; 8279命令状态口地址 MOV A,#40H MOVX @DPTR, A MOV DPTR,#7FFEH MOVX A,@DPTR MOV R7,#08H MOV DPTR, #KEY RL A JMP @A+DPTR

KEY: AJMP KEY1

AJMP KEY2 AJMP KEY3

KEY1: …… KEY2: …… KEY3: ……

……

4.9.5 定时、计数、中断设定

采用12MHZ的工作频率。

TMOD:设定时/计数器,初值为41H, T1计数, T0定时。 INT0, INT1: INT0,边沿触发, INT1,电平触发。

计数器 T1: 66、个脉冲,采用方式0,( 2-66)转换为十六进制为1FBEH 初值。

定时器 T0:选用方式1,定时50ms,所以得初值 ( 2- 501000),转换十六进制为3CB0H。

16

13

; 8279数据口地址 ;读键码

;若为00H,则为存储键 ;若为01H,则为查看键 ;若为02H,则为全天键 ;存储键程序 ;查看键程序 ;全天键程序

28

毕业设计(论文)说明书

中断优先级: INT0, INT1, T1, T0采用自然优先级。

29

毕业设计(论文)说明书

5 结论

本次的课程设计是自开始学习单片机到现在这半年来的第一次真正意义的亲自动手实践,理论知识远不能满足对单片机的应用的要求,这次的设计给我们提供了一次很好的理论联系实际的机会,使得我们对单片机的功能以及应用有了更深刻的了解和认识。

由于时间以及自己的能力有限,这次的设计中难免会有一些遗漏和不足,希望老师批评指正。

30

毕业设计(论文)说明书

参考文献

[1] 《单片机微型机原理及应用》 徐淑华等著 哈尔滨

工业大学出版社

[2] 《MCS-51单片机原理及接口技术》 马家辰等著 哈尔滨工

业大学出版社

[3] 《单片机原理与应用》 唐俊翟等著 冶金工业出版社 [4] 《出租汽车计价器使用、维修与检定问答》 杨建潮 中

国计量出版社

[5] 《MCS-51单片机应用系统设计技术》 何立民 北京航

天航空大学出版社

[6] 《单片微型计算机原理及应用》 张毅坤 西安电子科

技大学出版社

[7] 《单片机原理及应用》 李建忠 西安电子科技大学出版社

[8]《单片机原理与接口技术》 马淑华等著 北京邮电大学

出版社

31

毕业设计(论文)说明书

致谢

本文是我在前段时间工作的一个总结。在这里,我要向所有真诚的关心和帮助我的良师益友表示衷心的感谢。

首先,最感谢的是我的指导老师,他为我的毕业设计提出了许多宝贵的建议,使我个人的设计论文得以如期完成。

在论文即将完成之际,我的心情无法平静,从开始进入课题到论文的顺利完成,有多少同学、朋友给了我无言的帮助,在这里请接受我诚挚的谢意!

32

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 91gzw.com 版权所有 湘ICP备2023023988号-2

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务