《基于MCS51单片机的万历设计.doc》由会员分享,可在线阅读,更多相关《基于MCS51单片机的万历设计.doc(58页珍藏版)》请在三一办公上搜索。
1、黄石理工学院毕业设计论文题 目:基于MCS-51的万年历设计 院 系: 专 业: 姓 名: 指导老师: 摘 要本设计是一个基于MCS-51单片机实现的万年历。本文首先描述系统硬件工作原理,并附以系统结构框图加以说明,着重介绍了本系统所应用的各硬件接口技术和各个接口模块的功能及工作过程,其次,详细阐述了程序的各个模块和实现方法。本设计以数字集成电路技术为基础,AT89C51单片机技术为核心。本文编写的主导思想是软、硬件相结合,以硬件为基础,来进行各功能模块的编写。本系统以单片机的C语言进行软件设计,为了便于扩展和更改,软件的设计采用模块化结构,使程序设计的逻辑关系更加简洁明了。系统通过字符型液晶
2、显示数据,所以具有人性化的操作和直观的显示效果。可以显示时间、公历日期、星期,并有闹铃、语音报时及检测温度的功能。关键词: 单片机; 液晶模块 ;语音报时;温度传感器;Abstract The design is a based on the MCS-51 perpetual calendar. This article first describes the system hardware principle of work,and attaches by the system structure diagram performs to explain,emphatically introd
3、uced this system applies various hardware connection technology and each interface module function and the workprocess, next, it is elaborated the procedure of each module and how they realized. This design is based on the digital IC, and the core of AT89C51 MCU technique. This article writed with t
4、he guiding of software and hardware unifies, take the hardware as thefoundation, writing each programme for each functions module. This systems software design whth the MCU C language, in order to be advantageous for theexpansion and change, the software design uses the design of modularization, so
5、that the logical of the programmer become clear and it is easy to understand .This system use the character LCD to show the data,so it has the humanize operation and the intuitionistic show effect. It can show the time, Gregorian calendar, week, bell, pronunciation of time and the temperature examin
6、ation.The keyword:MCU; LCD module; The pronunciation of time; Temperature sensor.目 录摘 要IABSTRACTII第1章 绪论1第2章 方案论证32.1 功能要求32.2 方案确定3第3章 系统硬件设计63.1 电源部分的设计63.1.1 变压器式直流稳压电源63.1.2 开关式直流稳压电源73.1.3 开关式直流稳压电源的设计73.2 主电路的设计83.2.1 主要芯片的选择83.2.2 主电路原理分析93.3 单片机外围芯片简介103.3.1 1602LCD显示模块103.3.2 温度传感器DS18B2013
7、3.3.3 语音芯片ISD142016第4章 程序设计194.1 总体设计194.2 主程序的设计204.3 INT1中断服务程序224.4 各功能模块的设计224.4.1 显示子程序224.4.2 日历、时间校正子程序234.4.3 定时处理子程序234.4.4 温度检测及处理子程序254.4.5 语音报时子程序274.4.6 延时子程序28第5章 调试及性能分析295.1 软件调试295.2 硬件调试295.3 性能分析30结束语31致谢32附录一 系统原理图33附录二 系统的PCB图和元件安装图34附录三 程序清单35主要参考文献54第1章 绪论1.1 单片机的发展概况单片机一词最初源于
8、“Single Chip Microcomputer”,它忠实地反映了早期单片机的形态和本质。随后按照面向对象,突出控制功能,在片内集成了许多外围叫路及外设接口,突破了传统意义的计算机结构,发展成Microcontroller的体系结构,目前国外已普遍称之为微控制器MCU(Micro Controller Unit)。鉴于它完全作为嵌入式微控制器。由于国内对单片机一词已约定成俗,因此仍沿用至今。但对“单片机”一词的理解,不应现限于“Single Chip Microcomputer”,而应接轨于国际上对单片机的标准称呼“Micro Controller Unit”(MCU)。单片机的发展大致可
9、分为四个阶段:第一阶段:单片机探索阶段。以Intel公司MCS-48,Motorola公司6801为代表,属低档型8位机。第二阶段:单片机完善阶段。以Intel公司MCS-51,Motorola公司68HC05为代表,属高档型8位机。此阶段,8位单片机体系进一步完善,特别是MCS-51系列单片机在世界和我国得到了广泛的应用,奠定了它在单片机领域的经典地位,形成了事实上的8位单片机标准结构。第三阶段:8位机和16位机争艳阶段,也是单片机向微控制器发展的阶段。此阶段Intel公司推出了16位的MCS-96系列单片机,世界其他芯片制造商也纷纷推出了性能优异的16位单片机,但由于价格不菲,其应用面受到
10、一定的限制。相反MCS-51系列单片机,由于其性能价格比高,却得到了广泛的应用,并吸引了世界许多知名制造厂商,竟相使用以80C51为内核,扩展部分测控系统中使用的电路技术、接口技术、A/D、D/A和看门狗等功能部件,推出了许多与80C51兼容的8位单片机。强化了微控制器的特征,进一步巩固和发展了8位单片机的主流地位。第四阶段:微控制器全面发展阶段。随着单片机在各个领域全面深入地发展和应用,世界各大电气、半导体厂商普遍投入,出现了高速、大寻址范围、强运算能力的8位/16位/32位通用型单片机以及小型廉价的专用型单片机,百花齐放,全面发展,单片机已进入一个可广泛选择和全面发展的应用时代。1.2 M
11、CS-51系列单片机MCS-51系列单片机最初是HMOS制造工艺,其芯片根据片内ROM结构可分为8031(片内无ROM),8051(片内有4KB掩膜ROM),8751(片内有4KB EPROM),统称为51系列单片机。其后又有增强型52系列,包括8032、8052、8752等。HMOS工艺的缺点是功耗较大,随着CMOS工艺的发展,Inter公司生产了CHMOS工艺的80C51芯片,大大降低了功耗,并引入了低功耗管理模式,使低功耗具在可控性。CHMOS工艺的80C51芯片,根据片内ROM结构,也有80C31、80C51、87C51三种类型,引脚与51系列兼容,指令相同。随后,Intel公司将80
12、C51内核使用权以专利互换或出售形式转让给世界许多著名IC制造厂商,如philips、NEC、Atmel、AMD、Dallas、siemens、Fujutsu、OKI、华邦、LG等。在保持与80C51单片机兼容的基础上,这些公司融入了自身的优势,扩展了针对满足不同测控对象要求的外围电路。这样,80C51单片机就变成了众多芯片制造厂商支持的大家族,成了事实上的标准MCU芯片。1.3 单片机的应用目前,单片机已渗透到我们工作、生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹了。导弹的飞行装置靠的是单片机,网络数据通信及传输,工业自动化控制,智能IC卡系统及各类家用电器的控制都离不开单片机。单片
13、机的特点是体积小,在其增加一些外围电路之后,就能成为一个完整的应用系统。例如,我们日常生活中所用的数字电子秤,其内部就有一块单片机芯片,再加上传感器、液晶屏和一些附加电路,就形成了一个完整的应用系统。由此可见,单片机的可扩展性是不错的,应用也相当灵活。单片机应用的意义不仅在于它的广阔范围及所带来的经济效益。更重要的意义在于,单片机的应用从根本上改变了应用系统传统的设计思想和设计方法。以前采用硬件电路实现的大部分功能,现在用单片机通过软件方法来实现。这种以软件取代硬件的技术,不仅提高了系统的可靠性,还简化了硬件的设计;不仅缩小了系统的体积,还降低了成本。现代电子、电器产品及设备的智能化水平不断提
14、高,在人机界面设计上不但有了文字标识、发光管指示、显像屏显示等视觉表达,而且还有各种听觉表达,如最简单的“滴滴、嘟嘟”讯响声、稍丰富些的音乐声,甚至用人的语言直接对用户“说话”等。用简单的数码语音集成电路可以实现一句或多句语句的播放,如掩模芯片中的“欢迎光临”、“有电危险、请勿靠近”等,还有如ISD系列、APR9600(IVS1560)等芯片可由开发人员或用户任意录制、播放需要的一段或几段语音等。在听觉表达中最复杂的就是语音的组合,它是将用户预存的多段语音按指定顺序连续播放,将字或词汇组合成一句话、甚至一段话播放出来,从而实现最准确、定量的语义表达,例如“嘟,现在温度37.5度,温度偏高”、“
15、现在时间五点二十五分三十三秒”等。传统语音组合电路的设计十分复杂,开发工具十分昂贵,语音录制及软件编制工作量巨大,而且组合出来的语音效果也不甚理想,尤其在投资不大的产品、系统中最为突出,从而制约了这一技术的应用和发展。只在近几年来,模拟存储语音技术的ISD芯片及其廉价的开发编辑工具问世后,情况才大为改观。现在已有专业公司开发出通用ISD语音组合模块,用户只需要在ISD语音芯片中分段录入要求的词汇,即可方便地用单片机控制输出这些词汇的任意组合成句、成段,词汇的语音容量从20秒至480秒甚至更长,以至可以容纳所有的中文汉字发音。 在日常生活及工农业生产中常要用到温度的检测及控制,传统的测温元件有热
16、电偶和热电阻。而热电偶和热电阻测出的一般都是电压,再转换成对应的温度,需要比较多的外部硬件支持,硬件电路复杂,软件调试复杂,制作成本高。美国达拉斯(DALLAS)半导体公司生产的新型DS18B20温度检测器件, 它是单片结构,无需外加A/ D 即可输出数字量, 通讯采用单线制, 同时该通讯线还可兼作电源线,即具有寄生电源模式。它具有体积小、精度易保证、无需标定等特点,特别适合与单片机合用构成智能温度检测及控制系统。本设计将以上三种优异性能的集成芯片相结合,以AT89C51为控制器,以DS18B20为温度检测器,以ISD1420为语音输出,组成多功能万年历系统。具有功能多、实用性强等特点。第2章
17、 方案论证2.1 功能要求1、能显示年、月、日、星期、时、分、秒。2、能对时间进行手动修正。3、采用24小时制,能自动处理润年。4、使用16X2LCD显示器显示时间参数,除了星期使用字母外,其它的时间参数使用数字。5、上电后,电子钟显示“2007-04-20 Fri” “12-00-00”即第一行显示年、月、日、星期,第二行显示时、分秒。 6、定时功能:可设置定时时间,当定时时间到时,蜂鸣器发出报警声音。2.2 方案确定按照系统设计功能的要求,初步确定设计系统由主控模块、显示模块、键盘接口模块、电源模块5个模组成。另外再扩充两个模块语音模块、温度检测模块,分别完成语音报时和瘟度检测的功能。方案
18、一:如图2-1所示,系统以单片机为主控制器。通过单片机内的定时器,得出一秒的时间,再根据秒、分、时、日、月、年之间的进制关系,完成基本的时钟功能,再通过LCD液晶显示模块显示出来。温度检测部分由热敏电阻将温度转换成模拟量的电压信号,经A/D转换器,将其转换成对应的数字量,再通过单片机把温度值传给LCD液晶显示模块显示出来。语音报时时,单片机将当前的时钟的语音信息(数字量)经D/A转换器,将其转换成模拟量,再进行功率放大,通过扬声器发声,完成报时功能。CPU 单片机A/D转换D/A转换功率放大扬声器键 盘电 源热敏电阻图2-1 方案一结构图LCD显示模块方案二:如图2-2所示,系统以单片机为主控
19、制器。时钟功能的实现方法是由单片机外部的秒脉冲发生器产生秒脉冲,以外部中断的形式传给单片机,单片机再按照秒、分、时、日、月、年之间的进制关系,完成基本的时钟任务,再通过LCD液晶显示模块显示出来。温度检测部分采用成品的数字温度传感器,它将温度直接转换成单片机能识别的数字量信号,通过接口电路传给单片机,单片机把温度值传给LCD液晶显示模块显示出来。语音报时部分采用专用的语音处理芯片,在报时时,单片机将当前的时钟信息,转换成对应的语音地址,再传给语音芯片,由语音芯片完成发音任务。CPU 单片机LCD显示模块键 盘数字温度传感器秒脉冲发生器专用语音处理芯片扬声器电 源图2-2 方案二结构图以上的两种
20、方案都能完成系统设计所要求的功能,都以单片机为主控制器。键盘和显示部分也一样。所不同的是秒信号产生、温度测量和语音处理电路。下面就对这两种方案进行比较。秒信号的产生 方案一中,秒信号的产生是通过对单片机的机器周期进行计数得到的。单片机的机器周期由单片机外接的晶振周期(时钟周期)确定,它们之间的关系是:晶振周期=12机器周期 如果外接的晶振频率为12MHz,则机器周期为1us。要得到一秒,就要对机器周期计数1000000次。晶振频率的精度直接影响着秒信号的精度。方案二中,秒信号的产生是用专用的秒脉发生器产生的,它具有各种补偿措施,以保证频率的稳定。所以方案二的时钟和日历精度高于方案一。温度测量
21、在方案一中,采用热敏电阻检测温度,其原理是热敏电阻的阻值随温度的变化而变化,从而改变电路的电压或电流,这样就得出与温度有对就关系的电压或电流信号,再经计算,就可得出被测量的温度。由于电压量或电流量都是模拟量,易受外界的干扰,并且热敏元件存在非线性的问题,这都将影响温度的测量精度,还给计算带来了麻烦。方案二采用成品的集成测温模块,具有体积小、抗干扰能力强、调试方便或不用调试、易于实现群测等优点。而且直接输出数字量的温度值。在简化了测量电路的同时又保证了测量精度。语音处理 在方案一中,先把要发的音全部转换成数字量,存储在存储器中,放音时,再把它们转换成模拟量去驱动扬声器发音。采用这种方法时,需要大
22、量的存储。假设语音的平均频率为1.5KHz,由采样定理(采样频率2被采样信号的最高频率)知,采样频率至少为3KHz,那么将1秒钟的1.5KHz的音频信号转换成数字量,在未经任何压缩处理的情况下,至少要3K个存储单元才能存储下来。对于MCS-51单片机来说,必须外扩展存储器,不仅增加了成本,更重要的是增加了单片机的负担,单片需要不停把那么的数据传给D/A转换器进行转换,再驱动扬声器发音,这就有可能导致单片机不能按时完成其他任务。方案二采用专用语音处理芯片,它集成录音和放音功能,只须外接几个电容、电阻和按键就可以组成一个录放系统。和单片机相连时,只须单片机把所发音的地址传给语音芯片,语间芯片就可完
23、成发音任务。在发音的过程中,单片机可以做其他的任务。不仅提高了语音电路的可靠性,还大大减少了语音电路对单片机的占用率。由以上的比较知,在实现相同功能的情况下,方案二比方案一明显地具有优越性单片机外围元件少、电路简单、精度高、可靠性高、体积小等诸多优点。鉴于此,本设计采用方案二。第3章 系统硬件设计由于本万年历系统以单片机为主控芯片,故须对其编定相应的软件程序。硬件是软件的载体,硬件的结构和可靠性直接影响着整个系统的可靠性。任何电子产品都必须有一个电源为其提供能量才能工作,故本设计先从电源部分开始,再进行功能部分的设计。3.1 电源部分的设计稳压电源的功能是把来自电网的220V交流电压转变为所需
24、的、稳定的直流电压,为其他电路提供能源。它的设计在保证满足负载所须能量的同时,还要根据负载的特性及其对电源的要求(如稳压范围、纹波系数等),进行设计。必要时还要有过流、过压、欠压、过负载保护措施。现在常用的直流稳压电源有变压器式和开关式电源两种。3.1.1 变压器式直流稳压电源 变压器式直流稳压源由电源变压器、整流电路、滤波电路和稳压电路四个部分组成,如图3-1所示。市电先经电源变压器变换成所须等级的交流电压,而后经整流电路将之整流成直流电,这时的直流电脉动量很大,经滤波电路以减小其脉动量,最后经稳压电路进行稳压,从而得出符合要求的电压。变压器式直流稳压电源结构简单,设计容易,但它的体积较大,
25、效率也较低,过负载能力也差。(b)整流与稳压过程(a)稳压电源的组成框图 + 电 源 + 整 流 + 滤 波 + 稳 压 + u1 u2 u3 uI U0 _ 变压器 _ 电 路 _ 电 路 _ 电 路 _ u1 u2 u3 uI U0 0 t 0 t 0 t 0 t 0 t 图3-1 变压器式直流稳压电源的组成框图及整流与稳压过程3.1.2 开关式直流稳压电源 开关式直流稳压电源简称开关电源(Switching Power Supply),它是指起电压调整功能的器件始终以开关方式工作的一种直流稳压电源。图3-2所示为输入输出隔离的开关电源原理框图。50Hz单相交流220V电压或三相交流220
26、V380V电压经EMI防电磁干扰电源滤波器,直接整流滤波,然后再将滤波后的直流电压经变换电路变换为数赫或数百千赫的高频方波或准方波电压,通过高频变压器隔离并降压(或升压)后,再经高频整流、滤波电路,最后输出直流电压。通过取样、比较、放大及控制、驱动电路,控制变换器中功率开关管的占空比,便能得到稳定的输出电压。开关电源具有功耗小、效率高、体积小、重量轻、稳压范围宽、电路形式灵活多样等诸多优点。因而本设计采用开关电源。 EMI滤波器整流滤波变换电路高频变压器整流滤波控制电路取样比较放大交流输入直流输出图3-2 开关式直流稳压电源原理框图3.1.3 开关式直流稳压电源的设计 由于万年历系统都采用集成
27、电路,只需+5单电源供电,功耗低。故设计的开关电源比较简单,如图3-3所示。图3-3 开关式直流稳压电源原理图这个电源是自激振荡的反激式开关电源。220V交流输入,一端经过一个开关,另一端经过一个1电阻1R1后,进入由4个二极管1D1-1D4组成的电桥,进行整流。电阻1R1用来做保护的,如果后面出现故障等导致过流,那么这个电阻将被烧断,从而避免引起更大的故障。右边的电阻1R4构成一个高压吸收电路,当开关管1VT2关断时,负责吸收线圈上的感应电压,从而防止高压加到开关管1VT2上而导致击穿。1VT2为开关管(其型号为MJE13001),耐压400V,集电极最大电流0.2A,最大集电极功耗为10W
28、,用来控制原边绕组与电源之间的通、断。当原边绕组不停的通断时,就会在开关变压器中形成变化的磁场,从而在次级绕组中产生感应电压。左端的1R2为启动电阻,给开关管提供启动用的基极电流。 1R7为电流取样电阻,电流经取样后变成电压(其值约为10*Ie(1VT2),这电压经1R5后,加至三极管1VT1的基极上。当取样电压大约大于1.4V,即开关管电流大于0.14A时,三极管1VT1导通,从而将开关管1VT2的基极电压拉低,集电极电流减小,这样就限制了开关管的电流,防止电流过大而烧毁(其实这是一个恒流结构,将开关管的最大电流限制在140mA左右)。变压器左下方的绕组(取样绕组)的感应电压经整流二极管1D
29、5整流,电容1C2滤波后形成取样电压。取样电压超过稳压二极管1ZD1的稳压值后,稳压二极管1ZD1被击穿,使1VT1迅速导通,从而将开关1VT2的基极电位拉低,这将导致开关管断开或者推迟开关的导通,从而控制了能量输入到变压器中,也就控制了输出电压的升高,实现了稳压输出的功能。电阻1R3跟串联的电容1C1,则是正反馈支路,从取样绕组中取出感应电压,加到开关管的基极上,以维持振荡。变压器次级绕组,经二极管1D6整流,220uF电容滤波后输出5V的电压。因为开关电源的工作频率较高,普通整流二极管是不行的,要采用快速回复二极管,例如肖特基二极管等。同样因为频率高的原因,变压器也必须使用高频开关变压器,
30、铁心一般为高频铁氧体磁芯,具有高的电阻率,以减小涡流。LED为电源指示灯,1R8用于对LED进行限流。由于当电源工作于轻载时,开关频率较高,效率就不理想,为了防止过多的消耗发生在开关管上,应防止频率过分升高,具体的做法是在输出端加一固定电阻充当负载,即图中的1R9,其值的大小一般按不小于满负载的10%考滤。3.2 主电路的设计主电路的功能是完成年、月、日、星期、时、分、秒之间的转换,对温度传感器进行控制并读取温度转换后的值,再送往液晶显示屏LCD显示,还要判断定时时间是否到时,并且接受键盘操作,对日期和时间进行校正,以及对定时器进行设定和语音报时。3.2.1 主要芯片的选择主控芯片由单片机完成
31、。目前市场上的单片机种类很多,如Intel公司生产的80C51系列,ATMEL公司生产的AT89系列,Microchip公司生产的PIC系列等等。他们各有其优点及缺点。其中ATMEL公司生产的AT89系列单片机最为流行,它具有Flash ROM,擦写方便,价格便宜。因此选用AT89C51为主控芯片。显示模块采用216的LCD屏1602。1602LCD能显示2行,每行16个字符,显示直观、功耗小,有较高的性价比。温度传感器采用美国达拉斯(DALLAS)生产的可编程的DS18B20温度传感器。它直接输出数字量的温度值,精度高,测温分辨率可达0.0625。一线制总线,接口方便,体积小等诸多优点。语音
32、芯片选用美国信息存储器件公司推出的ISD420语音芯片。ISD1420芯片的外围元件简单,仅需少量阻容元件、麦克风即可组成一个完整的录放系统。ISD1420可以以字为单位来储存声音信息,以少量的语音信息,通过语音的组合,可形成多种语句。ISD1420采用模拟信息存储技术,重放音质好,接口灵活方便,同样具有优越的性价比。3.2.2 主电路原理分析万年历系统的原理图如图3-4所示。在图3-4中1602液晶显屏将要显示的内容显示出来。AT89C51完成年、月、日、星期、时、分、秒之间的转换,集成芯片2U4通过AT89C51的中断1向AT89C51提供精确的秒脉冲信号,以完成时钟和日历任务。在这里采用
33、外部中断提供秒脉冲信号,其目的有二:1、提高时钟的精度。2、在本系统中采用了一个DS18B20的数字温度传器,它是单总线型的,数据的传输有严格的时间要求。它测量一次,再加这一次读写操作,大约需要900毫秒,如果采用单片机内部定时器(12MHz晶振时,最大定时时间为65.536毫秒),就会在温度读写期间发生定时器中断,这样就会破坏DS18B20数据传输的时序,从而导致数据传输错误。采用外部中断的方式提供秒信号时,每秒只中断1次,在某次中断到下一次中断期间,已完成了数据的传输,这样就保证了DS18B20数据传输的正确性。图3-4 主电路原理图通过TA89C51的P0口与1602液晶显示屏进行命令和
34、数据的传输。在P0口中接有上拉电阻2R1,这是因为P0口为非准向I/O口,其内部输出三极管的集电极没有上拉电阻,是开路的,若不外接上拉电阻2R1,就会造成P0口不能输出高电平。P2.5用于控制传送给LCD的是命令还是要显示的内容。P2.5为高电平表示传送的是要显示的内容,P2.5为低电平表示传送的是控制命令。P2.6用于控制LCD的读和写操作。高电平为读操作,低电平为写操作。P2.7为使能控制,控制LCD是否接受操作。高电平时允许读操作,由高电平变为低电平的过程中,允许写操作。温度传感器DS18B20用单总线接在AT89C51的P2.4口上,按单总线协议进行数据传输。AT89C51的P1口与语
35、音芯片ISD1420的地址线A0-A7相连,用以控制发哪个音。ISD1420的与(25脚)AT89C51的P3.2口(外部中断0)相连,用来告诉AT89C51放音结束,可以启动下一次放音。启动放音采用边沿触发方式,ISD1420的(24脚)与AT89C51的P3.1口相连,用以启动放音。键盘电路采用四个键,分别接到AT89C51的P2.0-P2.3口上。SW1为功能键,用于控制当前校正的是哪部分,在正常显示的情况下连续按它,会在正常显示年月日星期时分正常显示之间循环变换。在定时调整时按它,会在时分定时开关控制位定时提示音选择正常显示之间变换。(在此状态下,连续按SW1不循环变换)。SW2、SW
36、3分别为“加1”、“减1”键。在校正状态下,每按一下SW2或SW3相应的部分就会加1或减1。若在正常显示状态下,按下SW2,就会显示定时显示状态。若在进入定时显示状态开始,大约在两秒内若按下了功能键SW1,则会转到定时器的设定状态,否则就返回正常显示状态。2R2、2C1构成AT89C51的复位电路。AT89C51复位的条件是使其复位端(9脚)保持高电平大于两个机器周期。在刚通电的时候,电源电压通过2R2向2C1充电,在2R2两端形成电压,使单片机的复位端为高电平,只要使2R2 2C1的时间常数大于两个机器周期,就可使AT89C51复位,一般2R2取1K、2C1取22uF。考虑到开关稳压电源的瞬
37、态响应时间稍长,2R2取4.7K。2C2、2C3、2Y1和AT89C51单片机内的高增益反相放大器,构成时钟脉冲电路。时钟脉冲的频率取决于晶振2Y1的振荡频率,最高可达24MHz,在此选12MHz。2C2、2C3主要起频率微调和稳定作用,一般可取1030pF。3.3 单片机外围芯片简介3.3.1 1602LCD显示模块1602LCD显示模块是一种字符型液晶显示模块,是一种专门用于显示字母、数字、符号等点阵式LCD,其主要技术参数如下: 显示容量为162个字符; 芯片工作电压为1.4-5.5V; 工作电流为2.0mA(5.0V); 模块最佳工作电压为5.0V; 字符尺寸为36.581(WH)mm
38、1602LCD显示模块对外部接口有16个引脚。各引脚的功能如表3-3-1所示表3-3-1 1602LCD显示模块引脚功能引脚号符号功能1Vss接地2Vdd+5V3VccLCD驱动电源 需随温的变化而调整4RS寄存器选择信号 H:数据寄存器 L:指令寄存器5R/W读写控制 H:读数据 L:写数据6E允许信号端 上升沿:锁存选择信号 下降沿:读/写数数或指令714DB0DB7数据输入/输出总线1516LED+ LED-背光灯电源1602LCD显示模块的寄存器选择(RS)、读/写(R/W)与操作之间的关系如表3-3-2所示表 3-3-2 1602LCD 的E、RS、R/W与操作之间的关系RSR/WE
39、操作00写指令码01读忙信号和地址计数器10写数据11读数据1602LCD显示模块的读写操作时序分别如图3-5、图3-6所示。图3-5 1602LCD读操作时序图3-6 1602LCD写操作时序1602LCD显示模块的指令系统如表3-3-3所示。表3-3-3 1602LCD指令系统序号指 令指 令 码指 令 说 明执行周期 (最大)f=250KHzRSR/WDB7DB6DB5DB4BD3DB2DB1DB01清屏0000000001清屏 置AC为零1.64ms2返回000000001*光标返回(AC=0),显示回原位。DDR内容不变40us3输入方式设置00000001J/DS设置光标及显示移动
40、方向。确定是移到显示还是移动光标40us4显示开关控制0000001DCB显示on/off为D, 光标on/off为C, 光标闪烁为B40us5光标或显示移000001S/CR/L*光标和显示的移动不影响DDRAM的内容40us6功能设置00001DLNF*接口数据位DL,显示行数N及字形F40us7CGRAM地址设置0001ACG设置CGRAM地址,设置后DDRAM数据可发送或接收40us8DDRAM地址设置001ADD设置DDRAM地址,设置后DDRAM数据可发送或接收40us9读忙信号(BF)及地址计数据01BFAC读BF,判断内部操作是否下在进行,读AC1us10写数据10写数据写数据
41、到CG或DDRAM40us11读数据11读数据从CG或DDRAM中读数据40us备注I/D=1增量方式;I/D=0减量方式S=1显示移位,S=0光标移位D=1显示打开,D=0显示关闭C=1光标打开,C=0光标关闭B=1光标闪烁,B=0光标停止闪烁S/C=1显示移位,S/C=0光标移位R/L=1右移,R/L=0左移DL=1 8位数据接口,DL=0 4位数据接口N=1 2行显示,N=0 1行显示F=1 5*10点字符,F=0 5*7点字符BF=1内部操作“忙”,BF=0可接受命令ACG:CGRAM地址ADD:DDRAM地址对应为光标地址AC:地址计数器,用于DDRAM和CGRAMDDRAM:显示数
42、据RAMCGRAM:字符生成RAMRS:寄存器选择R/W:读/写3.3.2 温度传感器DS18B20DS18B20数字温度计是DALLAS公司生产的1Wire,即单总线器件,具有线路简单,体积小的特点。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。1、DS18B20产品的特点 只要求一个端口即可实现通信。 在DS18B20中的每个器件上都有独一无二的序列号。 实际应用中不需要外部任何元器件即可实现测温。 测量温度范围在55到125之间。 数字温度计的分辨率用户可以从9位到12位选择。 内部有温度上、下限报警设置。2、DS18B20的引脚介绍DS1
43、8B20的封装及引脚排列见图3-7,其引脚功能描述见表3-3-4。DS18B20 TO-90封装底视图DS18B20 8脚SOIC封装图3-7 DS18B20的封装及引脚排列图表3-3-4DS18B20的引脚功能描述序号名称引脚功能描述1GND接地2DQ数据输入/输出引脚。漏极开路。当被用着在寄生电源下,也可以向器件提供电源。3VDD可选择的VDD引脚。当工作于寄生电源时,此引脚必须接地。 DS18B20内部结构如图3-8所示,主要由4部分组成:64位ROM、温度敏感元件、非易失性温度报警触发器TH和TL、配置寄存器。ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址
44、序列码,每个DS18B20的64位序列号均不相同。64位激光ROM从高位到低位依次为8位CRC、48位序列号和8位家族代码(28H)组成。ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。非易失性温度报警触发器TH和TL可通过软件写入用户报警上下限值。配置寄存器为高速暂存存储器中的第5个字节。DS18B20在工作时按此寄存器中的分辨率将温度转换成相应精度的数值,其各位定义如图3-9所示。其中,TM为测试模式标志位,出厂时被定入0,不能改变;R0、R1为温度计分辨率设置位,其对应四种分辨率见配置寄存器与分辨率关系表。出厂时R0、R1置为缺省值:R0=1,R1=1(即12位分辨率),用户可根据需要改写配置寄存器以获得合适的分辨率,配置寄存器与分辨率的关系见表3-3-5。64位ROM和单总线接口高速