毕业设计(论文)-设计一个带单片机的LCD时钟.doc_第1页
毕业设计(论文)-设计一个带单片机的LCD时钟.doc_第2页
毕业设计(论文)-设计一个带单片机的LCD时钟.doc_第3页
毕业设计(论文)-设计一个带单片机的LCD时钟.doc_第4页
毕业设计(论文)-设计一个带单片机的LCD时钟.doc_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

lcd 时钟1 宜宾职业技术学院宜宾职业技术学院 毕业设计 题目:题目:lcdlcd 时钟时钟 系系 部部 电子工程系电子工程系 专业名称专业名称 电子与信息技术电子与信息技术 班班 级级 电子电子 10411041 班班 姓姓 名名 学学 号号 200410415 指导教师指导教师 2006 年年 11 月月 25 日日 lcd 时钟2 内容和要求:内容和要求: (一)(一) 课题内容课题内容 设计一个带单片机的 lcd 时钟 (二)(二) 课题要求课题要求 1 基本要求基本要求 (1)设计一个单片机系统,包括外围复位、时钟和电源等外围电路的 设计。 (2)完成 lcd 驱动电路的设计,使用字符型 lcd 显示时间,时间显示 格式为“时时:分分:秒秒” (3)完成一个控制键盘的设计,通过键盘可分别调节时、分、秒,每 次按键对应位+1。 (4)程序执行后,工作指示灯 led 闪动,表示程序开始执行;lcd 显 示“00:00:00” ,然后开始计时。 2 发挥部分发挥部分 在完成基本要求任务的基础上,增加如下功能: (1)增加闹铃功能,时间到了则产生音乐声。 (2)增加温度检测和显示功能。 指导教师签名: 年 月 日 lcd 时钟3 宜宾职业技术学院 毕业设计任务书毕业设计任务书 系系 部部 电子工程系电子工程系 班班 级级 电子电子 10411041 班班 姓姓 名名 学学 号号 200410415 毕业论文题目毕业论文题目 lcdlcd 时钟时钟 指导教师指导教师 教研室(系)主任签字教研室(系)主任签字 2006 年年 11 月月 25 日日 摘 要 lcd 时钟4 lcd 液晶显示已经是人机界面的关键技术。本文对基于单片机的 lcd 液晶 显示器控制系统进行了设计。 本文是以单片机 at89s52 为主控芯片,以 lcd1602 液晶显示器为显示器件, 以实现一个时钟控制系统,格式为 00:00:00,通过按键对其进行调整,实现 闹铃功能设置,然后一报警电路对其发声。另附有一温度传感器(ds18b20)进 行温度测控,然后通过按键转换让 lcd 显示测量温度。本文撰写的主导思想是 软、硬件相结合,以硬件为基础,来进行各功能模块的编写。 其设计的特点是以单片机的基本语言汇编语言来进行软件设计,指令的执 行速度快,节省存储空间。为了便于扩展和更改,软件的设计采用模块化结构, 使程序设计的逻辑关系更加简洁明了。使硬件在软件的控制下协调运作。 关键词: 单片机 at89s52 lcd 时钟 ds18b20 测温显示 abstract lcd 时钟5 the lcd liquid crystal display already was the man-machine contact surface essential technology. this article to has carried on the design based on the monolithic integrated circuit lcd liquid-crystal display control system. this article is primarily controls the chip by monolithic integrated circuit at89s52, as demonstrates the component take the lcd1602 liquid-crystal display, take realizes a clock controlling system, the form as 00: 00: 00, carries on the adjustment through the pressed key to it, realizes the noisy bell function establishment, then as soon as alarm circuit to its sound production. attaches a temperature sensor (ds18b20) to carry on the temperature observation and control in addition, then transforms through the pressed key lets lcd demonstrate the survey temperature. this article composes the guiding ideology is soft, the hardware unifies, take the hardware as the foundation, carries on various functions module the compilation. its design characteristic is carries on the software design by the monolithic integrated circuit basic language assembly language, the instruction carries out the speed to be quick, saves the storage space. in order to be advantageous for the expansion and the change, the software design uses the modular structure, succinctly caused the programming the logical relations to be bright. causes the hardware to coordinate the operation under the software control. key word: mcu at89s52 lcd clock ds18b20 temp demonstration 引引 言言 lcd 时钟6 随着信息技术的飞速发展,计算机应用技术日益渗透到社会生产生活的 各个领域,其各式各样电子产品 给人们的工作和生活带来了极大的便利, 在这一过程中,单片机起着举足轻重的作用。随着微电子技术和超大规模 集成电路技术的发展,单片机以其运算速度快、集成度高、体积小、功能强、 价格低廉、可靠性高等优势 ,在各个领域(如数据采集、家用电器、机电一 体化、网络通信、智能化仪器仪表)得到了广泛的应用。例如,市面上的 各种全自动化产品,都是单片机在随着人们给的意愿而执行相应的操作;一 个遥控接收器与发射端,也是通过一种语言在进行着数据的交换;所以研究 单片机技术是现阶段一个相当值得重视的问题。 本文要介绍的 lcd时钟控制显示和测温显示电路就是用 主控芯片 兼容 51系列的at89s52单片机,该系统具有高性能、低耗能、计时准确、成本低 等优点,适宜使用于家庭、各种交通运输工具和一些公共场所,给人们带来 极大的方便。 目 录 1 方案设计1 1.1 方案论证与 比较.1 1.2 方案选择1 2 系统硬件设计2 2.1 硬件框图2 2.2 硬件各单元电路设计2 2.2.1 电源电路2 2.2.2 单片机最小系统电路3 2.2.3 lcd显示电路5 2.2.4 测温电路6 2.2.5 按键控制电路8 2.2.6 下载电路8 lcd 时钟7 3 系统软件设计10 3.1 软件设计思想10 3.2 程序设计10 3.3 子程序单元设计11 3.3.1 时钟单元程序设计11 3.3.2 测温单元程序设计13 3.3.3 按键控制单元程序设计15 4 调 试16 4.1 系统软件调试16 4.2 系统硬件调试17 总 结19 参考文献20 附 录21 1 方案设计 1.1 方案论证与 比较 按照系统设计功能 大致可由控制芯片、数码转换器件、 led显示部分 和脉冲发生器组成。但由于硬件需 求量大,电路复杂等而会大幅度的提高 设计成本,且电路性能不够稳定,此为 方案一。 方案二:使用单片机电路设计,由 at89s52作为主控芯片,再结合程 序就可以代替方案一中大量使用的控制芯片,再用lcd1602液晶显示器作 为显示器件,这样看起来电路也比较简单。这样会节省大量的元器件,且性 能更稳定,成本较低,实用性更强。 1.2 方案选择 从电路的简单和成本角度分析,方案一中用到器件比较多导致成本 比较昂贵,对此方案二来说,由主控芯片可以代替大量的控制芯片,这样就 lcd 时钟8 可以有利减少我们的设计成本。 从电路的实用性来分析,方案一一旦设计定型,就只能实现其本身 的一个功能,不能对其功能进行改变。但是对于方案二来说,我们设计成功 以后,还可以通过改变单片机内部程序以实现其它的功能,这样就让我们的 设计更具有实用性与灵活性。 综合以上论证比较,定下方案二作为本设计之方案。 2 系统硬件设计 2.1 硬件框图 通过对系统要求分析,包括单片机最小系统、lcd 显示电路、报警电路、 测温电路和按键控制电路,由要求通过按键控制时钟显示值和温度值和它们之 间的相互转换,再由 lcd1602 液晶屏作为显示器件,显示时间和温度值,另外 有一报警电路作为报警提示。定下了总的硬件框图,如图 1: lcd 时钟9 图 1 系统硬件框图 2.2 硬件各单元电路设计 2.2.1 电源电路 依据所设计的课题,电源负载有不同的设计方式,基本上有以下几种: 使用 pc 交换式电源:适合用大电流负载。 使用 3 只干电池:约 4.5v 电压,勉强可以推动主控电路,适合小电流 负载。 使用 7805 稳压 ic:适合用于一般的电流负载。 由于单片机工作电压为稳定的+5v,采用普通变压器直接输入则不稳定, 会对其电平产生影响(3.75.3v 为高电平,00.3v 为低电平) 。所以在这里对 输入的电压(7.5v)进行稳压处理,接入一个三端稳压器件(lm7805) ,电路 图如图 2: lcd 时钟10 vin 1 gnd 2 vout 3 u1 volt reg c6 104 c7 104 + c5 100uf +c4 100uf vcc jp4 bnc 图 2 稳压电路 上图是 lm7805 稳压电路。由市售的 9v 电源调整器来将市电 220v 转换为 直流 9v 电压,经过(lm7805)稳压后,在输出端则输出一个稳定的+5v 电压 供单片机使用。在电路中瓷片电容型号为 104,c4、c5 为 100uf,其起滤波和 抗干扰作用,瓷片电容为抗低频干扰,滤波电容为抗高频干扰。 2.2.2 单片机最小系统电路 单片机外观图,如图 3: 图 3 at89s52 外观图 这里用到的为 89 系列单片机(型号为 at89s52) ,共为 40 只引脚,其中 4 个并口共有 32 根引脚,可分别作为地址线,数据线和 i/o 线,其中 p3 口还 具有第二功能(主要用于中断和定时) 。另外还有 6 根控制引脚、2 根电源引脚。 lcd 时钟11 振荡电路,如图 4: c2 30pf c3 30pf y1 11.0592mhz vcc 40 p1.7 8 p1.6 7 p1.5 6 p1.4 5 p1.3 4 p1.2 3 p1.1 2 p1.0 1 rst 9 p0.7/ad7 32 p0.6/ad6 33 p0.5/ad5 34 p0.4/ad4 35 p0.3/ad3 36 p0.2/ad2 37 p0.1/ad1 38 p0.0/ad0 39 xtal 2 18 xtal 1 19 p3.7/rd 17 p3.6/wr 16 p3.5/t1 15 p3.4/t0 14 p3.3/int1 13 p3.2/int0 12 p3.1/tx d 11 p3.0/rxd 10 ea 31 ale 30 psen 29 p2.7/a15 28 p2.6/a14 27 p2.5/a13 26 p2.4/a12 25 p2.3/a11 24 p2.2/a10 23 p2.1/a9 22 p2.0/a8 21 gnd 20 u at89s52 图 4 振荡电路 本设计采用内部方式时钟振荡电路,此电路在 xtal1、xtal2、的引脚上 外接定时元件,利用外部振荡器产生自激振荡。定时电路一般可用石英晶体和 电容组成的并联谐振回路,晶振频率可在 1.212mhz 间选择,电容可以在 530pf 间选择,电容的大小对振荡频率有微小的影响,可对频率起到微调的作 用,通过对电路综合分析定 c2、c3 都为 30pf。晶振 y1 为 11.592mhz 复位电路 时钟电路工作以后,在 reset 输入端出现两个周期(10ms)以上的高电平, mcs-51 被初始化复位。复位后,各特殊功能寄存器的初始状态如附录 5。 mcs-51 通常采用上电自动复位和开关手动复位方式,这里我们采用开关手动 复位。如图 5: lcd 时钟12 r3 200 r2 200 s5 sw-pb vcc 40 p1.7 8 p1.6 7 p1.5 6 p1.4 5 p1.3 4 p1.2 3 p1.1 2 p1.0 1 rst 9 p0.7/ad7 32 p0.6/ad6 33 p0.5/ad5 34 p0.4/ad4 35 p0.3/ad3 36 p0.2/ad2 37 p0.1/ad1 38 p0.0/ad0 39 xtal 2 18 xtal 1 19 p3.7/rd 17 p3.6/wr 16 p3.5/t1 15 p3.4/t0 14 p3.3/int1 13 p3.2/int0 12 p3.1/txd 11 p3.0/rxd 10 ea 31 ale 30 psen 29 p2.7/a15 28 p2.6/a14 27 p2.5/a13 26 p2.4/a12 25 p2.3/a11 24 p2.2/a10 23 p2.1/a9 22 p2.0/a8 21 gnd 20 u at89s52 + c1 22uf vcc 图 5 复位电路 图 5 中有一个电解电容,一个下拉电阻、一个开关和一个限流电阻。不同 的电路实现的功能不同所选取的元件参数也不一样,本设计电阻用 200 欧姆, 电容用 22uf,当系统在运行的过程中,如果要对整个系统进行手动复位,则要 在 reset 输入端输入一个高电平,这时我们只须按动触发开关 s5 一下,则开 关另一端所接入的高电平被输向单片机第 9 脚,则对整个系统进行手动复位操 作完成。 2.2.3 lcd 显示电路 lcd-1602 电路符号如图 5 所示: 此 lcd 共 16 只脚(图中为 14 只脚,第 15 和 16 脚隐藏,实际为 15 脚接 低电平、16 脚接高电平) ,其中 1、3 脚接低电平,2 脚高电平, 4、5、6 脚分 别接单片机的 rs、rw、e 端, 714 脚为 i/o 输入口,接单片机 p1 口, lcd 时钟13 d7 d6 d5 d4 d3 d2 d1 d0 e rw rs gnd d7 14 d6 13 d5 12 d4 11 d3 10 d2 9 d1 8 d0 7 e 6 rw 5 rs 4 vss 1 vdd 2 vee 3 lcd1 lm016l vcc 图 5 lcd 电路图 2.2.4 测温电路 温度传感器(ds18b20)的性能特点 数字单总线温度传感器是目前最新的测温器件,它集温度测量,a/d 转换 于一体,具有单总线结构数字量输出,直接与微机接口等优点。既可用它组成 单路温度测量装置,也可用它组成多路温度测量装置。ds18b20 的性能特点: a 采用单总线专用技术,既可通过串行口线,也可通过其它 i/o 口线与微机接 口,无须经过其它变换电路,直接输出被测温度值(9 位二进制数,含符号位) ,b 测温范围为-55+125,测量分辨率为 0.0625,c 内含 64 位经过激 光修正的只读存储器 rom,d 适配各种单片机或系统机,e 用户可分别设定各 路温度的上、下限,f 内含寄生电源。 ds18b20 内部结构主要由四部分组成:64 位光刻 rom,温度传感器,非 挥发的温度报警触发器 th 和 tl,高速暂存器。ds18b20 的管脚排列如图 6 所 示。 lcd 时钟14 图 6 ds18b20 管脚图 把温度传感器与电阻和电容组成的一个测温电路,电路图如图 7: r5 4.7k c8 4.7uf vcc 40 p1.7 8 p1.6 7 p1.5 6 p1.4 5 p1.3 4 p1.2 3 p1.1 2 p1.0 1 rst 9 p0.7/ad7 32 p0.6/ad6 33 p0.5/ad5 34 p0.4/ad4 35 p0.3/ad3 36 p0.2/ad2 37 p0.1/ad1 38 p0.0/ad0 39 xtal 2 18 xtal 1 19 p3.7/rd 17 p3.6/wr 16 p3.5/t1 15 p3.4/t0 14 p3.3/int1 13 p3.2/int0 12 p3.1/txd 11 p3.0/rxd 10 ea 31 ale 30 psen 29 p2.7/a15 28 p2.6/a14 27 p2.5/a13 26 p2.4/a12 25 p2.3/a11 24 p2.2/a10 23 p2.1/a9 22 p2.0/a8 21 gnd 20 u at89c50 gnd 1 i/o 2 vcc 3 q1 ds18b20 vcc 图 7 测温电路 在此电路中,上拉电阻为 4.7k,电容为 4.7uf。q1 为温度传感器 (ds18b20) ,其 i/o 端接单片机 p3.4 脚。 lcd 时钟15 2.2.5 按键控制电路 控制部分包括时钟的调整、闹铃调整和时钟与温度显示之间的相互转换, 其电路图如图 8: s3 sw-pb s1 sw-pb s2 sw-pb s4 sw-pb s6 sw-pb vcc 40 p1.7 8 p1.6 7 p1.5 6 p1.4 5 p1.3 4 p1.2 3 p1.1 2 p1.0 1 rst 9 p0.7/ad7 32 p0.6/ad6 33 p0.5/ad5 34 p0.4/ad4 35 p0.3/ad3 36 p0.2/ad2 37 p0.1/ad1 38 p0.0/ad0 39 xtal 2 18 xtal 1 19 p3.7/rd 17 p3.6/wr 16 p3.5/t1 15 p3.4/t0 14 p3.3/int1 13 p3.2/int0 12 p3.1/tx d 11 p3.0/rxd 10 ea 31 ale 30 psen 29 p2.7/a15 28 p2.6/a14 27 p2.5/a13 26 p2.4/a12 25 p2.3/a11 24 p2.2/a10 23 p2.1/a9 22 p2.0/a8 21 gnd 20 u at89s52 s5 sw-pb 图 8 按键控制电路 各按键功能如表 1: 表 1 按键功能 s1s2s3s4s5s6 时间设置时加一分加一秒加一时钟/温度 转换 闹铃设置 在整个系统运行的时候,通过按键可以对时间和闹铃进行设置,例如:当 我们按下 s6(保持 1 秒以上,下同)的时候,时间进入闹铃设置状态,此时若 按下 s2 不放,则时开始加一,放开则停止,设置完成后,再按下 s1 则进入时 间运行介面,时间设置如上同。 2.2.6 下载电路 外接一下载端,目地是为了电路能与 pc 相互联通,保证此电路能具有 lcd 时钟16 更大的实用价值,当我们在计算机上编写好程序以后,可以通过相应的软件把 程序通过此端口直接写入单片机内,让电路能够实现上述功能。电路如图 9: 12 34 56 78 910 jp4 head er 5x2 vcc 40 p1.7 8 p1.6 7 p1.5 6 p1.4 5 p1.3 4 p1.2 3 p1.1 2 p1.0 1 rst 9 p0.7/ad7 32 p0.6/ad6 33 p0.5/ad5 34 p0.4/ad4 35 p0.3/ad3 36 p0.2/ad2 37 p0.1/ad1 38 p0.0/ad0 39 xtal 2 18 xtal 1 19 p3.7/rd 17 p3.6/wr 16 p3.5/t1 15 p3.4/t0 14 p3.3/int1 13 p3.2/int0 12 p3.1/tx d 11 p3.0/rxd 10 ea 31 ale 30 psen 29 p2.7/a15 28 p2.6/a14 27 p2.5/a13 26 p2.4/a12 25 p2.3/a11 24 p2.2/a10 23 p2.1/a9 22 p2.0/a8 21 gnd 20 u at89s52 vcc 图 9 下载电路 此下载口通过一下载线与 pc 机直接相连,其 2 脚接高电平,4、6、8、10 脚接低电平,1 脚接 p1.5,5 脚接 rst,7 脚接 p1.7,9 脚接 p1.6 ,3 脚悬空。 lcd 时钟17 3 系统软件设计 3.1 软件设计思想 系统软件的设计主要是考虑使其硬件尽量的简单化,使同一个电路可以实现 不同的功能,这样大大的减小了设计的成本。 在进行软件设计的时候,主要有两个设计方案:一是用 c 语言进行编写; 二是用汇编语言进行编写。由于 c 语言还没有学习,所以在此选择汇编语言来 编写程序。汇编语言具有易懂、条理清晰、指令简单等好处。在设计的时候, 尽量使用简单的指令来编写程序,而且注意程序的模块化,这样有利于后期的 查错和修正。 3.2 程序设计 通过对系统所要实现的功能进行分析,程序开始时对 lcd 进行初始化,然 后再时间计时处理和更新时间数据,之后 lcd 显示执行消息和对 lcd 显示内 容进行调整,最后是温度的运行、温度值的转换和闹铃的设置和闹铃的判断。 定下了系统软件运行程序的总流程图,如图 10: 图 10 硬件总框图 lcd 时钟18 其工作过程为:首先程序初始化,之后是单片机运行所写入的程序,包括 时钟和测温两大部分,在运行的过程中,按下相应的按键设定闹铃(见图 13) 的时间后,当时钟与程序的闹铃时间相等的时候,则程序跳转到相应的报警程 序,实现报警功能。 3.3 子程序单元设计 3.3.1 时钟单元程序设计 单片机时钟程序编写分析,这里介绍的字符型液晶模块是一种用 5x7 点 阵图形来显示字符的液晶显示器,根据显示的容量可以分为 1 行 16 个字、2 行 16 个字、2 行 20 个字等等,这里以常用的 2 行 16 个字的 1602 液晶模块来介绍 它的编程方法。1602 液晶模块内部的字符发生存储器(cgrom)已经存储了 160 个不同的点阵字符图形,如表 1 所示,这些字符有:阿拉伯数字、英文字 母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码, 比如大写的英文字母“a”的代码是 01000001b(41h) ,显示时模块把地址 41h 中的点阵字符图形显示出来,我们就能看到字母“a”,其字符一览表见附录 6: 1602 液晶模块内部的控制器共有 11 条控制指令, 其内部读写操作、屏 幕和光标的操作都是通过指令编程来实现的,见附录 7。(说明:1 为高电平、 0 为低电平) 指令 1:清显示,指令码 01h,光标复位到地址 00h 位置 指令 2:光标复位,光标返回到地址 00h 指令 3:光标和显示模式设置 i/d:光标移动方向,高电平右移,低电平左 移 s:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效 指令 4:显示开关控制。 d:控制整体显示的开与关,高电平表示开显示, 低电平表示关显示 c:控制光标的开与关,高电平表示有光标,低电平表示无 光标 b:控制光标是否闪烁,高电平闪烁,低电平不闪烁 指令 5:光标或显示移位 s/c:高电平时移动显示的文字,低电平时移动 光标 lcd 时钟19 指令 6:功能设置命令 dl:高电平时为 4 位总线,低电平时为 8 位总线 n:低电平时为单行显示,高电平时双行显示 f: 低电平时显示 5x7 的点阵字符, 高电平时显示 5x10 的点阵字符 (有些模块是 dl:高电平时为 8 位总线,低 电平时为 4 位总线) 指令 7:字符发生器 ram 地址设置 指令 8:ddram 地址设置 指令 9:读忙信号和光标地址 bf:为忙标志位,高电平表示忙,此时模块 不能接收命令或者数据,如果为低电平表示不忙。 指令 10:写数据 指令 11:读数据 液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认 模块的忙标志为低电平,表示不忙,否则此指令失效。要显示字符时要先输入 显示字符地址,也就是告诉模块在哪里显示字符,表 3 是 dm-162 的内部显示 地址,如表 2: 表 2 液晶屏各字符地址 12345678910111213141516 000102030405060708090a0b0c0d0e0f 第 一 行 404142434445464748494a4b4c4d4e4f 第 二 行 由以上分析确定,定下了以下的时钟运行框图,如图 11: lcd 时钟20 图 11 时钟程序框图 3.3.2 测温单元程序设计 此部分用 18b20(数字温度采集),ds18b20 是 dallas 公司生产的 一线式数字温度传感器,具有 3 引脚 to92 小体积封装形式;温度测量范围 为55125,测温分辨率可达 0.0625。 主机控制 ds18b20 完成温度转换必须经过三个步骤:初始化、rom 操作指令、 存储器操作指令。必须先启动 ds18b20 开始转换,再读出温度转换值。本程序 仅挂接一个芯片,使用默认的 12 位转换精度,外接供电电源,读取的温度值高 位字节送 wdmsb 单元,低位字节送 wdlsb 单元,再按照温度值字节的表示 格式及其符号位,经过简单的变换即可得到实际温度值。 ds18b20 控制方法 ds18b20 有六条控制命令,如表 4 所示: lcd 时钟21 表 4 ds18b20 控制命令表 指 令 约定代码 操 作 说 明 温度转换44h启动 ds18b20 进行温度转换 读暂存器beh读暂存器 9 个字节内容 写暂存器4eh将数据写入暂存器的 th、tl 字节 复制暂存器48h把暂存器的 th、tl 字节写到 e2ram 中 重新调 e2ramb8h把 e2ram 中的 th、tl 字节写到暂存器 th、tl 字节 读电源供电方式b4h启动 ds18b20 发送电源供电方式的信号给主 cpu cpu 对 ds18b20 的访问流程是:先对 ds18b20 初始化,再进行 rom 操 作命令,最后才能对存储器和数据操作。ds18b20 每一步操作都要遵循严格的 工作时序和通信协议。如主机控制 ds18b20 完成温度转换这一过程,根据 ds18b20 的通讯协议,须经三个步骤:每一次读写之前都要对 ds18b20 进行 复位,复位成功后发送一条 rom 指令,最后发送 ram 指令,这样才能对 ds18b20 进行预定的操作,其程序运行框图如图 12: 图 12 测温程序框图 lcd 时钟22 3.3.3 按键控制单元程序设计 为了让时钟和闹铃能够满足我们的意愿,在这里设计了一个按键控制部 分,通过人工对按键的控制来改变时钟和闹铃相应的值,程序运行流程图如图 13: 图 13 按键子程序流程图 在图 13 中,按键分为时钟的调整和闹铃的调整,当程序在运行的时候,我 们按下相应的按键,则转到不同的功能设置部分,再按动 k2、k3、k4 键进行 设置,完成后按相应的键则返回。 lcd 时钟23 4 调 试 4.1 系统软件调试 通过编写出只含时钟或温控的程序,然后在实验板上检查其单片 机和液晶屏等器件是否能够正常显示。通过wave 软件的使用来编译程 序的,并执行跟踪,确保了程序的正确性及程序所设计的功能能够顺利的实 现。 wave 软件调试的过程 首先我们打开 wave 软件,如图 14 画面,再在里面新建一个文件, 其后辍名为 .asm 的文件,这个时候就可以在里面编写我们所需要的程序, 编写完成以后要进行编译,以便生成一个后辍名为.hex 的文件写入我们 的单片机, 当在完成程序写入的时候,编译时出现以下提示,如图14: 图 14 wave 软件编译 图 15 为编译时出现的错误提示, 图下方出现 “符号未定义 ”字样, lcd 时钟24 这时我们按照错误的提示找到 了对应的错误 ,如图 15 中深绿色标志一行, 当输入正确的程序再编译时,程序无误,编译成功,如图15。 图 15 wave 软件编译 4.2 系统硬件调试 此电路主要是检测其各 引脚电压是否正常 ,晶振和电源等是否接好, 检测硬件电路是否有短路、断路、虚焊等,以确保设计的可靠性和电器元件 的性能。而电路中的电源电路、晶体振荡电路、键盘接口电路及复位电路、 闹钟电路等都是采用的基础的电路设计,除了基本的电路硬件调试外我们还 可以通过软件来测试硬件,如通过下载口写入其它一个比较简单的程序,以 便测试。 首先由市电经过变压器成 9v 左右的直流电压,经 jp4 端输入后,由 lm7805 稳压成稳定的正 5v 电压供给系统使用。在这里接上一个二极管作为指 示,当输入电压正常的时候,二极管亮。lcd 同时显示时钟,格式为 00:00:00。同时按下 k1 键进入时钟调整程序,再按下 k2,k3,k4 分别对时, 分,秒进行设置,完成后再按 k1 键转到时钟运行。在此如果按下 k5 键 lcd lcd 时钟25 则转到温度显示介面,第二次按下则返回。如果按下的是 k6 键,则进入闹铃 设置介面,再按下 k2,k3,k4 分别对时,分,秒进行设置,完成后再按 k6 键设置成功后返回到时钟显示介面。全过程操作方便,简单,易懂。适合不同 年龄人使用,哪怕是没有什么文化的人也可以轻松的完成所有操作。 硬件调试过程 在硬件过程中,当接通电源的时候,我们发现液晶显示器没有工作,但电 源指示灯已亮,说明市电已被稳压成 5v 输入电路中,待我们用万用表测电路 中各电压时发现,单片机各引脚电压也正常,这时测量液晶显示器各引脚电压, 发现第 15 和 16 脚电压不正常(正常为:15 脚低电平、16 脚高电平),此时关 掉电源,把 16、15 脚分别接上高低电平,再接通电源,电路一切正常。 lcd 时钟26 总 结 本设计是在陈挺、罗德雄、凌泽明等老师的指导下完成的,在设计的过程 中遇到了不少的困难和阻碍,但是经过老师和同学们的帮助,终于完成了此设 计。在此对就帮助我的老师和同学表示衷心的感谢。 在这次设计的过程中,让我学到了不少的经验,最重要的是同学之间的交 流,这一点很重要!还有就是各类资料的收集和利用,从另一方面也培养了我 独立思考和对实际问题的分析能力。本设计的难点和重点是在程序的编写,要 想硬件有个好的工作环境,软件很重要,所以我从多角度去思考,从网上和图 书馆等能查资料的地方收集了不少的资料作为参考,同时也得到了老师的大力 支持。当然在硬件方面也是有老师提供元器件,然后自己操作完成,做成的成 品大致能实现本设计的要求。 再次感谢帮助我的老师和同学! lcd 时钟27 参考文献 1 李光飞,楼然苗,胡佳文. 单片机课程设计实例指导. 北京: 北京航空航天大学出版社, 2004 年. 2 夏继强,沈德金.单片机实验与实践教程(二). 北京: 北京航空航天大学出版社,2001 年. 3 李光飞,楼然苗,胡佳文.51 系列单片机设计实例. 北京: 北京航空航天大学出版社,2003 年. 4 余永全等.89 系列 flash 单片机原理及应用. 北京: 电子工业出版社出版社,2000 年. 5 韩志军等编. 单片机应用系统设计入门向导与设计实例. 北京: 机械工业出版社,2005 年. 6 王志强等编译.开关电源设计(第二版). 北京:电子工业出版社,2005 年. 7 佟云锋等编.单片机原理及应用. 重庆:重庆大学出版社,2004 年. 8 及力主编.protel 99 se 原理图与 pcb 设计教程. 北京:电子工业出版社,2004 年. 9 彭为 黄科等编.单片机典型系统设计实例精讲. 北京:电子工业出版社,2006 年. 10佟云峰主编.单片机原理用其运用.重庆大学出版社.2004 年 lcd 时钟28 c2 30pf c3 30pf y1 11.0592mhz r3 200 r2 200 s7 sw-pb s3 sw-pb s1 sw-pb s2 sw-pb s4 sw-pb e rw rs r4 100 d1 led e rw rs gnd p1.7 p1.6 p1.5 p1.4 p1.3 p1.2 p1.1 p1.0 p3.3 p3.4 p1.7 p1.6 p1.5 p1.4

温馨提示

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

评论

0/150

提交评论