数字电子课程设计课题名称出租车计价器控制电路的设计所在院系机电学院班级07自动化<2)班学号200710320227姓名龚涛指导老师张玲时间2009-12-27景德镇陶瓷学院数字电子课程设计任务书班级:07自动化<2)班姓名:龚涛指导老师:张玲教研室主任签字:年月日目录0.前言41.设计要求及原理41.1 设计要求41.2 基本原理42.各单元设计说明52.1 单片机最小系统单元52.2 A44E霍尔传感器检测单元62.3 AT24C01存储单元72.4 键盘调整单元82.5 显示单元93程序设计93.1 系统主程序93.2 中断程序103.2.1 里程计数中断程序103.2.2 中途等待中断程序103.3 计算程序103.4 显示程序103.5 键盘程序104.0总电路图115.0原器件清单126.0参考文献120.前言随着出租车行业的发展,出租车已经是城市交通的重要组成部分,从加强行业管理以及减少司机与乘客的纠纷出发,具有良好性能的计价器对出租车司机和乘客来说都是很必要的。
而采用模拟电路和数字电路设计的计价器整体电路的规模较大,用到的器件多,造成故障率高,难调试。
而采用单片机进行的设计,相对来说功能强大,用较少的硬件和适当的软件相互配合可以很容易地实现设计要求,且灵活性强,可以通过软件编程来完成更多的附加功能。
本设计采用AT89S52单片机为主控器,以A44E霍尔传感器测距,实现对出租车的多功能的计价设计,并采用AT24C01实现在系统掉电的时候保存单价等信息,输出采用8段数码显示管。
本电路设计的计价器不但能实现基本的计价,而且还能根据白天,黑夜和中途等待来调节单价。
1.设计要求及原理1.1 设计要求出租车计价器根据乘客乘坐汽车行驶距离和等候时间的多少进行计价,并在行程中同步显示车费值。
从起步价开始,当汽车程行驶未满2公里时,均按起步价计算。
过2公里后,实现每1公里单价收费,中间遇暂停时,计程数不再增加,开始计时收费,测距收费和测时收费的和便构成了一位乘客的车费。
同时,白天和夜晚价格不同,可以进行切换。
白天单价、夜晚单价、等待单价和起步价格都可通过独立键盘进行调节。
<默认起步价为5元/2公里,里程单价白天为2元/公里,夜晚为3元/公里,等待计时单价为1元/2分钟,金额显示三位,单价显示两位,路程显示三位。
)1.2 基本原理计数器系统主要由五部分组成:A44E霍尔传感器、AT89S52单片机、独立键盘、EEPROM AT24C01和显示数码管。
霍尔传感器安装在车轮上,主要检测汽车行进的公里数,并产生一系列相应的脉冲输出,脉冲送到单片机进行处理,单片机根据程序设定通过计算脉冲数换算出行驶公里数,再根据从EEPROM中读取的价格等相关数据进行金额的计算,计算好的金额、里程和单价都实时地显示在数码管上。
独立键盘可以调节价格等相关数据,按下相应的按钮,产生信号交由单片机处理并实时显示出来,调节好的数据存储到EEPROM中,掉电后可以使调好的数据不丢失,下次得电后直接从EEPROM读到单片机,总体框图如图1。
图1 总体框图2.各单元设计说明2.1 单片机最小系统单元主控机系统采用了Atmel 公司生产的 AT89S52单片机,它含有256 字节数据存储器,内置8K 的电可擦除FLASH ROM,可重复编程,大小满足主控机软件系统设计,所以不必再扩展程序存储器。
复位电路和晶振电路是AT89S52 工作所需的最简外围电路。
单片机最小系统电路图如图2所示。
图2 单片机最小系统图AT89S52 的复位端是一个史密特触发输入,高电平有效。
RST端若由低电平上升到高电平并持续2个周期,系统将实现一次复位操作。
在复位电路中,按一下复位开关就使在RST端出现一段时间的高电平,外接11.0592M 晶振和两个30pF 电容组成系统的内部时钟电路。
2.2 A44E霍尔传感器检测单元A44E 属于开关型的霍尔器件,其工作电压范围比较宽<4.5~18V),其输出的信号符合TTL电平标准,可以直接接到单片机的IO 端口上,而且其最高检测频率可达到1MHZ。
A44E 集成霍耳开关由稳压器A、霍耳电势发生器(即硅霍耳片>B、差分放大器C、施密特触发器D和OC门输出E五个基本部分组成。
在输入端输入电压Vcc,经稳压器稳压后加在霍尔电势发生器的两端,根据霍尔效应原理,当霍尔片处在磁场中时,在垂直于磁场的方向通以电流,则与这二者相垂直的方向上将会产生霍尔电势差VH输出,该VH信号经放大器放大后送至施密特触发器整形,使其成为方波输送到OC门输出。
当施加的磁场达到工作点<即Bop)时,触发器输出高电压<相对于地电位),使三极管导通,此时OC门输出端输出低电压,三极管截止,使OC门输出高电压,这种状态为关。
这样两次电压变换,使霍尔开关完成了一次开关动作。
A44E霍尔传感器原理如图3所示。
图3 A44E霍尔传感器原理里程计算是通过安装在车轮上的霍尔传感器检测到的脉冲信号,送到单片机产生中断,单片机再根据程序设定,计算出里程。
其原理如图4所示。
图4 传感器测距示意图本系统选择了将A44E的脉冲输出口接到P3.3口外部中断1作为信号的输入端<这样可以减少程序设计的麻烦),车轮每转一圈<设车轮的周长是1M),霍尔开关就检测并输出信号,引起单片机的中断,对脉冲计数,当计数达到1000次时,即1公里,单片机就控制将金额自动增加,如图5。
图5 A44E霍尔元件接线图2.3 AT24C01存储单元存储单元的作用是在电源断开的时候,存储当前设定的单价信息。
AT24C01 是Ateml公司的1KB的电可擦除存储芯片,采用两线串行的总线和单片机通讯,电压最低可以到2.5V,额定电流为1mA,静态电流10uA(5.5V>,芯片内的资料可以在断电的情况下保存40年以上,而且采用8 脚的DIP 封装,使用方便。
AT24C02芯片引脚配置如图6所示。
存储单元电路连接如图7所示。
图 7 存储单元电路原理图图中R4、R5 是上拉电阻,其作用是减少AT24C01 的静态功耗。
由于AT24C01的数据线和地址线是复用的,采用串口的方式传送数据,所以只用两根线SCL<时钟脉冲)和SDA<数据/地址)与单片机P2.2和P2.3口连接,进行传送数据。
每当设定一次单价,系统就自动调用存储程序,将单价信息保存在芯片内;当系统重新上电的时候,自动调用读存储器程序,将存储器内的单价等信息,读到缓存单元中,供主程序使用。
2.4 键盘调整单元当单价等信息需要进行修改时,就要用到键盘进行修改。
由于调节信息不多,故采用4个独立键盘即可,分别实现清零、切换、增大、减小和功能等作用。
电路原理如图8所示。
图8 键盘调整单元接线图S1:接P1.0口,对上一次的计费进行清零,为下次载客准备S2:接P1.1口,实现白天和夜晚单价的切换;当功能键S4按下时,S2可对数据进行增大。
S3:接P1.2口,当功能键S4按下时,S3可对数据进行减小。
S4:接P1.3口,按1次,进入调整白天单价;按2次,进入调整夜晚单价;按3次,进入调整等待单价;按4次,进入调整起步价;按5次,返回。
2.5 显示单元显示单元由7个8段共阳数码管组成,采用动态扫描进行显示。
前三个数码管分别接P3.0、P3.1和P3.2,用于显示总金额;中间两个分别接P3.4,P3.5,P3.6,用于显示里程;后边两个分别接P3.7和P3.8,用于显示单价。
电路如图9所示。
图9 数码管显示图3程序设计3.1 系统主程序在主程序模块中,需要完成对各参量和接口的初始化、出租车起价和单价的初始化以及中断、计算、循环等工作。
另外,在主程序模块中还需要设置启动/清除标志寄存器、里程寄存器和价格寄存器,并对它们进行初始化。
然后,主程序将根据各标志寄存器的内容,分别完成启动、清除、计程和计价等不同的操作。
当汽车运行起来时,就启动计价,根据里程寄存器中的内容计算和判断行驶里程是否已超过起步价公里数。
若已超过,则根据里程值、每公里的单价数和起步价数来计算出当前的总金额,并将结果存于总金额寄存器中;中途等待时,无脉冲输入,不产生中断,当时间超过等待设定值时,开始进行计时,并把等待价格加到总金额里,然后将总金额、里程和单价送数码管显示出来。
程序流程如图10所示。
图10 主程序流程图图11 计算程序流程图3.2 中断程序3.2.1 里程计数中断程序每当霍尔传感器输出一个低电平信号就使单片机中断一次,当里程计数器对里程脉冲计满1000次时,进入里程计数中断服务程序中,里程变量加一。
主函数中总金额也相应地变化。
3.2.2 中途等待中断程序在中途等待中断程序中,每1ms产生一次中断,将当前里程值送入某个缓存变量,每1分钟将缓存变量中的值和当前里程值比较,当汽车停止,霍尔传感器1分钟没有输出信号,当前里程值和缓存变量内的值相同,则进入等待计时,每1分钟记一次价格。
3.3 计算程序计算程序根据里程数分别进入不同的计算公式。
如果里程大于2公里,则执行公式:总金额=起步价+<里程-2)*单价+等待时间*等待单价;否则,执行公式:总金额=起步价+等待时间*等待单价。
程序流程图如图11所示。
3.4 显示程序显示程序利用定时器每1ms产生一次中断,相应变量置位,点亮一个数码管,显示一位数据,利用主函数内的循环,实现动态扫描显示,同时根据数码管余辉和人眼暂留现象,即可实现显示。
3.5 键盘程序键盘采用查询的方式,放在主程序中,当没有按键按下的时候,单片机循环主程序,一旦右按键按下,便转向相应的子程序处理,处理结束再返回。
流程图如图12。
图12 键盘程序流程图4.0总电路图17 / 195.0原器件清单6.0参考文献[1] 马淑华,王凤文,张美金编著. 单片机原理与接口技术<第二版). 北京:北京邮电大学出版社,2007.[2] 谭浩强著. C程序设计<第三版). 北京:清华大学出版社,2005.[3]《电子技术基础》<数字部分)主编:康光华高等教育出版社[4]《Protel99入门与提高》主编:高鹏安涛寇怀成人民邮电出版社[5]《电子技术课程设计》主编:历雅萍、易映萍高等教育出版社[6]《电子线路设计、实验、测试》主编:谢美自华中理工出版社[7]《经典集成电路400例》主编:任致程机械工业出版社[8]《实用电子控制电路》主编:方大千、鲍萧伟国防工业出版社[9]《单片机原理及接口技术》主编:余发山中国矿业大学出版社。