入口检测到有脉冲信号?YesNo等待时间>10分钟?YesNo总金额=+1元/分钟返回图3.4 中途等待中断程序流程图
4.3显示程序
液晶显示包括时间、模式、里程、起步价及单价的显示。其中单价分为白天单价和夜晚单价。在6点到22点之间自动显示白天单价,而在6点到22点之外,将自动切换显示夜晚单价。
入口初始化6点<时钟<22点?YesNo显示时间显示模式显示里程、总金额、起步价显示白天单价显示夜晚单价返回 图3.5 LCD液晶显示程序流程图
4.5键盘程序
本次设计中使用了四个按键,它们的作用分别是模式选择、数据的增减。其
16
中模式键包括外部模式键和内部模式键。外部模式键只能修改时间,而内部模式键不仅可以时间修改,还能修改单价和起步价。之所以设置两个模式键,就是为了防止司机私自修改单价和起步价。
入口P23==0?YESLCD清零延时P23==0?YESMode++NONOP21==0?YES延时NOP22==0?YES延时NOP23==0?YES延时P21==0?NOP22==0?NOP23==0?YSEMode=1NONOYSEMode==1?NOMode==2?NOMode==3?NOMode==4?NOMode==5?起步价加YES夜晚单价加YES白天单价加YES小时加YSEMode==1?NOMode==2?NONOMode==3?NOMode==4?NOMode==5?起步价减YES夜晚单价减YES小时减YES分钟加YES分钟减返回YES白天单价减YESYES图3.7 内部模式键程序流程图
17
入口P20==0?YESLCD清零延时P20==0?YESMode++NONOP21==0?YES延时NOP22==0?YES延时NOP20==0?YES延时P21==0?NOP22==0?NOP20==0?YSENONOYSEMode==0?NOMode==1?NOMode==2?YES小时加YES分钟加YSEMode==0?NOMode==1?NONOMode==2?YES分钟减语音及打印Mode=0YES语音YES返回YES小时减
图3.8 外部模式键程序流程图
4.6微型打印机
串行打印程序主要有波特率和串行口UAR的初始化,发送、接受模块的设计在标志控制方式下,当打印机可以接收数据时,信号线DTR为准备状态,即Mark状态,主计机根DTR,为准备状态还是忙状态,而向打印机发送或停止发送数据;当DTR为 Space 时 ,发送数据;当DTR为Mark状态时,停止发送,等待下一状态Space。其时序如图3.12所示。
18
图3.9 标志控制时序图
系统控制软件包括:AT89S52 串行口初始化打印机缓冲区首址选址打印机状态判断数据发送/接受打印数据设定等。串行接口编程流程图如图 3.13所示。
入口AT89S52初始化打印缓冲区选址DTR为SPACE?No发送数据发送下一位数据?No返回图3.10 打印程序流程图
第五章 系统调试
里程计数曾考虑过两个方案:霍尔传感器及光电传感器,由于实验室有霍尔传感器,所以最终采用A44E霍尔传感器进行里程测量。掉电储存单元采用AT24C02,其寿命可达40多年,质量可靠。语音芯片最初选用美国ISD公司的
19
2500芯片,ISD2500最大特点在于片内E2PROM容量为480K,所以录放时间长。但考虑到性价比,最终选用SYN6288语音模块,他不仅价格便宜,而且足以提供出租车语音播报的功能。按键为4个独立键盘,通过在程序中加入LED亮灭及液晶显示判断键盘完好。
由于汽车内部电源为12v,而单片机电源为5v,所以采用7805电源模块使12v电源降压到5v,使整个硬件电路得以正常工作。
在硬件选型及接口分配完成后便是软件程序设计。由于软件程序设计工作量大,所以里程、显示、时间、储存、语音等模块化,这样思路清晰且便于调试。
时间、显示、按键、里程及等待时间的程序较为顺利。测试如下:
表4.1 里程计费程序调试 时间 单价/元 起步价/元 等待时间/分钟 里程/公里 总金额/元 0 1 10 0 4 11.8 11 1 11 12 4 13.8 9:00 1.8 10 0 3 10 0 4 12.2 1 3 10 10 4 12.2 23:00 2.2 注:其中等待时间为超过10分钟每加一分钟总金额加1元。
AT24C02程序设计主要包括单价、起步价的掉电储存。通过按键改变单价及起步价,系统重新上电后单价、起步价为改变后的数据。按键由4个独立键盘组成,最初设计为:P20模式选择键,P21时间、价格加键,P22时间、价格减键,P23语音、打印键。但考虑到司机不能私自修改单价、起步价,所以重新分配4个按键的功能,其中P21和P22在原有功能基础上增加语音和打印功能,P20为外部模式选择(只允许修改时间),P23为内部模式选择(包括时间、单价、起步价修改)。
表4.2 按键及掉电储存检测 修改内容 修改测试 原始数据 修改后 掉电储存 白天单价/元 1.8 1.5 1.5 夜晚单价/元 2.2 2.5 2.5 起步价/元 10.0 10.5 10.5 总金额初始值/元 10.0 10.5 10.5 注:修改起步价,总金额初始值始终等于起步价。
通过上表,可知实验验证无误。
在语音模块与单片机完成连接后,发现程序无法成功下载,经同学帮组得知,在程序下载前,应该先断开语音串口连接。程序成功下载后,通过P20使模式值Mode显示为0,按下P21,成功播报“乘客您好 请系好安全带”,按下P22,成功播报“已抵达目的地 请付款”,播报语音清晰。
20
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库2012、10、31出租车计价器毕业论文设计10机械 邱伟(4)在线全文阅读。
相关推荐: