毕业设计(论文)-基于单片机的数字钟设计.doc_第1页
毕业设计(论文)-基于单片机的数字钟设计.doc_第2页
毕业设计(论文)-基于单片机的数字钟设计.doc_第3页
毕业设计(论文)-基于单片机的数字钟设计.doc_第4页
毕业设计(论文)-基于单片机的数字钟设计.doc_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

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

文档简介

兰州交通大学毕业设计(论文)摘 要20世纪末,电子技术获得了飞速的发展,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高。伴随着人类科技文明的发展,人们对于时钟的要求在不断地提高。时钟已不仅仅被看成一种用来显示时间的工具,在很多实际应用中它还需要能够实现更多其它的功能。高精度、多功能、小体积、低功耗,是现代时钟发展的趋势。在这种趋势下,时钟的数字化、多功能化已经成为现代时钟生产研究的主导设计方向。本设计是基于这种设计方向,以单片机为控制核心,设计制作一个符合指标要求的数字日历。本文以单片机芯片AT89C52作为核心控制器,设计制作出一个数字日历系统。该系统主要由控制模块、温度采集模块、液晶显示模块、数字时钟芯片模块、键盘控制模块组成。系统具有简单清晰的操作界面,能在4V5V直流电源下正常工作。能够准确显示时间(显示格式为时时:分分:秒秒,24小时制),可随时进行时间调整,能够对时钟所在的环境温度进行测量并显示。同时该时钟系统还具有功耗小、成本低的特点,具有很强的实用性。由于系统所用元器件较少,单片机所被占用的I/O口不多,因此系统具有一定的可扩展性。关键词:单片机 温度传感器DS18B20 液晶显示AbstractWith the rapid development of electronic technology in the late 20th century, modern electronic products has permeated almost all fields of society, which not only promote the development of social productivity and the improvement of social information, but also increase the performance of electronic product.Along with the development of human science and civilization, peoples demand for the clock is constantly improving. The clock has not be seen as a tool used to display the time, in many practical applications, it also needs to be able to achieve more. High-precision, multi-function, small size, low power consumption is the developing trend of modern clock.Therefore, the dominant design direction for the clock production is digital and multi-function. Based on this aim, the system uses single chip as the control core to design a digital calendar meet the specifications.This paper designs a digital calendar by using the single chip AT89C52 as the core controller. The system consists of the control module, the temperature acquisition module, the LCD modules, the digital clock chip module and the keyboard control module composition. The system can work normally under 4V 5V DC power with simple and clear operation interface.It can display time accurately(display format HH: MM: SS, 24-hour), may at any time to adjust, the clock where the ambient temperature measurement and displayed. At the same time, the clock system is of low power consumption, and cost, and is highly practical. The system uses fewer components, and not all of the microcontroller I / O port is occupied, so the system has a certain degree of scalability.Key words: single chip microcomputer temperature sensor DS18B20 LCDII兰州交通大学毕业设计(论文)目录第一章 绪论11.1 数字日历设计的背景11.2 数字日历设计的意义21.3 数字日历的应用2第二章 数字日历的硬件设计32.1 单片机的选择32.2 STC89C52单片机62.3 最小系统设计102.3 LCD显示电路132.4 键盘控制电路182.5 实时时钟电路192.6 温度采集电路202.7 硬件电路24第三章 数字日历的软件设计263.1 系统软件设计流程图263.2 PROTUES软件介绍293.3 数字日历系统PROTUES仿真34第四章 调试与功能说明354.1 系统性能测试与功能说明354.2 系统时钟误差分析354.3 软件调试问题及解决35结束语37致谢38参考文献39附录40第一章 绪论1.1 数字日历设计的背景 随着电子技术获得了飞速的发展,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。 时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。但是,一旦重要事情,一时的耽误可能酿成大祸。因此要用现今的高技术做高精度的数字日历来跟上人们的生活节奏。现如今单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械了。纵观单片机的发展过程,可以预示单片机的发展趋势,其中有一点就是更生活化。目前,随着我国国民经济的发展和人民物质文化生活水平的不断提高,人们在忙于工作之余,人们对生活的质量要求越来越高,所以我选择了这一个毕业设计。单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。单片机模块中最常见的是数字日历,数字日历是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。人类科技文明的不断发展,人们对于时钟的要求在不断地提高。时钟已不仅仅被看成一种用来显示时间的工具,在很多实际应用中它还需要能够实现更多其它的功能。高精度、多功能、小体积、低功耗,是现代时钟发展的趋势。在这种趋势下,时钟的数字化、多功能化已经成为现代时钟生产研究的主导设计方向。本设计是基于这种设计方向,以单片机为控制核心,设计制作一个符合指标要求的数字日历。1.2 数字日历设计的意义自古就有:“一寸光阴,一寸金”的说法。而随着人类的进步科学技术的发展时间观也越来越被人们重视,而能够准确的知道时间能够提高人们的工作效率,能更好的在规定的时间内完成所规定的工作 。因此能有随时随地的知道当前时间是非常重要的。随着科学技术的发展,单片机技术的不断完善,使得数字钟的设计变得更加的灵便、更加简单、功能更加的完善、计时也更加的准确。本设计实用简单,设计方便,计时准确,能够对年、月、日、周、时、分、秒进行准确的计时,可以让人们随时知道时间。数字日历是采用数字电路实现对时、分、秒数字显示的计时装置,广泛用于个人家庭、车站,码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字日历及扩大其应用,有着非常现实的意义。1.3 数字日历的应用 数字日历已成为人们日常生活中:必不可少的必需品,广泛用于个人家庭以及车站、码头、剧场、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。由于数字集成电路技术的发展和采用了先进的石英技术,使数字钟具有走时准确、性能稳定、携带方便等优点,它还用于计时、自动报时及自动控制等各个领域。 第二章 数字日历的硬件设计数字日历是一种用数字电路技术实现时、分、秒计时的钟表。与机械钟相比具有更高的准确性和直观性,具有更长的使用寿命,已得到广泛的使用。数字钟的设计方法有许多种,例如可用中小规模集成电路组成电子钟,也可以利用专用的电子钟芯片配以显示电路及其所需要的外围电路组成电子钟,还可以利用单片机来实现电子钟等等。这些方法都各有其特点,其中利用单片机实现的电子钟具有编程灵活,以便于功能的扩展。数字日历的方案有很多种,可以采用传统的数字电路、LED数码管显示等,本设计采用了LCD液晶显示,并增加了基于DS18B20的温度采集模块。数字日历主要由五个模块组成:控制模块、温度采集模块、液晶显示模块、数字时钟芯片模块、键盘控制模块。系统的系统设计方框图如图2.1所示,它主要由五部分组成: 控制部分主芯片采用单片机AT89S52; 显示部分采用LCD液晶; 温度采集部分的温度传感器采用DS18B20智能温度温度传感器; 蜂鸣器报时部分; 按键部分。图2.1 数字日历总体设计2.1 单片机的选择单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。单片机经过1、2、3、3代的发展,正朝着多功能、高性能、低电压、低功耗、低价格、大存储容量、强I/O功能及较好的结构兼容性方向发展2。其发展趋势不外乎以下几个方面:1 多功能 单片机中尽可能地把所需要的存储器和I/O口都集成在一块芯片上,使得单片机可以实现更多的功能。比如A/D、PWM、PCA(可编程计数器阵列)、WDT(监视定时器看家狗)、高速I/O口及计数器的捕获/比较逻辑等。有的单片机针对某一个应用领域,集成了相关的控制设备,以减少应用系统的芯片数量。例如,有的芯片以51内核为核心,集成了USB控制器、SMART CARD接口、MP3解码器、CAN或者I*I*C总线控制器等,LED、LCD或VFD显示驱动器也开始集成在8位单片机中。2 高效率和高性能为了提高执行速度和执行效率,单片机开始使用RISC、流水线和DSP的设计技术,使单片机的性能有了明显的提高,表现为:单片机的时钟频率得到提高;同样频率的单片机运行效率也有了很大的提升;由于集成度的提高,单片机的寻址能力、片内ROM(FLASH)和RAM的容量都突破了以往的数量和限制。由于系统资源和系统复杂程度的增加,开始使用高级语言(如C语言)来开发单片机的程序。使用高级语言可以降低开发难度,缩短开发周期,增强软件的可读性和可移植性,便于改进和扩充功能。3 低电压和低功耗单片机的嵌入式应用决定了低电压和低功耗的特性十分重要。由于CMOS等工艺的大量采用,很多单片机可以在更低的电压下工作(1.2V或0.9V),功耗已经降低到mW级。这些特性使得单片机系统可以在更小电源的支持下工作更长的时间。4 低价格单片机应用面广,使用数量大,带来的直接好处就是成本的降低。目前世界各大公司为了提高竞争力,在提高单片机性能的同时,十分注意降低其产品的价格。下面大致介绍单片机的主要应用领域:(1) 家用电器领域用单片机控制系统取代传统的模拟和数字控制电路,使家用电器(如洗衣机、空调、冰箱、微波炉、和电视机等)功能更完善,更加智能化和易于使用。(2) 办公自动化领域单片机作为嵌入式系统广泛应用于现代办公设备,如计算机的键盘、磁盘驱动、打印机、复印机、电话机和传真机等。(3) 商业应用领域商业应用系统部分与家用和办公应用系统相似,但更加注重设备的稳定性、可靠性和安全性。商用系统中广泛使用的电子计量仪器、收款机、条形码阅读器、安全监测系统、空气调节系统和冷冻保鲜系统等,都采用了单片机构成的专用系统。与通用计算机相比,这些系统由于比较封闭,可以更有效地防止病毒和电磁干扰等,可靠性更高。(4) 工业自动化在工业控制和机电一体化控制系统中,除了采用工控计算机外,很多都是以单片机为核心的单片机和多机系统。(5) 智能仪表与集成智能传感器目前在各种电气测量仪表中普遍采用了单片机应用系统来代替传统的测量系统,使得测量系统具有存储、数据处理、查询及联网等智能功能。将单片机和传感器相结合,可以构成新一代的智能传感器。它将传感器变换后的物理量作进一步的变化和处理,使其成为数字信号,可以远距离传输并与计算机接口。(6) 现代交通与航空航天领域通常应用于电子综合显示系统、动力监控系统、自动驾驶系统、通信系统以及运行监视系统等。这些领域对体积、功耗、稳定性和实时性的要求往往比商用系统还要高,因此采用单片机系统更加重要。目前,我国生产很多型号的单片机,在此,我采用型号为STC89C52的单片机。因为:STC89C52是一个低电压,高性能CMOS8位单片机,片内含4kbytes的可反复擦写的Flash只读程序存储器和128bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-52指令系统,片内置通用8位中央处理器和Flash存储单元,内置功能强大的微型计算机的AT89C52提供了高性价比的解决方案。STC89C52是一个低功耗高性能单片机,40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,STC89C52可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。2.2 STC89C52单片机1 STC89C52单片机概述STC89C52是一种带8K字节闪烁可编程可擦除只读存储器(FPEROM-Flash programmable and Erasable Read Only Memory )的低电压,高性能COMOS8的微处理器,俗称单片机。该器件采用ATMEL搞密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。具体部件介绍如下: 主电源引脚(2根)VCC(Pin40):电源输入,接5V电源;GND(Pin20):接地线。 外接晶振引脚(2根)XTAL1(Pin19):片内振荡电路的输入端;XTAL2(Pin20):片内振荡电路的输出端。 控制引脚(4根)RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位;ALE/PROG(Pin30):地址锁存允许信号;PSEN(Pin29):外部存储器读选通信号;EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。 可编程输入/输出引脚(32根)STC89C52单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。P0口(Pin39Pin32):8位双向I/O口线,名称为P0.0P0.7;P1口(Pin1Pin8):8位准双向I/O口线,名称为P1.0P1.7 ;P2口(Pin21Pin28):8位准双向I/O口线,名称为P2.0P2.7 ;P3口(Pin10Pin17):8位准双向I/O口线,名称为P3.0P3.7。2 STC89C52单片机主要特性:其主要特性如下: 增强型8051单片机,6时钟/机器周期和12时钟/机器周期可以任意选择,指令代码完全兼容传统8051; 工作电压:5.5V3.3V(5V单片机)/3.8V2.0V(3V单片机); 工作频率范围:040MHz,相当于普通8051的080MHz,实际工作频率可达48MHz; 用户应用程序空间为8K字节; 片上集成512字节RAM; 通用I/O口(32个),复位后为:P1/P2/P3/P4是准双向口/弱上拉,P0口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需加上拉电阻; ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口(RXD/P3.0,TxD/P3.1)直接下载用户程序,数秒即可完成一片; 具有EEPROM功能; 具有看门狗功能; 共3个16位定时器/计数器。即定时器T0、T1、T2; 外部中断4路,下降沿中断或低电平触发电路,Power Down模式可由外部中断低电平触发中断方式唤醒; 通用异步串行口(UART),还可用定时器软件实现多个UART; 工作温度范围:-40+85(工业级)/075(商业级);3 STC89C52单片机工作模式掉电模式:典型功耗VDD 。图2.3 单片机最小系统图工作电压为5V,另有AT89LV51工作电压则是2.7V6V,引脚功能一样。 2.外接晶体引脚XTAL119XTAL218XTAL1是片内振荡器的反相放大器输入端,XTAL2则是输出端,使用外部振荡器时,外部振荡信号应直接加到XTAL1,而XTAL2悬空。内部方式时,时钟发生器对振荡脉冲二分频,如晶振为12MHz,时钟频率就为6MHz。晶振的频率可以在1MHz-24MHz内选择。电容取30PF左右。系统的时钟电路设计是采用的内部方式,即利用芯片内部的振荡电路。AT89单片机内部有一个用于构成振荡器的高增益反相放大器。引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。这个放大器与作为反馈元件的片外晶体谐振器一起构成一个自激振荡器。外接晶体谐振器以及电容C1和C2构成并联谐振电路,接在放大器的反馈回路中。对外接电容的值虽然没有严格的要求,但电容的大小会影响震荡器频率的高低、震荡器的稳定性、起振的快速性和温度的稳定性。因此,此系统电路的晶体振荡器的值为12MHz,电容应尽可能的选择陶瓷电容,电容值约为22F。在焊接刷电路板时,晶体振荡器和电容应尽可能安装得与单片机芯片靠近,以减少寄生电容,更好地保证震荡器稳定和可靠地工作。图2.4 晶振连接的内部、外部方式图3 复位RST9在振荡器运行时,有两个机器周期(24个振荡周期)以上的高电平出现在此引脚时,将使单片机复位,只要这个引脚保持高电平,51芯片便循环复位。复位后P0P3口均置1引脚表现为高电平,程序计数器和特殊功能寄存器SFR全部清零。当复位脚由高电平变为低电平时,芯片为ROM的00H处开始运行程序。复位是由外部的复位电路来实现的。片内复位电路是复位引脚RST通过一个斯密特触发器与复位电路相连,斯密特触发器用来抑制噪声,它的输出在每个机器周期的S5P2,由复位电路采样一次。复位电路通常采用上电自动复位和按钮复位两种方式,此电路系统采用的是按钮复位电路。4 输入输出引脚(1) P0端口P0.0-P0.7P0是一个8位漏极开路型双向I/O端口,端口置1(对端口写1)时作高阻抗输入端。作为输出口时能驱动8个TTL。对内部Flash程序存储器编程时,接收指令字节;校验程序时输出指令字节,要求外接上拉电阻。在访问外部程序和外部数据存储器时,P0口是分时转换的地址(低8位)/数据总线,访问期间内部的上拉电阻起作用。(2) P1端口P1.0P1.7P1是一个带有内部上拉电阻的8位双向I/0端口。输出时可驱动4个TTL。端口置1时,内部上拉电阻将端口拉到高电平,作输入用。对内部Flash程序存储器编程时,接收低8位地址信息。(3) P2端口P2.0P2.7 P2是一个带有内部上拉电阻的8位双向I/0端口。输出时可驱动4个TTL。端口置1时,内部上拉电阻将端口拉到高电平,作输入用。对内部Flash程序存储器编程时,接收高8位地址和控制信息。在访问外部程序和16位外部数据存储器时,P2口送出高8位地址。而在访问8位地址的外部数据存储器时其引脚上的内容在此期间不会改变。(4) P3端口P3.0P3.7 P2是一个带有内部上拉电阻的8位双向I/0端口。输出时可驱动4个JJJ。端口置1时,内部上拉电阻将端口拉到高电平,作输入用。对内部Flash程序存储器编程时,接控制信息。除此之外P3端口还用于一些专门功能,具体如表2.4所示。表2.4P3端口引脚兼用功能表P3引脚兼用功能P3.0串行通讯输入(RXD)P3.1串行通讯输出(TXD)P3.2外部中断0(INT0)P3.3外部中断1(INT1)P3.4定时器0输入(T0)P3.5定时器1输入(T1)P3.6外部数据存储器写选通(WR)P3.7外部数据存储器读选通(RD)2.3 LCD显示电路LCD液晶显示模块的方案对比选择方案一:显示的方法有很多种,其中LED数码管是常用的一种显示方法。在一个设计中,可以用LED来显示相应站台的站号,提醒司机知道是去向或者是去向的第几站,让司机心里有数,同时增加显示数字的可读性。该设计中,显示站号至少要2个LED数码管,显示时间信息要12个,显示星期信息要1个,总共需要15个LED数码管。单价是1.2元,那15个共需要151.2=18(元)。另外在PCB布线过程中很困难,给设计带来很不方便的使用。方案二:LCD1602液晶显示器是一块价廉物美的器件,其体积小,控制简单,使用方便。它能显示2行16列的数字或英文信息,另外连接它的线很少,只要8根数据线和3根控制线,这样给使用带来很大的方便,节约单片机I/O口。市场上一块LCD1602的价格也只在15元左右,比数码管便宜。方案三:功能强大、可以显示中文文字的LCD12864液晶显示器,其价格贵,体积大,控制比LCD1602稍微复杂点,但是使用也是很方便的。在控制使用上,需要8根数据线和3根控制线,其余的PSB、RST和BLA直接与VCC相连接。综上所述,在LCD液晶显示模块上,选择方案三中的LCD12864液晶显示器作为本设计的显示模块。显示时间年、月、日、周、时、分、秒。通用液晶显示模块12864的介绍1 液晶显示模块12864整体介绍 带中文字库的128X64是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为12864,内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面8。可以显示84行1616点阵的汉字。 也可完成图形显示.低电压低功耗是其又一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。2 基本特性(1) 低电源电压(VDD:+3.0 V +5.5V)(2) 显示分辨率:12864点 (3) 内置汉字字库,提供8192个1616点阵汉字(简繁体可选) (4) 内置128个168点阵字符 (5) 2MHZ时钟频率(6) 显示方式:STN、半透、正显 (7) 驱动方式:1/32DUTY,1/5BIAS (8) 视角方向:6点(9) 背光方式:侧部高亮白色LED,功耗仅为普通LED的1/51/10 (10) 通讯方式:串行、并口可选 (11) 内置DCDC转换电路,无需外加负压 (12) 无需片选信号,简化软件设计(13) 工作温度:0+55,存储温度:-20+60表2.5P3端口引脚兼用功能表管脚号管脚名称电平管脚功能描述1VSS0V电源地2VCC3.0+5V电源正3V0对比度(亮度)调整4RS(CS)H/LRS=“H”,表示DB7DB0为显示数据RS=“L”,表示DB7DB0为显示指令数据5R/W(SID)H/LR/W=“H”,E=“H”,数据被读到DB7DB0R/W=“L”,E=“HL”, DB7DB0的数据被写到IR或DR6E(SCLK)H/L使能信号7DB0H/L三态数据线8DB1H/L三态数据线9DB2H/L三态数据线10DB3H/L三态数据线11DB4H/L三态数据线12DB5H/L三态数据线13DB6H/L三态数据线14DB7H/L三态数据线15PSBH/LH:8位或4位并口方式,L:串口方式(见注释1)16NC空脚17/RESETH/L复位端,低电平有效(见注释2)18VOUTLCD驱动电压输出端19AVDD背光源正端(+5V)(见注释3)20KVSS背光源负端(见注释3)3 接口说明:表2.6 P3端口引脚兼用功能表RSR/W功能说明LLMPU写指令到指令暂存器(IR)LH读出忙标志(BF)及地址记数器(AC)的状态HLMPU写入数据到数据暂存器(DR)HHMPU从数据暂存器(DR)中读出数据*注释1:如在实际应用中仅使用串口通讯模式,可将PSB接固定低电平,也可以将模块上的J8和“GND”用焊锡短接。*注释2:模块内部接有上电复位电路,因此在不需要经常复位的场合可将该端悬空。*注释3:如背光和模块共用一个电源,可以将模块上的JA、JK用焊锡短接。控制器接口信号说明:1、RS,R/W的配合选择决定控制界面的4种模式见表2.6:2、E信号:表2.7 P3端口引脚兼用功能表E状态执行动作结果高低I/O缓冲DR配合/W进行写数据或指令高DRI/O缓冲配合R进行读数据或指令低/低高无动作忙标志BF BF标志提供内部工作情况.BF=1表示模块在进行内部操作,此时模块不接受外部指令和数据。BF=0时,模块为准备状态,随时可接受外部指令和数据.利用STATUSRD指令,可以将BF读到DB7总线,从而检验模块之工作状态。字型产生ROM(CGROM) 字型产生ROM(CGROM)提供8192个此触发器是用于模块屏幕显示开和关的控制。DFF=1为开显示(DISPLAY ON),DDRAM 的内容就显示在屏幕上,DFF=0为关显示(DISPLAY OFF)。DFF 的状态是指令DISPLAY ON/OFF和RST信号控制的。显示数据RAM(DDRAM) 模块内部显示数据RAM提供642个位元组的空间,最多可控制4行16字(64个字)的中文字型显示,当写入显示数据RAM时,可分别显示CGROM与CGRAM的字型;此模块可显示三种字型,分别是半角英文数字型(16*8)、CGRAM字型及CGROM的中文字型,三种字型的选择,由在DDRAM中写入的编码选择,在0000H0006H的编码中(其代码分别是0000、0002、0004、0006共4个)将选择CGRAM的自定义字型,02H7FH的编码中将选择半角英数字的字型,至于A1以上的编码将自动的结合下一个位元组,组成两个位元组的编码形成中文字型的编码BIG5(A140D75F),GB(A1A0-F7FFH)。字型产生RAM(CGRAM) 字型产生 RAM提供图像定义(造字)功能, 可以提供四组1616点的自定义图像空间,使用者可以将内部字型没有提供的图像字型自行定义到CGRAM中,便可和CGROM中的定义一样地通过DDRAM显示在屏幕中。地址计数器AC 地址计数器是用来贮存DDRAM/CGRAM之一的地址,它可由设定指令暂存器来改变,之后只要读取或是写入DDRAM/CGRAM的值时,地址计数器的值就会自动加一,当RS为“0”时而R/W为“1”时,地址计数器的值会被读取到DB6DB0中。4 应用举例:(1) 使用前的准备:先给模块加上工作电压,再按照下图的连接方法调节LCD的对比度,使其显示出黑色的底影。此过程亦可以初步检测LCD有无缺段现象。(2) 字符显示:带中文字库的128X64-0402B每屏可显示4行8列共32个1616点阵的汉字,每个显示RAM可显示1个中文字符或2个168点阵全高ASCII码字符,即每屏最多可实现32个中文字符或64个ASCII码字符的显示。带中文字库的128X64-0402B内部提供1282字节的字符显示RAM缓冲区(DDRAM)。字符显示是通过将字符显示编码写入该字符显示RAM实现的。根据写入内容的不同,可分别在液晶屏上显示CGROM(中文字库)、HCGROM(ASCII码字库)及CGRAM(自定义字形)的内容。三种不同字符/字型的选择编码范围为:00000006H(其代码分别是0000、0002、0004、0006共4个)显示自定义字型,02H7FH显示半宽ASCII码字符,A1A0HF7FFH显示8192种GB2312中文字库字形。字符显示RAM在液晶模块中的地址80H9FH。字符显示的RAM的地址与32个字符显示区域有着一一对应的关系,其对应关系如表2.8所示。(3) 图形显示先设垂直地址再设水平地址(连续写入两个字节的资料来完成垂直与水平的坐标地址)表2.8 P3端口引脚兼用功能表80H81H82H83H84H85H86H87H90H91H92H93H94H95H96H97H88H89H8AH8BH8CH8DH8EH8FH98H99H9AH9BH9CH9DH9EH9FH垂直地址范围AC5AC0水平地址范围AC3AC0绘图RAM的地址计数器(AC)只会对水平地址(X轴)自动加一,当水平地址=0FH时会重新设为00H但并不会对垂直地址做进位自动加一,故当连续写入多笔资料时,程序需自行判断垂直地址是否需重新设定。GDRAM的坐标地址与资料排列顺序如表2.8。(4) 应用说明用带中文字库的128X64显示模块时应注意以下几点: 欲在某一个位置显示中文字符时,应先设定显示字符位置,即先设定显示地址,再写入中文字符编码; 显示ASCII字符过程与显示中文字符过程相同。不过在显示连续字符时,只须设定一次显示地址,由模块自动对地址加1指向下一个字符位置,否则,显示的字符中将会有一个空ASCII字符位置; 当字符编码为2字节时,应先写入高位字节,再写入低位字节; 模块在接收指令前,向处理器必须先确认模块内部处于非忙状态,即读取BF标志时BF需为“0”,方可接受新的指令。如果在送出一个指令前不检查BF标志,则在前一个指令和这个指令中间必须延迟一段较长的时间,即等待前一个指令确定执行完成。指令执行的时间请参考指令表中的指令执行时间说明。 “RE”为基本指令集与扩充指令集的选择控制位。当变更“RE”后,以后的指令集将维持在最后的状态,除非再次变更“RE”位,否则使用相同指令集时,无需每次均重设“RE”位。2.4 键盘控制电路该设计需要校对时间,所以用三个按键来实现。按hour来调节小时的时间,按minute来调节分针的时间,按second来调节秒的时间。图2.5是按键硬件连接图。图2.5 按键控制电路的硬件连接图当用手按下一个键时,往往按键在闭合位置和断开位置之间跳几下才稳定到闭合状态的情况;在释放一个键时,也回会出现类似的情况。这就是抖动。抖动的持续时间随键盘材料和操作员而异,不过通常总是不大于10ms。很容易想到,抖动问题不解决就会引起对闭合键的识别。用软件方法可以很容易地解决抖动问题,这就是通过延迟10ms来等待抖动消失。2.5 实时时钟电路实时时钟电路的方案对比选择:方案一:DS1302是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路芯片,它可以对年、月、日、星期、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V5.5V7。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个318的用于临时性存放数据的RAM寄存器。DS1302是有主电源/后背电源、双电源引脚,可以同时对后背电源进行细电流充电。方案二:DS12887也是是美国DALLAS半导体公司最新推出的串行接口实时时钟芯片,采用CMOS技术制成,内部具有晶振和时钟芯片备份锂电池。采用DS12887芯片设计的时钟电路无需任何外围电路和器件,并具有良好的微机接口。DS12887芯片具有微功耗、外围接口简单、精度高、工作稳定可靠等优点,可广泛用于各种需要较高精度的实时时钟系统中。但是由于它是串行接口的,外接单片机需要接很多引脚,才能对它达到一个很好的控制。综上所述,结合本设计的实际问题及单片机的I/O口线,选择方案一中的DS1302作为本设计的实时时钟电路的芯片。其控制方便、占单片机I/O口线少、体积小、价格便宜,方便本设计的使用。数字日历设计使用的实时时钟电路芯片是美国DALLAS公司生产的一种高性能、低功耗、带RAM的实时时钟电路芯片DS1302,其引脚如图2.6所示。VCC1为后备电源,VCC2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由VCC1或VCC2两者中的较大者供电;当VCC2大于VCC10.2V时,VCC2给DS1302供电;当VCC2小于CCV1时,D

温馨提示

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

评论

0/150

提交评论