[电子电路]单片机的LCM1602液晶显示温度与万年历显控制_第1页
[电子电路]单片机的LCM1602液晶显示温度与万年历显控制_第2页
[电子电路]单片机的LCM1602液晶显示温度与万年历显控制_第3页
[电子电路]单片机的LCM1602液晶显示温度与万年历显控制_第4页
[电子电路]单片机的LCM1602液晶显示温度与万年历显控制_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、毕业设计报告(论文) 报告(论文)题目:基于单片机的 lcm1602 液晶控制 温度与万年历显示设计 作者所在系部: 电子工程系 作者所在专业: 作者所在班级: 作 者 姓 名 : 作 者 学 号 : 指导教师姓名: 完 成 时 间 : 2011 年 6 月 9 日 院教务处制 电子工程系 毕业设计(论文)任务书 姓姓 名:名:专专 业:业: 术班班 级:级: 学号:学号: 指导教师:指导教师:职职 称:称: 讲 师完成时间:完成时间:2011 年 6 月 5 日 毕业设计(论文)题目:毕业设计(论文)题目: 基于单片机的 lcm1602 液晶控制 温度与万年历显示设计 设计目标:设计目标:

2、利用单片机技术,以及模拟电子技术和数字电子技术的理论知识,设计实现 mcs-51 单 片机对 lcm1602 液晶输出显示控制的这一基本要求。 技术要求:技术要求: 1 利用lcm1602液晶能显示当前时间及温度。 2 利用按键实现对时间的调节与设定。 3 当温度超过设定值时,蜂鸣器报警。 4 利用220vac电源对系统供电。 所需仪器设备:所需仪器设备: 计算机一台、proteus 与 keil uvision4 软件 成果验收形式:成果验收形式: 原理图、源程序、仿真结果 参考文献:参考文献: 单片机原理及应用 、 模拟电子技术基础 、 数字电子技术基础 1 5 周-6 周立题论证 3 9

3、 周-13 周仿真调试 时间时间 安排安排 2 7 周-8 周方案设计 4 14 周-16 周成果验收 指导教师指导教师: 教研室主任教研室主任: 系主任系主任: 北华航天工业学院毕业论文 i 摘 要 论文的研究工作是以液晶屏显示技术为背景展开的,并且详细介绍了通过 mcs-51 单片机控制 lcm1602 液晶的显示情况,以软件形式对系统进行控制,使得系统控制更 具灵活与方便。 本文在深入分析 lcd 显示技术的基础上,重点解析了 lcm 显示的单片机控制技术, 以及 lcd 显示在各种电子显示中的优势,同时阐述了其在日常显示系统中的应用;并且 以 proteus 与 keil uvisio

4、n4 软件为基础,编写了 mcs-51 单片机对 lcm1602 显示控制的 软件,绘制其原理图,并使用 proteus 软件与 keil uvision4 软件建立联合仿真。论文主 要论述了原理图各个模块的作用,控制软件的各个模块的编程。 关键词 液晶显示技术 lcm1602 mcs-51 单片机 proteus keil uvision4 北华航天工业学院毕业论文 ii 目 录 第第 1 1 章章 绪论绪论 .1 1 1.1 课题背景及主要技术国内外研究概况.1 1.2 lcm1602 显示控制系统简介 .2 1.3 课题的建立以及本文完成的主要工作.3 第第 2 2 章章 开发工具软件简

5、介开发工具软件简介 .4 4 2.1 keil uvision4 软件简介 .4 2.2 proteus软件简介.4 2.3 keil uvision4 与 proteus软件联合仿真.5 2.4 小结.5 第第 3 3 章章 lcdlcd 显示控制技术显示控制技术 .6 6 3.1 lcd 显示技术的发展 .6 3.2 lcm1602 显示控制技术及其体系结构 .7 3.2.1 lcm1602 模块简介 .8 3.2.2 lcm1602 模块内部结构 .9 3.2.3 lcm1602 控制指令 .10 3.3 小结 .12 第第 4 4 章章 系统硬件概况系统硬件概况 .1313 4.1 系

6、统概况.13 4.2 功能模块.13 4.2.1 mcs-51 单片机最小系统模块 .14 4.2.2 温度采集模块 .14 4.2.3 蜂鸣器报警模块 .15 4.2.4 万年历调节设置模块 .16 4.2.5 lcm1602 显示模块 .16 4.2.6 电源模块 .17 3.3 小结.17 第第 5 5 章章 软件控制系统概况软件控制系统概况 .1818 5.1 程序流程概况.18 5.2 万年历显示控制模块.18 5.2.1 流程图 .18 5.2.2 源程序代码 .19 5.3 温度显示控制模块.19 5.3.1 程序流程 .19 5.3.2 源程序代码 .19 5.3.3 主程序

7、.19 5.4 小结.19 第第 6 6 章章 课题特点课题特点 .2121 北华航天工业学院毕业论文 iii 6.1 lcm 模块的应用 .21 6.2 程序结构化与模块化设计.21 6.3 抗干扰技术.21 第第 7 7 章章 结论结论 .2323 7.1 调试联合仿真.23 7.2 仿真结果.23 7.3 小结.23 致致 谢谢 .2424 参考文献参考文献 .2525 附附 录录 .2626 北华航天工业学院毕业论文 1 基于单片机的 lcm1602 液晶控制 温度与万年历显示设计 第 1 章 绪论 1.1 课题背景及主要技术国内外研究概况 自 20 世纪 80 年代起,显示设备经历着

8、传统工艺的改良、新工艺的发展、成熟的优 胜劣汰。crt、lcd、pdp、dlp、led、oled、fed、sed、lpd 等各种新的显示技 术纷纷登场亮相。 阴极射线显像管(crt)是利用高能电子束激励荧光体发光的电子显示器件。crt 电子束扫描存在几何失真现象;r、g、b 三色电子束在扫描对应荧光粉时会产生会聚误 差;颜色重现会受到地磁的影响;本身辐射大、无法实现平板和超大屏幕、功耗过大的 缺点越来越明显。时至今日,crt 已经基本宣告退出显示市场。等离子显示器(pdp, 即 plasma display panel 缩写)是利用惰性气体放电所产生的紫外线激发荧光体而产生的 发光现象。由于

9、pdp 容易实现大画面显示,视角大、响应快、具有存储特性、色彩丰富、 全数字化工作、薄型平板化、受磁场影响小、无需磁屏蔽等优点,以及尺寸越大,pdp 模组的成本优势越明显。因此,pdp 覆盖了大英寸的高分辨率显示领域。pdp 的推广还 有待在价格与技术上进一步突破。数字光处理(dlp,即 digital light processing)显示 是由美国德州仪器公司(ti)开发的全数字反射式投影技术。其显示效果高对比度;可 靠性高;减少了边缘显示盲区,消除了黑边,有效象素延伸至屏幕边缘;以及无辐射等 优点。将主要应用于数字影院和数字高清晰背投电视。led 显示具有对比度高(4000:1)、 亮度

10、高(2000cd/m2)且节能、可视角范围广、色彩艳丽、易于集成、驱动电路简单、寿命 长(约 10 万小时以上)、耐冲击且性能稳定等优点。使其呈现出极为广阔的发展前景。在 大型显示设备中,led 显示技术可谓是一种可谓无可匹敌的技术。未来 led 显示技术将 朝着更高亮度、更高耐气候性和发光密度、发光均匀性、全彩色化趋势发展。有机发光 二极管(organic light-emitting diode,简写 oled)显示屏具有无辐射,超轻薄(显示面 板可薄至 1mm 以下),柔软显示,屏幕可卷曲;制造工艺比较简单,批量生产时的成本 要比 lcd 至少节省 20%;能在4580的极寒和高温环境下

11、正常显示;无需后背 光源,因而更加节省能源;可视角接近 180 度;像素的响应速度属微秒级,显示动态画 面时无拖影现象等优点。但目前 oled 显示技术还不成熟,大尺寸全彩色器件目前尚处 在研究开发阶段。价格高,目前很难大规模应用于市场。 lcd(liquid crystal display) ,即液晶显示器,是通过液晶产生双折射率、旋光性、 二色性、光散射性等光学性质的变化,而产生显示作用的非主动发光型显示器。它具有 北华航天工业学院毕业论文 2 体积小、重量轻、省电、辐射低、易于携带等优点。并且目前技术比较成熟。但也存在 视角不广以及色彩表现不理想等问题。综合考虑各方因素,在一定时间范围内

12、,lcd 将 仍是显示领域的主流产品。 在现代社会中 lcd 的应用很广泛,简单如手表上的液晶显示屏,仪表仪器上的液晶 显示器或者是电脑笔记本上的液晶显示器,都使用了 lcd。在一般的办公设备上也很常 见,如传真机,复印机,以及一些娱乐器材玩具等也常常见到 lcd 的足迹。 常用的 lcd 为字符型点阵式 lcd 模块(liquid crystal display module)简称 lcm,或者是字符 型 lcd。字符型液晶显示模块是一类专门用于显示字母,数字,符号等的点阵式液晶显 示模块。在显示器件上的电极图型设计,它是由若干个 5*7 或 5*11 等点阵符位组成。每 一个点阵字符位都可

13、以显示一个字符。点阵字符位之间有一空点距的间隔起到了字符间 距和行距的作用。 其中,对显示器件的控制是所设计系统的核心。控制系统可采用 fpga/cpld 芯片 或单片机等控制。综合各方考虑。本控制系统选用美国 atmel 公司生产的 at89c51 的 8 位 flash rom 单片机。其最突出的优点是片内 rom 为 flash rom,可方便地擦写 1000 次以上,价格低廉,而且其指令丰富,编译工具多,仿真环境好。因此被广泛地应 用于各种控制领域。 1.2 lcm1602 显示控制系统简介 lcm(lcd module)即 lcd 显示模组,是指将液晶显示器件、连接件、控制与驱 动等

14、外围电路,pcb 电路板,背光源,结构件等装配在一起的组件。lcm 提供用户一 个标准的 lcd 显示驱动接口,用户按照接口要求进行操作来控制 lcd 正确显示。lcm 是一种相对更高集成度的 lcd 产品,对小尺寸 lcd 显示,lcm 是一种省电的显示装置, lcm 可以比较方便地与各种微控制器(比如单片机)连接,作为简易的人机接口。 其中,mcs-51 单片机作为 lcm1602 显示控制系统的核心部件。它由中央处理器 (cpu) 、存储器(rom 与 ram) 、输入/输出单元(i/o)三大基本部分构成。单片机具有 高性能、低价格;体积小,集成度高,可靠性和抗干扰能力强;较低工作电压

15、(1.85v) ,低功耗等优点。 并且,只要在单片机的外围适当加一些必要的扩展电路及通道接口,就可以构成各 种应用系统,如工业控制系统、数据采集系统、自动控制系统、自动测试系统、检测监 视系统、智能仪表、功能模块等。因此单片机广泛应用于便携式智能产品与家电消费品, 以及工业控制,国防装备等领域。 总之,该 lcm1602 液晶显示控制系统具有读取方便、显示直观、功能多样、电路 简洁、成本低廉等诸多优点,符合电子仪器仪表的发展趋势。 北华航天工业学院毕业论文 3 1.3 课题的建立以及本文完成的主要工作 本文主要包括以下内容: 1单片机为核心,建立 lcm1602 显示控制系统,编制各控制子程序

16、模块,为操作 管理人员提供灵活、准确的控制信息。实现对 lcm1602 液晶显示当前时间及温度,按 键调节作用,以及蜂鸣器报警的控制。 2绘制整个控制系统原理图,可替代实际硬件进行仿真。 3配合控制程序软件,完成对整个硬件系统的控制。 北华航天工业学院毕业论文 4 第 2 章 开发工具软件简介 2.1 keil uvision4 软件简介 keil 是美国 keil software 公司出品的 51 系列兼容单片机 c 语言软件开发系统,与 汇编相比,c 语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易 用。用过汇编语言后再使用 c 来开发,体会更加深刻。在开发大型软件时更能

17、体现高级 语言的优势。 keil 软件提供丰富的库函数和功能强大的集成开发调试工具,全 windows 界面。 keil 生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。其次, 该软件不但可以进行软件仿真,而且还可以通过其内嵌模块 keil-monitor-51,实现在不 需要连接硬件仿真器的条件下,通过下载线连接硬件系统对项目进行实时仿真。另外, 可以与 proteus 单片机仿真软件联合实现虚拟硬件仿真。 keil uvision4 是 keil 的最新版本。 2.2 proteus 软件简介 目前电子设计手段日新月异,由手工设计阶段到 eda 阶段,再到虚拟设计阶段,

18、 人们不断提高设计水平与效率。proteus 软件是英国 labcenter electronics 公司出版的 eda 工具软件。proteus 嵌入式系统仿真与开发平台是一款可以实现数字电路、模拟电 路、微控制器系统仿真及 pcb 设计等功能的 eda 软件。从元件的选取到连线,直至电 路的调试、分析和软件的编译,都是在计算机中完成,所有的工作先在虚拟环境下进行。 基于这一设计思想开发的 proteus 软件,可在原理图设计阶段对所设计的电路进行评估、 验证,看是否达到设计要求的技术指标,并可以通过改变元件的参数使整个电路性能达 到最优化。这样就避免了传统电子电路设计中方案更换带来的多次重

19、复购买元器件及制 板,在节省设计时间与经费的同时,提高了设计效率与质量。 proteus 软件不仅具有其它 eda 工具软件的模拟电子和数字电子的仿真功能,而且 还具有其他 eda 软件所没有的单片机系统硬件仿真功能。它可以仿真 mcs-51 系列单片 机、avr 单片机、pic 单片机和 arm7 微处理器,可以直接在电路原理图上实现硬件的 虚拟仿真,实现程序的调试,并提供进行测试与分析的虚拟示波器、逻辑分析仪等虚拟 仪器及仿真图表。它是目前最好的仿真单片机及外围器件的工具。 proteus 软件主要由实现原理图编辑及仿真的 isis 模块和实现 pcb 板设计及自动布 线的 ares 模块

20、组成。proteus 软件提供了三十多个元器件库,数千元器件。元件涉及电 阻、电容、二极管、mos 管、变压器、继电器、各种放大器、各种激励源、300 多种微 北华航天工业学院毕业论文 5 处理器、各种门电路和各种终端等。提供的仪表有交直流电压表、电流表、逻辑分析仪、 定时/计数器和信号发生器等虚拟仪器,proteus 作为可视化仿真软件,提供数码管、液 晶屏、led、按钮、键盘等外设。 2.3 keil uvision4 与 proteus 软件联合仿真 proteus 软件与 keil uvision4 软件之间的联合虚拟仿真,指 keil uvision4 软件将 proteus 软件打

21、开的单片机系统看成一个虚拟的硬件电路,使用 keil uvision4 软件对程序 进行编译、调试时自动连接 proteus 软件中的虚拟单片机系统,虚拟单片机系统的状态随 keil uvision4 软件对程序调试实时变化。这样,可实现用 proteus 软件与 keil uvision4 软件联合虚拟硬件仿真。 2.4 小结 proteus 软件与 keil uvision 软件的联合仿真在实际的单片机系统开发中被普遍应用。 用 proteus 软件与 keil uvision 软件联合仿真对程序都像仿真器一样调试,同时在屏幕上 可以直观地看到电路输出状态,比较容易读懂并理解所调试的程序。

22、为此,在单片机课 程教学过程中,结合工程实际做到软件和硬件相结合,实现理论教学与工程实践紧密结 合。有利于提高学习效率,同时降低了学习所需的硬件成本。 北华航天工业学院毕业论文 6 第 3 章 lcd 显示控制技术 3.1 lcd 显示技术的发展 1888 年澳大利亚植物学家莱尼茨尔(reinitzer)首先发现液态晶体的存在,之后, 便开启了相关基础技术的研究。1968 年美国 rca 公司科学家 g.h.heilmeier 根据液晶动 态散射(dynamic scattering)效应,将液晶做成显示器,液晶显示器(liquid crystal display,lcd)产业便开始成形。美国

23、是 lcd 技术的原始推动者,日本是最先将此技术 商品化的国家之一,1973 年,sharp 公司成功开发出以 lcd 为显示面板的计算器与手表, 并带动许多厂商(如 hitachi、nec、toshiba 等)加入到 lcd 产品开发的生产行列。而日 本在 lcd 市场的独占情况一直延续到 1995 年,直到韩国厂商推出 tft (thin film transistor)lcd 而终结。韩国厂商包括 samsung、hyundai 等延续其在半导体产业的发 展经验,利用反向工程(reverse engineering)原理,学习日本的 tft-lcd 技术,于 90 年 代未已达到超过 3

24、0%的市场占有率,并取代日本成为此产业的领先者。而同时,台湾也 掀起了一股 tft-lcd 研发和生产的热潮。 lcd 显示具有诸多优势: 1机身薄,节省空间。与比较笨重的 crt 显示器相比,液晶显示器只要前者三分 之一的空间。 2省电,不产生高温。它属于低耗电产品,可以做到完全不发热(主要耗电和发热 部分存在于背光灯管或 led),而 crt 显示器,因显像技术不可避免产生高温。 3低辐射,环保。液晶显示器的辐射远低于 crt 显示器(仅仅是低,并不是完全 没有辐射,电子产品多多少少都有辐射) 。 4画面柔和不伤眼。不同于 crt 技术,液晶显示器画面不会闪烁,可以减少显示 器对眼睛的伤害

25、,眼睛不容易疲劳。 lcd 依驱动方式来分类可分为静态驱动(static) 、单纯矩阵驱动(simple matrix) 以及主动矩阵驱动(active matrix)三种。 根据 lcd(液晶)所采用的材料构造,可把液晶分为 tn、stn、tft 等三大类, 而据目前的技术原理又可以将它们再次分为 tn、stn、fstn、dstn、cstn、tft 等 诸多类别: 1、tn 型 lcd 所谓 tn 是指 twisted nematic 扭曲向列型 lcd。 2、stn 型 lcd 所谓 stn 是指 super twisted neumatic 超扭曲向列型 lcd,即通常所说的单色 lcd

26、。 3、dstn 型 lcd 北华航天工业学院毕业论文 7 所谓 dstn 是指 dual super twisted nematic 双超扭曲向列型 lcd(即通常所说的微 彩 lcd) ,意即通过双扫描方式来扫描扭曲向列型液晶显示屏,达到完成显示的目的。 4、fstn 型 lcd 所谓 fstn 是指 film super twisted nematic 簿层超扭曲向列型 lcd。 5、cstn 型 lcd 所谓 cstn 是指 colors super twisted nematic 彩色超扭曲向列型 lcd。 一般采用透射式(transmissive)照明方式,透射式屏幕要使用外加光源

27、照明,称为背 光(backlight),照明光源要安装在 lcd 的背后。透射式 lcd 在正常光线及暗光线下,显 示效果都很好,但在户外,尤其在日光下,很难辨清显示内容而背光需要电源产生照明 光线,要消耗电功率。 6、tft 型 lcd 所谓 tft 就是指 thin film transistor 簿片式晶体管 lcd(即通常所说的真彩 lcd) , 意即每个液晶像素点都是由集成在像素点后面的薄膜晶体管来驱动,从而可以做到高速 度、高亮度、高对比度显示屏幕信息。 市场主要 lcd 种类对比如下(表 3-1): 3.2 lcm1602 显示控制技术及其体系结构 液晶显示模块是一种将液晶显示器

28、件、连接件、集成电路、pcb 线路板、背光源、 结构件装配在一起的组件英文名称叫“lcd module” ,简称“lcm” 。有以下三种: 1、数显液晶模块 北华航天工业学院毕业论文 8 这是一种由段型液晶显示器件与专用的集成电路组装成一体的功能部件,只能显示 数字和一些标识符号。段型液晶显示器件大多应用在便携、袖珍设备上。由于这些设备 体积小,所以尽可能不将显示部分设计成单独的部件,即使一些应用领域需要单独的显 示组件,那么也应该使其除具有显示功能外,还应具有一些信息接收、处理、存储传递 等功能。由于它们具有某种通用的、特定的功能而受市场的欢迎。 2、点阵图形液晶模块 这种模块也是点阵模块的

29、一种,其特点是点阵像素连续排列,行和列在排布中均没 有空隔。因此可以显示了连续、完整的图形。由于它也是有 x-y 矩阵像素构成的,所以 除显示图形外,也可以显示字符。 3、液晶点阵字符模块 它是由点阵字符液晶显示器件和专用的行、列驱动器、控制器及必要的连接件,结 构件装配而成的,可以显示数字和西文字符。这种点阵字符模块本身具有字符发生器, 显示容量大,功能丰富。一般该种模块最少也可以显示 8 位 1 行或 16 位 l 行以上的字符。 这种模块的点阵排列是由 57、58 或 511 的一组组像素点阵排列组成的。每组为 1 位,每位间有一点的间隔,每行间也有一行的间隔,所以不能显示图形。一般在模

30、块控 制、驱动器内具有已固化好 192 个字符字模的字符库 cgrom,还具有让用户自定义建 立专用字符的随机存储器 cgram,允许用户建立 8 个 58 点阵的字符。 3.2.1 lcm1602 模块简介 lcm1602 是 2 行16 个字符的字符型液晶显示模块。它由 32 个字符点阵块组成, 每个字符点阵块由 57 或 510 个点阵组成,可以显示 ascii 码表中的所有可视的字 符。 lcm1602 采用标准的 16 脚接口,其中各引脚的功能如下(表 3-2): 引脚引脚符号符号功能说明功能说明 1vss电源负极 2vdd电源正极极(+5v) 3v0 液晶显示器对比度调整,lcd

31、驱动电压(一般为 0.8v:接正电源时对比度最弱, 接地电源时对比度最高,会产生“鬼影” ,可以通过一个 10k 的电位器调整对比 度) 。 4rsrs 为寄存器选择,高电平 1 时选择数据寄存器、低电平 0 时选择指令寄存器。 5r/wr/w 为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。 6ee(或 en)端为使能(enable)端,下降沿使能,液晶模块执行命令 714db0db7低四、高四位三态、双向数据总线 0 位(最低位)7 位(最高位,也是 busy flag) 北华航天工业学院毕业论文 9 15bla背光电源正极 16blk背光电源负极 寄存器选择控制表如下(

32、表 3-3): rsr/w操作说明操作说明 00写入指令寄存器(清除屏等)或者显示地址 01读 busy flag(db7) ,以及读取位址计数器(db0db6)值 10写入数据寄存器(显示各字型等) 11从数据寄存器读取数据 3.2.2 lcm1602 模块内部结构 lcm1602 内部主要寄存器有:输入/输出缓冲器,指令寄存器(instuction register, 即 ir) ,指令译码器,数据寄存器(data register,即 dr) ,地址计数器(address counter,即 ac) ,忙标识(busy flag,即 bf)以及显示数据存储器(display data r

33、am,即 ddram) ,字符发生器(character generate rom,即 cgrom) 。 其各个单元的功能作用如下: 1. 输入/输出缓冲器,用于缓存输入/输出的数据与控制信号。 2. 指令寄存器(ir) ,为八位寄存器。用于存放 lcd 指令、ddram 或 cgrom 地址。数据输入流程:数据存入 dr,然后将该数据地址与指令存入 ir,最后将 该数据输入到 ddram 或 cgrom。读取数据流程:将该数据地址与指令存入 ir,dr 取得该地址数据。 3. 指令译码器,将 ir 里的指令进行译码,以获取 ddram 或 cgrom 地址。 4. 数据寄存器(dr) ,连接

34、 lcm 内部数据总线以及缓存 ddram 或 cgrom 的存 取数据。当 cpu 读取 dr 内容后,dr 能自动加载下一个地址的内容。 5. 地址计数器(ac) ,连接 lcm 内部数据总线以及缓存 ddram 或 cgrom 的存 取数据地址。当存取 ddram 或 cgrom 的数据地址,ac 能自动加载下一个 存储地址。 6. 忙标识(bf) ,表示 lcm 的当前状态。若 bf=1,则表示 lcm 处于忙绿状态, 无法接收外部数据或指令。 7. 显示数据存储器(ddram) ,存储所要显示数据的 ascii 码,根据该 ascii 码 地址,即可到 cgrom 里找到该字符的显示

35、编码。 在送待显示字符代码的指令之前,先要送 ddram 的地址(即待显示的字符显 示位置)。162 的字符型 lcd 的 ddram 地址与显示位置的对应关系如下(表 3- 4): 北华航天工业学院毕业论文 10 ddram 地址与显示字符位置(16*2)的对应关系 00h01h02h03h04h05h06h07h08h09h0ah0bh0ch0dh0eh0fh 40h41h42h43h44h45h46h47h48h49h4ah4bh4ch4dh4eh4fh 8. 字符发生器(cgrom) ,是一个只读存储器,预制所有数据的 ascii 码。其存 储的编码表如下(表 3-5): 此外,还有自

36、定义字符发生器,串行/并行数据转换器,光标闪烁控制电路, 时序产生电路,偏压产生电路,共同端驱动电路以及段驱动电路等。 北华航天工业学院毕业论文 11 3.2.3 lcm1602 控制指令 由于 mpu 可以直接访问模块内部的 ir 和 dr。作为缓冲区域,ir 和 dr 在模块进 行内部操作之前,可以暂存来自 mpu 的控制信息。这样就给用户在 mpu 和外围控制 设备的选择上,增加了余地。模块的内部操作由来自 mpu 的 rs、r/w、e 以及数据信 号 db 决定,这些信号的组合形成了模块的指令。 本系列模块向用户提供了 11 条指令,大致可以分为四大类:模块功能设置;设置 内部 ram

37、 地址;完成内部 ram 数据传送;完成其他功能。 内部 ram 的数据传送的功能使用最为频繁,因此,ram 中的地址指针所具备的 自动加一或减一功能,在一定程度上减轻了 mpu 编程负担。数据移位指令与写显示数 据可同时进行,这样用户就能以最少系统开发时间,达到最高的编程效率。 另外,在每次访问模块之前,mpu 应首先检测忙标志 bf,确认 bf=0 后,访问过 程才能进行。 1602 液晶模块内部的控制器共有 11 条控制指令,如(表 3-6)所示: (注:1. * 代表 1 或 0 2. i/d 与与 s 功能:功能:s/c 与与 r/l 功能功能 i/ds功能s/cr/l功能 00字符

38、不动,光标左移,ac-100光标左移,ac-1 01 字符右动,光标不动,ac 不 变 01 光标右移,ac+1 10字符不动,光标右移,ac+110显示屏左移 11字符左动,光标不动,ac 不11显示屏右移 序号指令 rsr/wd7d6d5d4d3d2d1d0 1 清显示,ddram 存入 20h,光标至左上角,ac 清 零 0000000001 2 光标返回,ddram 内容保持,ac 清零 000000001* 3 置输入模式 00000001i/di/ds s 4 显示开/关控制 0000001dcb 5 光标或字符移位 000001s/cs/cr/lr/l* 6 置功能 00001d

39、lnf* 7 置字符发生存贮器寻址 0001 字符发生存贮器地址 8 置数据存贮器寻址 001 显示数据存贮器地址 9 读忙标志或地址 01bf 计数器地址 10 写数到 cgram 或 ddram) 10 要写的数据内容 11 从 cgram 或 ddram 读数 11 读出的数据内容 北华航天工业学院毕业论文 12 变 3. d、c、b 含义:d=1,开显示屏;c=1,显示光标;b=1,光标所在字符闪烁。 4. dl、n、f 含义:dl=1,采用八位数据传送方式,为零则为四位;n=1,显示一 行;f=1 采用 5*10 点阵字符,为零则用 5*7 点阵字符。 ) 3.3 小结 本章介绍了

40、lcd 各种显示技术,其中,重点介绍了 lcm1602 模块的各个引脚作用 和 lcm1602 模块的内部结构各个模块的功能作用进行了深入分析,着重阐述了它的十 一条控制指令的作用。为正确使用 lcm1602 模块奠定一个良好的基础。 北华航天工业学院毕业论文 13 第 4 章 系统硬件概况 4.1 系统概况 单片机控制模块是整个设计方案的核心。at59c51 芯片作为该系统的控制部件,它 控制了温度的采集、处理与显示。采集温度通过 ds18b20 温度传感器将采集的温度通过 硬件电路转送入单片机内部,单片机内部将采集的温度转换成字符串然后送入 lcm1602 模块显示。另外 at59c51

41、还控制 lcm1602 模块对万年历的显示与调节,以及对高温报 警的控制。其系统原理图如下(图 4-1): 4.2 功能模块 整机模块器件如表 4-1 所示。 表 4-1 系统配置清单表 序号部件名称型号/名称数量(套) 1单片机at89c51 1 2 液晶显示器模块lcm16021 系统原理图如下(图 4-1) 北华航天工业学院毕业论文 14 3时钟芯片ds13021 4数字温度传感器ds18b201 5蜂鸣器speaker1 6 led 指示灯led-red1 7 晶振12mhz/32768hz2 8 电容c3 9电阻r10 10按键控制开关4 11 与门and_41 12 4.2.1 m

42、cs-51 单片机最小系统模块 晶振电路:在 xtali 与 xtal2 外接石英晶体和微调电容等构成时钟电路。其中, 晶体的选择至少必须考虑:谐振频点,负载电 容,激励功率,温度特性,长期稳定性。选择 电容 c1,c2:在许可范围内,c1,c2 值越低 越好。c 值偏大虽有利于振荡器的稳定,但将 会增加起振时间。应使 c2 值大于 c1 值,这 样可使上电时,加快晶振起振。 复位电路:利用自动复位方法,在复位端 在复位端保持两个机器周期以上的高电平,实 现单片机复位。原理图如(图 4-2): 4.2.2 温度采集模块 温度由 dallas 公司生产的数字温度传感器 ds18b20 采集。ds

43、18b20 测温范围 为-55+125,测温分辨率可达 0.0625,被测温度用符号扩展的 16 位补码形式串 行输出。cpu 只需一根端口线就能与诸多 ds18b20 通信,占用微处理器的端口较少, 可节省大量的引线和逻辑电路。 ds18b20 内部有一个 9 字节的高速存储器用于存储温度值。其中前两个字节是测得 的温度数据第 1 字节的内容是温度的低八位,第 2 字节是温度的高八位;第 3 和第 4 字节是温度上限 th 与温度下限 tl 的易失性拷贝,第 5 字节是结构寄存器的易失性拷 贝,这三个字节的内容在每一次上电复位时被刷新;第 6、7、8 这三个字节用于内部计 最小系统(图 4-

44、2) 北华航天工业学院毕业论文 15 算;第 9 个字节是冗余检验字节,可用来保证通信的正确性。当温度转换命令发出后, 经转换所得的温度值以二字节补码形式存放在此存储器的第 1 和第 2 个字节。单片机可 通过单线接口读到该数据,读取时低位在前,高位在后,其中高 5 位是符号位,中间 7 位是整数位,最低 4 位是小数位。 ds18b20 最大的特点是单总线数据传输方式,因此对读写的数据位有着严格的时序 要求。时序包括:初始化时序、读时序、写时序。每一次命令和数据的传输都是从单片 机启动写时序开始,如果要求 ds18b20 回送数据,在进行写命令后,单片机需启动读时 序完成数据接收。数据和命令

45、的传输都是低位在先。ds18b20 的时序及命令请参考文献 5。 如(图 4-2)所示。 4.2.3 蜂鸣器报警模块 蜂鸣器主要分为压电式蜂鸣器与电磁式蜂鸣器。 其中,压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳 等组成。有的压电式蜂鸣器外壳上还装有发光二极管。多谐振荡器由晶体管或集成电路 构成。当接通电源后(1.515v 直流工作电压),多谐振荡器起振,输出 1.52.5khz 的音 频信号,阻抗匹配器推动压电蜂鸣片发声。压电蜂鸣片由锆钛酸铅或铌镁酸铅压电陶瓷 材料制成。在陶瓷片的两面镀上银电极,经极化和老化处理后,再与黄铜片或不锈钢片 粘在一起。 电磁式蜂鸣器由振荡器

46、、电磁线圈、磁铁、振动膜片及外壳等组成。接通电源后, 振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场。振动膜片在电磁线圈 和磁铁的相互作用下,周期性地振动发声。 有源蜂鸣器直接接上额定电源(新的蜂鸣器在标签上都有注明)就可连续发声。本文 温度采集与报警(图 4-3) 北华航天工业学院毕业论文 16 设计主要使用有源蜂鸣器。该蜂鸣器使用方便。 另外,当温度高于设定的上限时,同时点亮红色发光二极管。 4.2.4 万年历调节设置模块 本设计总的用了四个按扭开关作为调整设置按键,其中一个是复位键,另三个中的 其中两个是调整时间增加、减少的键,第三个是切换年、月、日及时、分、秒的显示状 态并在

47、所切换的显示状态下配合加减两个键调整时间。如(图 4-4)所示。 4.2.5 lcm1602 显示模块 单片机 p0.0p0.7 分别于 lcd 模块的 d0d7 数据线连接,p2.0p2.2 接到 lcd 模块控 制信号引脚 rs、rw 和 e,lcd 模块的 vdd 引脚接电 源+5v,vss 和 vee 引脚接 地。结合 lcm1602 控制指令, 通过 at89c51 单片机来控制 lcm1602 显示相应的时间与 温度。如(图 4-5)所示。 按键控制(图 4-4) 北华航天工业学院毕业论文 17 4.2.6 电源模块 该系统电源是由集成稳压器件构成的直流可调稳压电源,为系统各模块及

48、芯片提供 电源。主要由变压、整流、滤波和稳压几部分电路。 具体如下:交流电源经过变压器 t 降压成低压交流电,经二极管 v1v4 组成的整 流桥整流成单向脉冲直流电压,再经电容 c1 滤波,得到比较平滑的直流电压。 稳压电路部分中:二级管 d1 与 r1 组成简单过载保护电路,兼做过载指示,d2 与 d3 有保护 lm317 稳压芯片的作用。电容 c2 和 c3 分别为去抖和滤波作用。c2 并联在 滑动变阻器两端,可防止滑动变阻器在调节过程中由于抖动而产生的谐波。其原理图如 (图 4-6)所示。 3.3 小结 在单片机应用系统中,硬件是系统的基础。单片机系统硬件综合性设计是重点,也 是难点,因

49、此,要注重硬件设计学习。 在设计软件程序之前,要对系统的结构有个深入的了解,本章详细介绍了整个系统 的硬件结构和各模块的选型,介绍了系统的硬件概况,使读者对系统的硬件总体设计有 个大致了解。 br1 2w005g tr1 tran-2p2s ac volts +27.5 c1 2200uf vi 3 vo 2 adj 1 u1 lm317l d1 r1 7.5k c2 10uf r2 200 d2 d3 c3 100ufvolts +5.00 220v 50hz28v 50hz ac volts +220 57% rv4 5.1k 直流稳压电源(图 4-6) 北华航天工业学院毕业论文 18 开

50、始 初始化 读日期、时间 写日期、时间 显示子程序 时间修改子程序 日期修改子程序 显示结果 返回 开关控制子程序 万年历显示控制(图 5-1) 第 5 章 软件控制系统概况 5.1 程序流程概况 该控制系统主要包括单片机对 lcm1602 液晶温度显示与万年历显示控制两部分。 软件控制程序主要有主控程序、电子时钟的时间控制程序和温度显示程序组成。主控程 序负责对整个程序进行调用与控制,进行了初始化程序还有键盘功能程序;显示程序和 时间控制程序是电子时钟中比较重要的部分,时间控制程序体现了年、月、日、时、分、 秒的计算方法。 软件的设计采用模块化设计与混合编程的设计思想实现,编程软件为 kei

51、l uvision4 软件。 5.2 万年历显示控制模块 5.2.1 流程图 时间控制程序主要是定时器 0 计时中断程序每隔 10ms 中断一次当作一个计数,每 中断一次则计数加 1,当计数 100 次时,则表示 1 秒到了,秒变 量加 1,同理再判断是否 1 分钟到了,再判断是否 1 小时到了, 再判断是否 1 天到了,再判断是否 1 月到了,再判断是否 1 年 到了,若计数到了则相关变量清除 0。先给出一般年份的每月 北华航天工业学院毕业论文 19 天数。如果是闰年,第二个月天数不为 28 天,而是 29 天。闰年的判断规则为,如果该 年份是 4 或 100 的整数倍或者是 400 的整数

52、倍,则为闰年;否则为非闰年。在我们的这 个设计中由于只涉及 100 年范围内,所以判断是否闰年就只需要用该年份除 4 来判断就 行了。温度的显示主要是靠 ds18b20 采集现在的温度数据,cpu 读取数据进行显示, 当各自的条件得不到满足时,对应的显示器状态就不发生改变,只是在满足条件的情况 下,显示器的状态才变化。 程序流程图如(图 5-1)所示: 5.2.2 源程序代码 参考附录 1 5.3 温度显示控制模块 5.3.1 程序流程 温度显示控制(图 5-2) 北华航天工业学院毕业论文 20 5.3.2 源程序代码 参考附录 1 (注:在模拟硬件反真时,温度变化,但 lcm1602 模块显

53、示不随 ds18d20 温度传感器 采集温度变化而变化。我没找出程序哪有问题) 5.3.3 主程序 主要完成对万年历显示控制模块与温度显示控制模块程序的的调用。源程序代码参 考附录 1。 5.4 小结 本系统通过软件对系统显示的控制,采用混合编程方法。虽然 c 语言越来越来广泛 地应用于开发单片机程序中,但汇编语言在系统开发中仍然有不可替代的作用。用高级 语言可使产品的开发更加快速,而汇编语言能够完成一些高级语言不能做到的事情。汇 编语言的机器代码生成效率高、执行速度快,但可读性却并不强;而 c 语言的可读性和 可移植性却远远超过汇编语言,用 c 语言开发中大型软件的周期要比用汇编语言短很多,

54、 但 c 语言很难解决高时效性等代码编写的问题,此时便可利用汇编语言来实现。因此, 将汇编语言和语言结合使用, 可扬长避短,提高开发效率。 另外,模块化程序设计目的在于增加程序的可读性,同时也易于调试与修改。从而 使软件有了更友好的使用方法。本章从软件的概况、各控制程序的流程等方面详细做了 介绍,在保证了功能实现的同时,尽量增加程序的可读性,方便在需要时进一步改进。 北华航天工业学院毕业论文 21 第 6 章 课题特点 6.1 lcm 模块的应用 电子时钟是实现对年,月,日,时,分,秒数字显示的计时装置,广泛用于个人家 庭,车站, 码头,办公室,银行大厅等场所,成为人们日常生活中的必需品。数字

55、集成 电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度远远超过老式钟表。其中, lcm 直接接控制系统,作为应用系统的终端显示设备。这种数字式显示不仅直观,使用 简便,而且便于进行自动控制。所以,lcm 模块获得了广泛的应用。如用做传真机、复 印机、电子仪表、手机以及一些娱乐器材玩具等的显示屏,给人们生产生活带来了极大 的方便。因此,lcm 模块的应用有着非常现实的意义。 6.2 程序结构化与模块化设计 结构化程序设计的基本思想是采用自顶向下,逐步求精的程序设计方法和单入口 单出口的控制结构。自顶向下、逐步求精的程序设计方法从问题本身开始,经过逐步细 化,将解决问题的步骤分解为由基本程序

56、结构模块组成的结构化程序框图;单入口单出 口的思想是把一个复杂的程序,通过顺序、选择和循环三种基本程序结构的组合、嵌套 构成一个系统工程程序。采用结构化程序设计的基本思想设计开发的源程序结构良好、 易调试与修改。 模块化设计,就是将产品的某些基本要素组合在一起,构成一个具有特定功能的子 系统,将这个各子系统作为通用性的模块进行多种组合,构成新的系统工程文件。 模块化程序设计就是把主程序、子程序、子过程等框架把软件的主要结构和流程描 述出来,并定义和调试好各个框架之间的输入、输出链接关系。以子模块功能为单位的 算法描述。以功能块为单位进行程序设计。模块化程序设计降低程序了复杂度,使程序 设计、调

57、试和维护等操作简单化。 6.3 抗干扰技术 在单片机的应用系统中,系统的抗干扰技术是系统可靠性的重要方面。一个系统的 正确与否,不仅取决于系统的设计思想和方法,同时还取决于系统的抗干扰措施,不然 势必会出现原理正确而系统稳定性差,甚至系统不能工作的问题。正因如此,抗干扰技 术的研究越来越引起大家的高度重视。 单片机抗干扰技术体现在两个方面,一是硬件抗干扰技术,二是软件抗干扰技术。 其中,mcu 设计中主要以硬件抗干扰设计为主,软件抗干扰设计为辅。干扰信号干扰 北华航天工业学院毕业论文 22 mcu 的主要路径是通过 i/o 口,一是影响了 mcu 的数据采集,二是影响内部其它寄存 器。 本系统

58、主要采用稳压电源供电与软件设计方法来减小干扰源对系统的影响,以确保 系统稳定工作。具体如下: 1. 来自电源干扰:mcu 虽然适应电压较宽(3.55v) ,但对于电源的波动却很敏 感。因此采用稳压电源模块,用滤波瓷片电容来滤除高频干扰。 2.来自按键的抖动干扰:按键是一个简单的开关。当键按下,相当于开关闭合;当 按键松开,相当于开关断开。由于机械触点的弹性及电压突变等原因,在触点闭合与断 开的瞬间会出现电压抖动过程。为保证按键识别的准确性,在电压抖动的情况下不能进 行状态的输入,抖动可能造成一次按键多次处理问题。为此,需要进行去抖动处理,去 抖动有硬件和软件两种方法。 硬件方法就是加去抖电路,

59、从根本上避免抖动的产生。软件的方法则是采用时间延 迟以躲过抖动,待信号稳定后再进行扫描。 软件方法是指编制一段时间大于 100ms 的延时程序,在第一次检测到有键按下时, 执行这段延时子程序使键的前沿抖动消失后再检测该键状态,如果该键仍保持闭合状态 电平,则确认为该键已稳定按下,否则无键按下,从而消除了抖动的影响。同理,在检 测到按键释放后,也同样要延迟一段时间,以消除后沿抖动,然后转入对该按键的处理。 查询法时,必须保证 cpu 每隔一定时间主动地去扫描按键一次,该扫描时间间隔应 小于两次按键的时间间隔,否则会有按键不响应的情形。 北华航天工业学院毕业论文 23 第 7 章 结论 7.1 调

60、试联合仿真 系统硬件电路调试比较简单,首先检查电路接线是否正确,然后用检查软件 i/o 口 的定义是否与硬件电路的 i/o 口连线是否对应。系统软件调试可以先调试液晶显示程序, 再编写定时器中断函数,在液晶上显示出正确的时间,随后调试时间调整函数。接下来 分别进行 ds18b20 温度显示程序的调试,调试到液晶能显示温度值,在环境温度有变化 时,显示温度能改变就说明已能正确读取温度数据。最后调试报警温度函数,直到实现 设计任务的要求为止。 7.2 仿真结果 使用 keil uvision4 软件调试编译源程序,生成目标代码 hex 文件,然后在 proteus 软件 中的虚拟单片机系统。模拟仿

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论