收藏 分享(赏)

基于51单片机的油量流量仪.doc

上传人:tangtianxu1 文档编号:3235222 上传时间:2018-10-08 格式:DOC 页数:59 大小:2.84MB
下载 相关 举报
基于51单片机的油量流量仪.doc_第1页
第1页 / 共59页
基于51单片机的油量流量仪.doc_第2页
第2页 / 共59页
基于51单片机的油量流量仪.doc_第3页
第3页 / 共59页
基于51单片机的油量流量仪.doc_第4页
第4页 / 共59页
基于51单片机的油量流量仪.doc_第5页
第5页 / 共59页
点击查看更多>>
资源描述

1、 毕 业 设 计题 目: 基于 51 单片机的油量流量仪 学 院: 电气与信息工程学院 专 业: 电气工程及其自动化 姓 名: 学 号: 指导老师: 完成时间: 年 月 日 河南城建学院本科毕业设计(论文) 摘 要摘 要工业生产中过程控制是流量测量与仪表应用的一大领域,流量与温度、压力和物位一起统称为过程控制中的四大参数,人们通过这些参数对生产过程进行监视。对流体流量进行正确测量和调节是保证生产过程安全经济运行、提高产品质量、降低物质消耗、提高经济效益、实现科学管理的基础。流量的检测和控制在化工、能源电力、冶金、石油等领域应用广泛。本设计作为一个加油系统的智能电子设备,以 AT89S52 单片

2、机为核心器件,主要研究基于 51 单片机的智能控制和传感器的数据采集与相应的控制系统的构建,电路元件少,制作方便。单片机通过水流量传感器采集出相应的水流量并在液晶屏幕上显示相应的数字,可以读出使用的水流量,并查看出相应的价格,是一个数字化的智能水流量计。关键词:AT89S52 单片机;水流量传感器;LCD1602 河南城建学院本科毕业设计(论文) AbstractIAbstractProcess control in industrial production is a large area of flow measurement and instrumentation, flow rate

3、and temperature, pressure and level the four together are referred to as process control parameters, people with these parameters to monitor the production process. Correct measurement of fluid flow and regulation is to ensure the safety and economic running of production process, improve product qu

4、ality, reduce material consumption and improve economic efficiency, the Foundation of scientific management. Traffic detection and control in the areas of chemicals, energy, electric power, metallurgy, petroleum widely used.As a intelligent electronic device,this desing uses single chip microcompute

5、r AT89S52 as core component,making a primary research on that single chip microcomputer,which is a digital intelligent water meter,can gather relveant water flow and display corresponding figure on LCD screen and thus we can read water flow and check out relevant price based on water flow sensor and

6、 its advantages of intelligent controls of single chip microcomputer,data acquisition of sensor and the construction of control system.And it possesses few circuit components and convenient making.Key Words:AT89S52;water flow sensor;LCD1602河南城建学院本科毕业设计(论文) 目 录目 录摘 要 IAbstract.II绪 论 .11 系统方案 .21.1 方案

7、论证与选择 21.1.1 作品电源模块的论证与选择 .21.1.2 流量检测模块论证与选择 .21.1.3 主控制芯片模块的论证与选择 .21.1. 4 显示器模块的论证与选择 31.1.5 按键控制模块的论证与选择 .31.1.6 报警指示部分论证与选择 .41.2 系统设计 41.2.1 结构方框图 .41.2.2 理论分析与计算 .42 系统硬件电路设计 .72.1 硬件电路的总体设计 72.1.1 单片机最小系统 .72.1.2 液晶显示电路 .82.1.3 水流量传感器模块电路 .82.1.4 按键控制模块 .92.1.5 报警指示模块 .92.2 片子的简介 102.2.1 AT8

8、9S51 单片机及引脚介绍 .102.2.2 LCD1602 液晶显示器 142.2.3 单片机与 LCD1602 液晶显示器的连接 .183 单片机软件程序设计 .193.1 主程序流程图 193.2 水流量检测程序 20河南城建学院本科毕业设计(论文) 目 录I3.3 LCD 液晶显示程序 .213.4 按键的控制程序 224 电路调试和方法 .244.1 检测方法 244.2 硬件系统调试 244.2.1 初步硬件调试问题 .244.2.2 问题分析 .244.2.3 解决方案 .244.3 软件系统调试 25结 论 .26参考文献 .27致 谢 .28附 录 .29附录 A:电路原理图

9、 .29附录 B:PCB 图 .30附录 C:作品图 .31附录 D:元件清单 .32附录 E:程序单 33河南城建学院本科毕业设计(论文) 绪 论0绪 论当今由于中国经济的腾飞,落后的科技已经不能适应时代的发展,只有不断进步的科技才能推动社会的发展,流量计的测量在热电生产、石油化工、食品卫生等工业领域具有广泛的应用。随着传感器技术,微电子技术、单片机技术的发展,为液体流量的精确测量提供了新的手段。工业生产中过程控制是流量测量与仪表应用的一大领域,流量与温度、压力和物位一起统称为过程控制中的四大参数,人们通过这些参数对生产过程进行监视与控制。对流体流量进行正确测量和调节是保证生产过程安全经济运

10、行、提高产品质量、降低物质消耗、提高经济效益、实现科学管理的基础。流量的检测和控制在化工、能源电力、冶金、石油等领域应用广泛。我国近代流量测量技术发展比较晚,早起所需的流量仪表均从国外进口。中国流量仪表制造业从上世纪 30 年代中期以仪表修配开始,到解放前后在上海、天津等沿海地区形成了现代流量仪表的民族工业。改革开放以来又经历了技术引进,与国际先进技术企业合资、合作,仪表性能和水平有了很大提高。近年国际主流企业纷纷在中国建立生产基地,既增强了研发能力也增添了竞争因素,现在我国流量计产品已很全面,基本覆盖所有行业,满足各行业产生需要,技术革新较快,但在产品生产工艺上仍然有很大提高的空间。 为了适

11、应各种用途,各种类型的流量计相继问世,投入使用的类型有上百种。根据其测量方法和结构原理大致分为差压式流量计、浮子流量计、容积式流量计、电磁流量计、涡街流量计、科里奥利质量流量计、超声流量计、插入式流量计等。20 世纪随着各领域对流量测量需求的牵引,使得流量计得到快速发展尤其是微电子技术的迅速发展,为流量计的制造技术提供各种新型的元器件,进一步推动了流量计从机械式向智能化、模块化发展。新技术、新器件、新材料和新工艺及新软件的开发应用,使得流量计的测量准确度越来越高,流量的测量范围越来越广。同时流量计对测量介质的要求在降低,适用范围也越来越宽,智能化程度及可靠性得到了很大的提高。智能化的家居生活让

12、人们感到身心的放松,本设计是以 AT89S52 为主控芯片,用来监控各加油站的加油系统,智能仪表除了可对加油量进行记录和电子显示外,还可对进行自动完成油价的计算。本设计还有一个重大的作用就是它适用于一般所有液体的检测,这款流量计的使用非常的广泛。可见研究一种低功耗、计量准确方便的流量计十分重要,尤其对节约油资源以及一些对水量有要求的工业的发展起到很大的支持。河南城建学院本科毕业设计(论文) 1 系统方案01 系统方案本系统主要有负责整个给作品供电的电源模块,负责检测油量的油量检测模块,负责整个对电路进行控制的主控制芯片模块,负责对数据进行显示的显示模块,用于切换和调节的按键模块,用于超过安全值

13、而提出报警的报警部分,下面分别讨论和论证以下各个模块的选择以及选择该方案的原因。1.1 方案论证与选择1.1.1 作品电源模块的论证与选择方案一:铅酸电池供电,优点电流大,输出稳定,缺点重量太沉,体积过大。方案二:USB 电源供电,电压电流恒定,但只能连接电脑或充电器。方案三:太阳能电池板,绿色能源无污染,但受环境限制,电路构成复杂。方案四:利用 12V 的开关电源,功率高,稳定性好,但是成本较高。方案五:直接利用电池盒,四节五号蓄干电池,对于实验作品较为实用。经比较,选择方案五,因为蓄电池体积较小,重量较轻,价格便宜,方便调试,又相对较安全。1.1.2 流量检测模块论证与选择方案一:LWGY

14、-15 涡轮流量计,优点是该传感器具有结构简单、轻巧、精度高。缺点是价格昂贵,对外界电场、磁场的抗干扰能力差。方案二:YF-21 霍尔式水流量传感器,精度高,重量轻,方波计数输出,可以直接被单片机用于计数,价格便宜,程序设计较为容易、抗干扰能力强,不易损坏。方案三:自制光电对射式流量计,优点是价格便宜,程序设计方便。缺点是精度低,容易受到外界干扰、而且需要手工制作,加大作品制作的难度。经比较,选择方案二,因为该传感器电路简单,与其他两个方案相比较,综合了其他两个方案的优点。而且作为实验用的设计,不需要太精密的传感器。1.1.3 主控制芯片模块的论证与选择方案一:采用台湾宏晶公司的 AT89S5

15、2 单片机作为控制系统。该单片机属于八位的 MCS-51 系列单片机,51 单片机是目前低端智能电子产品的主流控制芯片,河南城建学院本科毕业设计(论文) 1 系统方案1在八位的单片机中发展最快,资料最全,应用性强,价格便宜。种类多样。方案二:采用 FPGA/CPLD 系统,该系统时钟精度高,每个 I/O 口都可以作为双向输入输出,I/O 口配置灵活。但是程序设计比较复杂,芯片价格昂贵,不适合推广。方案三:采用飞利浦公司的嵌入式 ARM7 芯片LPC2131,该芯片是 32 位的高级单片机,功能多样,时间快,精度高。资料比较齐全。但是价格昂贵,程序设计比较复杂。方案四:采用韩国三星公司的嵌入式

16、ARM9 芯片S3C2440,该芯片应用领域广,可以自带操作系统,智能化水平高,编程难度大,价格昂贵。适用于高端智能电子产品。经比较,我选择采用方案一,因为我的作品是属于低端的智能电子产品,不需要那么多的功能和接口,虽然其他方案的控制芯片性能好,但是性价比不如方案一高。再加上 51 单片机经过几十年的发展,技术成熟,使用的频率很高,方便批量生产。1.1. 4 显示器模块的论证与选择方案一:诺基亚 5110 显示屏,是一款基于图形显示的 LCD 屏,黑白色显示,无任何字库,采用串行总线接口与微控制器相连,引脚少,体积小,价格便宜。程序设计较为复杂。方案二:2.4 寸 TFT 彩屏模块,可以显示彩

17、色图片和文字,价格比较贵,视角较小,程序设计比较难。引脚比较多。方案三:88 点阵,LED 点阵需要扫描和列驱动芯片,程序设计比较难,电路设计不方便,需要增加硬件成本。但是价格便宜,灵活性较强。方案四:LCD1602,LCD 液晶显示屏,带背光,自带字库,采用并口通信,功能多样,电路和程序设计简单,价格相对便宜,是低端电子产品的主流显示器之一。经比较,采用方案四,因为显示的数据不会很多,通过切换就可以现实所有的数据,而且价格相对便宜,控制起来方便。综合以上四种方案,我选择方案四。1.1.5 按键控制模块的论证与选择方案一:矩阵键盘,矩阵键盘可以做成 44、22 等多种类型,节省 I/O 口资源

18、。适用于多个按键组成的键盘。方案二:独立键盘,每个 I/O 口控制一个按键,浪费 I/O 口,易于检测和维河南城建学院本科毕业设计(论文) 1 系统方案2修,适用于很少的按键组成的键盘。经比较,我采用了方案一,因为我的作品实现模式比较多,还要对油量及油价的设置,需要很紧凑的使用 I/O 口。1.1.6 报警指示部分论证与选择方案一:采用喇叭。喇叭的声音比较难听,而且不好控制,但是价格比较便宜。但是需要相关的驱动电路。方案二:采用蜂鸣器。蜂鸣器的声音比较好听,而且易于控制,价格也便宜,仅需要开关三极管作为驱动电路即可。方案三:采用 LED 灯,控制简单,价格极其便宜,无噪声污染。可以直接连接单片

19、机,不需要其他电路。经比较,我决定方案二和方案三相结合采用。因为本产品是实验设计,为了达到较好的实验效果,要在听觉和视觉上突显,以引起同学和老师们的注意。综合比较之下,我选择方案二和方案三结合起来。1.2 系统设计经过上述方案的论证,我决定用 MCS-51 系列的 AT89S52 单片机作为主控制芯片,用 YF-21 霍尔式水流量传感器作为油流量的检测,采用 LCD1602 进行显示油价、油量和总价。采用矩阵按键作为切换和开关,用蜂鸣器和 LED 灯作为报警和指示。并针对以上器件编写相应的控制程序。1.2.1 结构方框图整个电路有矩阵按键,主控制器 AT89S52 单片机, YF-21 霍尔式

20、水流量传感器,LCD1602 液晶显示器,报警指示系统组成。系统方框图如图 1.1 所示:AT89S52 单片机水流量传感器矩阵按键系统 报警显示系统LCD1602 显示器图 1.1 系统方框图1.2.2 理论分析与计算本系统要实现,必须先进行一些理论性的分析。主要分析水流量传感器的使河南城建学院本科毕业设计(论文) 1 系统方案3用方法和数据转换。而且要确保精度,所以算法一定要精确。水流量传感器主要由熟料阀体、水流转子组件和霍尔传感器组成。它是装在进水口,由于检测进水量。当水通过水流子组件时,磁性转子转动并且转速随着流量变化而变化,随着磁铁和霍尔开关的距离改变,通过霍尔开关的磁通量也发生变化

21、,当电流垂直于外磁场通过导体时,磁通量最大,在导体的垂直于磁场和电流方向的两个端面之间会出现电势差,这一现象就是霍尔效应。霍尔开关通过霍尔效应产生差动脉冲信号并输出。霍尔传感器输出相应脉冲信号,反馈给单片机,由单片机判断流量的大小,进行显示和调控。传感器内部结构如图 1.2 所示。其输出波形如图 1.3 所示:图 1.2 传感器内部结构图图 1.3 输出波形图传感器技术参数如表 1.1 所示:表 1.1 传感器参数适用范围 适用于热水器,咖啡机,家用数字水表 等流量监测设备1、最低额定工作电压 DC4.5V-20V2、最大工作电流 15mA(DC5V)3、工作电压范围 DC524V基本参数 4

22、、负载能力 10mA (DC 5V)河南城建学院本科毕业设计(论文) 1 系统方案45、适用温度范围 756、使用湿度范围 35 90RH(无结霜状态)7、允许耐压 水压 1.75Mpa 以下8、保存温度 30869、保存湿度 2092RH水流量传感器外观如图 1.4 所示:图 1.4 水流量传感器外观引出线方式如图 1.5 所示:1 红 IN 接正极2 黄 OUT 信号输出线3 黑 GND 接负极图 1.5 传感器引出线方式在这里我选用的是内径 2mm 的水流量传感器。流完一升水输出 2400 个脉冲。根据这些信息,我们决定采用计数器计波形的方式来采集水流量(计数器检测出脉冲的个数,因为一升

23、水输出 2400 个脉冲,检测出输出脉冲数后,经过换算后得出流过水流量传感器水有多少升) 。河南城建学院本科毕业设计(论文) 2 系统硬件电路设计02 系统硬件电路设计2.1 硬件电路的总体设计整体电路原理图如图 2.1 所示,分为显示相关数据的 LCD1602 显示模块,用于采集流过的水流量检测模块,负责人机交换的按键模块,超出范围时的报警模块,为整个电路提供工作电压的主电源模块,对产品进行控制的 51 单片机最小系统模块。现在由我对每个模块分别进行简单的介绍。图 2.1 整体电路原理图2.1.1 单片机最小系统单片机最小系统有晶振电路和复位电路组成,负责提供给单片机工作的必要时钟和复位。其

24、中,EA 端接电源,表示采用单片机内部的 ROM。单片机晶振采用 11.0592MHz,用两个 30pf 的瓷片电容作为起振电容。复位方式采用按键复位,根据电容电压不能突变的特点,用 RC 串联决定 RST 脚高电平的时间,高电平持续两个周期以上就可以可靠复位。电路图如图 2.2 所示:河南城建学院本科毕业设计(论文) 2 系统硬件电路设计1图 2.2 单片机最小系统2.1.2 液晶显示电路液晶显示电路主要由以 LCD1602 为主的配套电路,采用并口通信的方式和单片机通信,3 脚接可调电阻调节背光,RS 端接单片机 P25 脚,R/W 接单片机P26 脚,E 接单片机 P27 脚,DB1 到

25、 DB7 接单片机的 P0 口,进行数据通信,15脚作为背光调节功能,RP1 精密可调电阻作为 LCD1602 的对比度调整电阻。单片机和 LCD 液晶显示器的连接图如图 2.3 所示:图 2.3 单片机和 LCD 的连接示意图2.1.3 水流量传感器模块电路水流量传感器有三条线,分别是电源、信号线、接地,信号线用一个瓷片电河南城建学院本科毕业设计(论文) 2 系统硬件电路设计2容 104 耦合,然后接入单片机的 I/O 口 32 脚。电路图如图 2.4 所示:图 2.4 水流量传感器连接电路图2.1.4 按键控制模块按键控制模块主要由 44 矩阵按键构成,其中有油量、油单价、总金额三个切换界

26、面的按键和确定键,还有进行调节的数字键 09,另外多余的两个按键没有用到,为了设计需要还必须得有,我把它们分别设置在了第一行的两边了。按键和单片机的接入如图 2.5 所示:图 2.5 按键连接电路图2.1.5 报警指示模块报警指示模块用于显示流量传感器和进水流量阀的运行情况,报警指示模块采用蜂鸣器和一个 LED 灯。当流量计流过所设置的流量时进水电磁阀和流量传感器都停止运行,蜂鸣器响起,LED 指示灯就会亮起。报警显示的电路如图 2.6所示:河南城建学院本科毕业设计(论文) 2 系统硬件电路设计3图 2.6 报警指示模块电路2.2 片子的简介2.2.1 AT89S51 单片机及引脚介绍主要性能

27、1)与 MCS-51 单片机产品兼容 8K 字节在系统可编程 Flash 存储器;2)1000 次擦写周期;3)全静态操作 0Hz33Hz;4)三级加密程序存储器;5)32 个可编程 I/O 口线;6)三个 16 位定时器/计数器八个中断源;7)全双工 UART 串行通道;8)低功耗空闲和掉电模式;9)掉电后中断可唤醒;10)看门狗定时器;11)双数据指针;12)掉电标识符。功能特性描述AT89S52 是一种低功耗、高性能 CMOS8 位微控制器,具有 8K 在系统可编程 Flash 存储器。使用 Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上 F

28、lash 允许程序存储器在系统可编程,亦河南城建学院本科毕业设计(论文) 2 系统硬件电路设计4适于常规编程器。在单芯片上,拥有灵巧的 8 位 CPU 和在系统可编程 Flash,使得 AT89S52 为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52 具有以下标准功能:8k 字节 Flash,256 字节 RAM,32 位 I/O 口线,看门狗定时器,2 个数据指针,三个 16 位定时器/ 计数器,一个 6 向量 2 级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至 0Hz 静态逻辑操作,支持 2 种软件可选择节电模式。空闲模式下,CPU 停止工作

29、,允许RAM、定时器 /计数器、串口、中断继续工作掉电保护方式下,RAM 内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。引脚结构及功能图 2.7 PDIP 封装图 2.8 PLCC 封装河南城建学院本科毕业设计(论文) 2 系统硬件电路设计5图 2.9 TOFP 封装这里我选用的是图 2.7 PDIP 封装形式。VCC:电源GND:地P0 口:P0 口是一个 8 位漏极开路的双向 I/O 口。作为输出口,每位能驱动8 个 TTL 逻辑电平。对 P0 端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0 口也被作为低 8 位地址/数据复用。在这种模

30、式下,P0 具有内部上拉电阻。在 flash 编程时,P0 口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1 口:P1 口是一个具有内部上拉电阻的 8 位双向 I/O 口,p1 输出缓冲器能驱动 4 个 TTL 逻辑电平。对 P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL) 。此外, P1.0 和 P1.2 分别作定时器 /计数器 2 的外部计数输入(P1.0/T2)和时器/计数器 2 的触发输入(P1.1/T2EX ) ,具体如下表 2.1 所示。表 2.1 P1

31、 口第二功能引脚号 第二功能P1.0 T2(定时器/计数器 T2 的外部计数输入) ,时钟输出P1.1 T2EX(定时器/计数器 T2 的捕捉/重载触发信号和方向控制)P1.5 MOSI(在系统编程用)P1.6 MISO(在系统编程用)P1.7 SCK(在系统编程用)P2 口:P2 口是一个具有内部上拉电阻的 8 位双向 I/O 口,P2 输出缓冲器能河南城建学院本科毕业设计(论文) 2 系统硬件电路设计6驱动 4 个 TTL 逻辑电平。对 P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL) 。在访问外

32、部程序存储器或用 16 位地址读取外部数据存储器(例如执行 MOVX DPTR)时,P2 口送出高八位地址。在这种应用中, P2 口使用很强的内部上拉发送“1” 。在使用 8 位地址(如 MOVX RI)访问外部数据存储器时,P2 口输出 P2 锁存器的内容。在 flash 编程和校验时,P2 口也接收高 8 位地址字节和一些控制信号。P3 口:P3 口是一个具有内部上拉电阻的 8 位双向 I/O 口,p2 输出缓冲器能驱动 4 个 TTL 逻辑电平。对 P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL

33、) 。P3 口亦作为 AT89S52 特殊功能(第二功能)使用,如下表 2.2 所示。表 2.2 P3 口第二功能引脚号 第二功能P3.0 RXD(串行输入)P3.1 TXD(串行输出)P3.2 INT0(外部中断 0)P3.3 INT1(外部中断 1)P3.4 T0(定时器 0 外部输入)P3.5 T1(定时器 1 外部输入)P3.6 WR(外部数据存储器写选通)P3.7 RD(外部数据存储器写选通)RST:复位输入。晶振工作时,RST 脚持续 2 个机器周期高电平将使单片机复位。看门狗计时完成后,RST 脚输出 96 个晶振周期的高电平。特殊寄存器AUXR(地址 8EH)上的 DISRTO

34、 位可以使此功能无效。DISRTO 默认状态下,复位高电平有效。ALE/PROG:地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8 位地址的输出脉冲。在 flash 编程时,此引脚( PROG)也用作编程输入脉冲。在一般情况下,ALE 以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE 脉冲将会跳过。如果需要,通过将地址为 8EH 的 SFR 的第 0 位置“1” ,ALE 操作将无效。这一位置“1” ,ALE 仅在执行 MOVX 或 MOVC 指令时有效。否则,ALE 将被微弱拉高。这个 ALE 使能标志位(地址为

35、8EH 的 SFR 的第 0 位)的设置对微控河南城建学院本科毕业设计(论文) 2 系统硬件电路设计7制器处于外部执行模式下无效。PSEN:外部程序存储器选通信号( PSEN)是外部程序存储器选通信号。当 AT89S52 从外部程序存储器执行外部代码时, PSEN 在每个机器周期被激活两次,而在问外部数据存储器时,PSEN 将不被激活。EA/VPP:访问外部程序存储器控制信号。为使能从 0000H 到 FFFFH 的外部程序存储器读取指令,EA 必须接 GND。为了执行内部程序指令, EA 应该接VCC。在 flash 编程期间,EA 也接收 12 伏 VPP 电压。XTAL1:振荡器反相放大

36、器和内部时钟发生电路的输入端。XTAL2:振荡器反相放大器的输出端。石英晶振起振后要能在 XTAL2 线上输出一个 3V 左右的正弦波,以便是MCS51 片内的 OSC 电路按石英晶振相同频率自激振动。通常, 的输出时ocsf钟频率为 0.5MHz16MHz,典型值为 12MHz 或 11.059MHz。电容可以帮助起振,典型值为 30pf,它们可以达到微调 的目的。ocsfMCS51 所需的时钟也可以由外部振荡器提供。外部时钟源应是方波发生器,频率应根据所用 MCS51 中的具体机型确定。2.2.2 LCD1602 液晶显示器LCD(英文全称为 Liquid Crystal Display)

37、是液晶显示器的简称。LCD 具有低辐射、体积小、能耗低的优点,而且结构简单,价格便宜。LCD1602 液晶显示原理液晶显示的原理是利用液晶的物理特性,通过电压对其显示区域进行控制,优点就有显示,这样即可以显示出图形。一般 1602 字符型液晶显示器实物如图2.10图 2.10 LCD1602 液晶显示器实物图主要技术参数表 2.3 1602 的技术参数显示容量 162 个字符 模块最佳工作电压 5.0V工作电压 4.85.2V 字符尺寸 4.957.95mm工作电流 2.0Ma(5.0V) 工作温度 050背光源颜色 黄绿 存储温度 2070背光源电流 150mA河南城建学院本科毕业设计(论文

38、) 2 系统硬件电路设计8引脚说明表 2.4 1602 的引脚说明脚号 符号 引脚说明1 Vss 电源地( GND)2 Vdd 电源电压(+5V)3 VOLCD 驱动电压(可调)寄存器选择输入端,输入 MPU 选择模块内部寄存器类型信号:RS=0 ,当 MPU 进行写模块操作,指向指令寄存器4 RS 当 MPU 进行读模块操作,指向地址计数器;RS=1,无论 MPU 读操作还是写操作,均指向数据寄存器5 R/W R/W=0 读操作;R/W=1 写操作6 E 使能信号输入端,输入 MPU 读/写模块操作使能信号7 DB0 数据输入/输出口,MPU 与模块之间的数据传送通道8 DB1 数据输入/输

39、出口,MPU 与模块之间的数据传送通道9 DB2 数据输入/输出口,MPU 与模块之间的数据传送通道10 DB3 数据输入/输出口,MPU 与模块之间的数据传送通道11 DB4 数据输入/输出口,MPU 与模块之间的数据传送通道12 DB5 数据输入/输出口,MPU 与模块之间的数据传送通道13 DB6 数据输入/输出口,MPU 与模块之间的数据传送通道14 DB7 数据输入/输出口,MPU 与模块之间的数据传送通道15 A 背光的正端+5V16 K 背光的负端 0V注意:四位方式通讯时,不能用 DB0DB3。控制器接口说明1)基本操作时序读状态:输入:RS=L, RW=H, E=H ;输出:

40、D0D7= 状态写指令:输入:RS=L, RW=L, D0D7= 指令码, E=高脉冲;输出:无读数据:输入:RS=H, RW=H, E=H;输出:D0 D7= 数据写数据:输入:RS=H, RW=L, D0D7=数据, E=高脉冲;输出:无2)RAM 地址映射图河南城建学院本科毕业设计(论文) 2 系统硬件电路设计9控制器内部带有 808 位(80 字节)的 RAM 缓冲区,对应关系如图 2.11 所示:图 2.11 地址映射图初始化过程(复位过程)延时 15ms写指令 38H(不检测忙信号)延时 5ms写指令 38H(不检测忙信号)延时 5ms写指令 38H(不检测忙信号)(以后每次写指令

41、、读/写数据操作之前均需检测忙信号 )写指令 38H:显示模式设置写指令 08H:显示关闭写指令 01H:显示清屏写指令 06H:显示光标移动设置写指令 0CH:显示开及光标设置控制器接口时序说明1)读操作时序河南城建学院本科毕业设计(论文) 2 系统硬件电路设计10图 2.12 读操作时序2)写操作时序图 2.13 写操作时序3)时序参数河南城建学院本科毕业设计(论文) 2 系统硬件电路设计11表 2.5 液晶 1602 时序图标号说明极限值时序参数 符号最小值 典型值 最大值 单位 测试条件E 信号周期 tc 400 - - nsE 脉冲宽度 tpw 150 - - nsE 上升沿/下降沿

42、时间 Tr,tf - - 25 ns 引脚 E地址建立时间 Tsp1 30 - - ns地址保持时间 Thd1 10 - - ns引脚E、RS、R/W数据建立时间(读操作) Td - - 100 ns数据保持时间(读操作) Thd2 20 - - ns数据建立时间(写操作) Tsp2 40 - - ns数据保持时间(写操作) Thd2 10 - - ns引脚DB0D2.2.3 单片机与 LCD1602 液晶显示器的连接其连接图如图 2.14 所示:图 2.14 1602 的连接图河南城建学院本科毕业设计(论文) 2 系统硬件电路设计12其中 1602 的 D0D7 分别通过排阻与单片机的 P0

43、0P07 口相连。河南城建学院本科毕业设计(论文) 3 单片机软件程序设计03 单片机软件程序设计系统软件设计是设计的核心,也是设计的重点和难点部分。控制系统软件设计的好坏直接影响到该控制系统的控制功能,因此,要想做好本设计,一个好的系统软件是关键。单片机程序设计在整个系统中是十分重要的,为了设计方便和便于修改,本作品用 C 语言进行程序的设计和控制,因为 C 语言编写简单,置入容易,方便修改。而且本作品在时间上不需要太精确,程序占的内存小,单片机的内存也足够大,所以不采用汇编语言。为了方便书写和检查,本作品采用了多个 C 文件分开写,在 MAIN.c 中进行调用的方式编写程序。下面将程序分模

44、块进行描述,本作品的程序主要分为三部分:主程序、各种中断子程序。主程序完成系统的地址分配、系统初始化。实现系统的数字化显示。各子程序完成相应的各功能。 主程序液晶显示按键输入数据采集图 3.1 程序结构图3.1 主程序流程图主程序部分,主要完成存储器分配、系统初始化等,并通过调用各子程序段,实现软件的总体设计功能。其流程图如图 3.2 所示:其对应的程序主要如下:void main()init_1602();Dis_SetSum();EX0=0;/关闭外部中断 0河南城建学院本科毕业设计(论文) 3 单片机软件程序设计1IT0=1;/边沿触发中断EA=1;/开启总中断while(1)keysc

45、an();display();Control();开 始初始化程序流量检测程序LCD 液晶显示程序图 3.2 主程序流程图3.2 水流量检测程序水流量传感器是采用霍尔传感器制作的,只要收集传感器传回的方波个数,就可以换算成水量。常用的设计方法是,采用单片机的定时器和计数器对方波信号进行计数,并且定时器每 50ms 中断一次,每中断两次,就采集一次脉冲的个数,把脉冲的个数经过处理以后转换成水量,经过数据处理以后送给 LCD 进行显示。其程序流程图如图 3.3 所示:其中油费的主要计算程序如下:write_com(0x80+0x40+10);/显示加入油量的金额if(Total_Sum/10000

46、0)write_date(LCD1602_TableTotal_Sum/10000);else河南城建学院本科毕业设计(论文) 3 单片机软件程序设计2write_date( );if(Total_Sum/10000)write_date(LCD1602_TableTotal_Sum%10000/1000);elsewrite_date( );if(Total_Sum/1000)write_date(LCD1602_TableTotal_Sum%1000/100);elsewrite_date( );write_date(LCD1602_TableTotal_Sum%100/10);write

47、_date(.);write_date(LCD1602_TableTotal_Sum%10); 否是获取计数值,将脉冲转换为油量结 束开 始设置为定时器 0,计数器 1开启定时计数器,开始计数定时100ms??计算油费,并将其送至 LCD图 3.3 油流量检测程序流程3.3 LCD 液晶显示程序LCD 液晶显示程序专门用于控制 LCD1602 液晶屏的程序,对时序要求比较河南城建学院本科毕业设计(论文) 3 单片机软件程序设计3严格,我在编写前特意查阅了时序逻辑图。LCD 液晶显示程序大致分为写命令、写数据和初始化三部分。其流程图如图 3.4 所示:其对应的程序如下:sbit EN=P27;s

48、bit RS=P25;sbit RW=P26;unsigned char LCD1602_Table=“0123456789:-“;/0123456789abcdefunsigned char code DIS1_TAB=“ :-.- Pr:-.-“;/显示金额和单价unsigned char code DIS2_TAB=“-.-L :-.-“;/显示加入的油量和总金额unsigned char code DIS3_TAB=“ Please set the“;unsigned char code DIS4_TAB=“unit price:-.-“;/ * * * * * * * * * * * * * * *液 晶 显 示 写 数 据 * * * * * * * * * * * * * * */void write_date(uchar date)/写数据EN=0;/使能为 0RS=1;/写数据设置P0=date;/输入数据EN=0;/使能为 0delayms(5);/延时 5msEN=1;/使能为 1/ * * * * * * * * * * * * * * *液 晶 显 示 写 指 令 * * * * * * * * * * * * * * */void write_com(uchar date)EN=0;/使能为 0RS=0;/写命令设置P0

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 专业基础教材

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报