基于51单片机出租车计价器设计(3)
汉字的显示一般采用图形的方式,事先从微机中提取要显示的汉字的点阵码(一般用字模提取软件),每个汉字占32B,分左右两半,各占16B,左边为1、3、 5 右边为2、4、6 根据在LCD上开始显示的行列号及每行的列数可找出显示RAM对应的地址,设立光标,送上要显示的汉字的第一字节,光标位置加 1,送第二个字节,换行按列对齐,送第三个字节 直到32B显示完就可以LCD上得到一个完整汉字。
有需要仿真原理图的可以联系本人。
图9 LCD显示单元
4 软件设计
本系统的软件设计主要分为系统主程序、数据处理子程序、和键盘扫描子程序三个模块,下面对每一块进行介绍。 4.1 系统主程序
本设计中,软件设计采用模块化操作,利用各个模块之间的相互联系,在设计中采用主程序调用各个子程序的方法,使程序通俗易懂,我们设计了整体程序流程图。
在main函数编写开始,要进行初始化,包括对系统初始化和对硬件设备进行初始化,并使硬件处于就绪状态。
在主程序模块中,需要完成对各接口芯片的初始化、出租车起价和单价的初始化、
有需要仿真原理图的可以联系本人。
中断向量的设计以及开中断、循环等待等工作。系统流程图如下图10。
图10 主程序流程图
4.2 数据处理子程序
每当霍尔传感器输出一个低电平信号就使单片机中断一次,在计数中断服务程序,里程和金额都相应变化,当然等待时间也换算成里程(当速度小于5km/h时5分钟想当于1公里)。计算程序根据里程数分别进入不同的计算公式。如果里程大于3公里,则执行公式:金额=(里程-3)*单价+5;否则,执行公式:总金额=起步价。程序流程图如图11所示。
有需要仿真原理图的可以联系本人。
图11 数据处理子程序
4.3 键盘扫描子程序
键盘采用查询的方式,放在主程序中,当没有按键按下的时候,单片机循环主程序,一旦右按键按下,便转向相应的子程序处理,处理结束再返回。
有需要仿真原理图的可以联系本人。
图12 键盘扫描程序
5 仿真与调试 5.1编译环境
本设计需要用Keil uVision4对C51程序进行编译,生成“.hex”文件,如图13:
图13 keil编译环境
软件编写完成后就可以编译生成HEX文件,然后将HEX文件加载到Proteus仿真文件中的单片机中,即可进行软硬件仿真,利用Proteus仿真软件可方便的检验硬件和程序错误,降低开发成本,减少不必要劳动。 5.2仿真环境
“Proteus不仅能实现数字电路、模拟电路及数/模混合电路的设计与仿真,而且能为单片机应用系统提供方便的软、硬件设计和系统运行的仿真,Proteus将单片机仿真与电路仿真结合,以其完美的仿真功能,直接在基于电路原理图的虚拟原型上进行单片机程序的编写与调试,并进行功能验证。”[1]在仿真过程中,用户可以直接用鼠标单击按键,开关,等动态外设模型,使单片机系统根据输入信号做出相应的响应,并将响应处理结果实时的在显示器上显示。把单片机的程序嵌入到虚拟硬件中,整个过程与真实的软件、硬件、调试过程相似,从而实现其他仿真软件所不能实现的
有需要仿真原理图的可以联系本人。
仿真效果。
图14 Proteus元器件编辑环境
5.3仿真调试结果
图15开关闭合时
有需要仿真原理图的可以联系本人。
图16 开关断开时
6 设计总结
总结在本次设计中,我们采用AT89C51芯片为核心器件,设计出了简单的出租车计价器,能够实现显示时间、等待时间、金额和里程,按键控制,空车指示。
选题后,我们便开始复习单片机方面的知识,也查阅、搜索了很多相关资料,进行总体设计与具体设计,同时也学习仿真软件Proteus和编程软件Keil uVision4。由于以前都采用汇编语言实现编程,对用C语言来实现单片机的编程不太习惯,花费了一些时间来熟悉C语言的编程。在设计开始,要形成流程图,它可以使设计有一定的逻辑性与严密性,使得设计思路明确。采用模块化的设计思想很重要,它方便编写、修改与调试,另外加上必要的注释,便于交流与理解。
这次课程设计设计完成后,体会颇多,在学与做的过程中,取长补短,不断学习新的知识,吸取经验,达到进步的目的。通过自身的努力以及相关图书资料的帮助,逐渐熟悉了Keil uVision4、PROTEUS和C语言等软件的使用以及硬件焊接与检测过程中的一些小技巧。本次设计我学习到不少单片机的知识,但由于自己的理论知识水平有限,实践知识和设计经验不足,在设计过程中难免存在一些问题。所焊实物尚有许多不足,个别功能还不能很好的实现,主要原因是考虑问题不周全,电路设计经验少,
…… 此处隐藏:158字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [高中教育]电子线路高频非线性部分2.1
- [高中教育]中班美术活动——我的小手
- [高中教育]常用三极管参数大全
- [高中教育]计算机常见故障及解决办法
- [高中教育]风机基础环水平度控制方法探讨
- [高中教育]机械安全工程(专升本)阶段性作业3
- [高中教育]2009年安徽省高考语文考试说明刍议
- [高中教育]unit5 let's eat公开课教案设
- [高中教育]计算机网络原理课后习题答案
- [高中教育]2016-2022年中国新能源市场研究与投资
- [高中教育]2015-2020年中国会议行业市场评估及投
- [高中教育]经销商大会峰会主持人串词开场白
- [高中教育]2014新版北师大数学三年级上册小熊购物
- [高中教育]七年级第一学期体育与健康全套教案
- [高中教育]第三章:国际金融市场
- [高中教育]六年级下册数学单元测试-2.比例 北师大
- [高中教育]2016年上海海事大学法学院624刑法之《
- [高中教育]中国碳化钙产业竞争现状及未来五年投资
- [高中教育]网络时代,我们怎么玩
- [高中教育]圆锥曲线——高中数学基础知识与典型例
- 高集医院世界艾滋病宣传日活动方案
- 苏教版六年级英语上册期末试卷含答案
- 全民枪战生化英雄模式幽灵怎么玩 生化
- 灿烂的宋元文化一导学案
- 第2章货币资金与应收款项
- 北师大版八年级下册数学第三章《分式》
- 浅析高分子材料成型加工技术
- 华南理工大学2013年度共青团先进集体及
- 教师资格科目二小学教案模板(共合集)
- 工程扩建可研报告
- 中华人民共和国海事局2014年度招录公务
- 提高农村小学生作文能力的教学尝试
- 徒手心肺复苏术操作步骤
- 毛概试题库7-15章
- 2014-2015学年度(上)初中班主任工作计
- 企业驾驶员安全生产责任书
- 第07章 不等式测试题-2016年高考文科数
- 医疗器械经营企业工作程序
- 考研英语必背36篇_彩版_精华
- 初中9月13-15假期作业 (1)




