首页 > 范文大全 > 正文

基于AT89C2051单片机汽车计费系统的设计

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于AT89C2051单片机汽车计费系统的设计范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

【摘要】汽车计价器设计at89c2051 单片机为核心控制元件,利用灵敏的霍尔传感器测距,采用AT24C02 实现系统掉电时的价格和时间等信息保存,输出采用6 位LED数码管分屏显示单价、路程、总金额以及时间。

【关键词】单片机;计费系统;霍尔传感器

一、引言

汽车计价器是出租车行业发展的重要标志。它关系着交易双方的利益。具有良好性能的计价器无论是对广大汽车司机朋友还是乘客来说都是很必要的。随着汽车行业的日渐发展,汽车计价器的功能已从刚开始的只显示路程发展到了能够自主计费,以及打印发票和语音提示、按时间自主变动单价等功能。现在各大城市出租车行业都已普及自动计价器,所以计价器技术的发展已成定局。而部分小城市尚未普及,但随着城市建设日益加快,汽车行业也将加速发展,计价器的普及也是必然的,所以汽车计价器的市场还是十分有潜力的。

二、硬件设计方案

采用传统的模拟电路和数字电路设计的计价器,其整体电路规模较大,故障率高,难调试,功能不易实现。本次设计我们利用单片机AT89C2051芯片作为设计的核心,利用霍尔传感器测距,实现对汽车计价统计,采用AT24C02 实现在系统掉电的时候保存单价和系统时间等信息,显示采用6位LED数码管,分屏显示单价、路程、总金额以及时间。本系统具有功能强大、电路简单、便于维护等特点。总体设计框图如图2.1所示。

1.单片机

AT89C2051是美国ATMEL公司生产的低电压、高性能CMOS 8位单片机,只有20引脚。片内含有2K字节可反复擦写的只读程序存储器和128字节的随机数据存储器,兼容标准MCS-51指令系统,内置通用8位中央处理器和Flash存储单元。

该系统中AT89C2051作为总控芯片,主要具有对测量结果进行运算处理、控制显示及保证系统正常工作等功能。

2.里程计算设计

本次设计里程计算采用霍尔传感器A44E,里程计算是通过安装在车轮上的霍尔传感器A44E检测到的信号,送到单片机,经处理计算,送给显示单元的。其原理如图2.2所示。

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

当前单价×公里数=金额。

图2.2 传感器测距示意图

3.显示单元设计

本设计具有单价、路程、金额显示输出,加上我们另外扩展了时钟显示(包含时分秒的显示),采用LCD液晶屏显示,在距离屏幕较远处无法看清数据,不能满足要求,而且在白天其对比度也不能够满足要求,因此我们采用6位LED数码管显示方式。

数据的分屏的显示是通过按键S1来实现切换的,在汽车不走的时候,按下S1,可以实现数据的分屏显示,车在行走的时候只有总金额和单价显示屏在显示,当到达目的地的时候,客户要求查看总的里程的时候,就可以按下S1 切换到里程和单价显示屏,供客户查询。

4.AT24C02掉电存储单元的设计

掉电存储单元的作用是在电源断开的时候,存储当前设定的单价信息。AT24C02是ATMEL 公司的2KB字节的电可擦除存储芯片,采用两线串行的总线和单片机通讯,电压最低可以到2.5V,额定电流为1mA,静态电流10Ua(5.5V),芯片内的资料可以在断电的情况下保存40年以上,而且采用8脚的DIP封装,使用方便。

其电路如图2.3所示。

图中R8、R10是上拉电阻,其作用是减少AT24C02的静态功耗,由于AT24C02的数据线和地址线是复用的,采用串口的方式传送数据,所以只用两根线SCL(移位脉冲)和SDA(数据/地址)与单片机传送数据。

每当设定一次单价,系统就自动调用存储程序,将单价信息保存在芯片内。当系统重新上电的时候,自动调用读存储器程序,将存储器内的单价等信息,读到缓存单元中,供主程序使用。

5.按键设计

(1)S1按键的功能

在汽车不走的时候,按下S1,可以实现数据的分屏显示,车在行走的时候只有总金额和单价显示屏在显示,当到达目的地的时候,客户要求查看总的里程的时候,就可以按下S1 切换到里程和单价显示屏,供客户查询。

(2)S2按键的功能

在按下S1按键之后,若接着按下S2键则进行单价调整(默认为调整白天单价),当接着按下S1时,则进行晚上单价调,再次按下S1可进行中途等待单价调整。当单价调整结束后,可以通过按下S2按键进行时间调整,默认为调整时,接着按下S1可进行调整分,分调整后再接下S1可进行秒调整。当时调整完成后,若接着按下S2则又可进行单价调整。

(3)S3按键的功能

在显示金额及单价时,若按下S3键则显示路程和单价,再次按下S3则可返回显示金额及单价。

(4)S4按键的功能

在按下S1按键之后,若接着按下S4按键,则进行设定默认晚上单价,并启动计价器,若没有按下S4则可设定默认单价(白天),并启动计价器。当设定默认晚上单价结束后,再次接下S4按键则可设定默认中途等待单价,并启动计价器。当设定默认中途等待单价后,若还按一次S4,则返回系统时间的显示。

三、软件设计

本系统的软件设计主要可分为主程序模块、定时计数中断程序、里程计数中断服务程序、中途等待中断服务程序、显示子程序服务程序、键盘服务程序六大模块。

主程序模块完成对各接口芯片的初始化、汽车起价和单价的初始化、中断向量的设计以及开中断、循环等待等工作。

另外,在主程序模块中还需要设置启动/清除标志寄存器、里程寄存器和价格寄存器,并对它们进行初始化。然后,主程序将根据各标志寄存器的内容,分别完成启动、清除、计程和计价等不同的操作。

四、结论

采用AT89C2051单片机作为核心的控制元件,灵敏的霍尔开关型器件A44E霍尔传感器,因此本汽车计价器具有功能强、性能可靠、电路简单、成本低实用性强等特点,加上经过优化的程序,使其有很高的智能化水平。