




免费预览已结束,剩余52页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
佳木斯大学毕业论文电子台历的设计学 院 信息电子技术专 业 电子信息工程班 级 06级1班学 籍 号 0609054112姓 名 王 芳指导教师 史庆军佳 木 斯 大 学2010年6月8日佳木斯大学学士学位论文摘 要随着电子技术的飞速发展,基于单片机的设计已广泛应用于工业、农业、电力、电子等行业,微型计算机作为嵌入式控制系统的主体与核心,代替了传统的控制系统的常规电子线路。该课题阐述了基于单片机的电子台历的设计原理与实现方法。以设计过程为主线,分别从硬件和软件两个方面进行阐述。该设计以AT89S51单片机作为控制核心,实现了日期、时间、温度等参量的实时显示功能。本课题设计的电子台历由单片机最小应用系统模块、时钟模块、温度传感器模块、液晶显示模块组成。单片机最小应用系统模块由AT89S51单片机、时钟电路和复位电路组成,控制其它模块的正常工作;时钟模块主要由DS1302时钟芯片组成,为整个系统提供非常精确的时间数据;温度传感器模块主要由DS18B20芯片组成,该模块的主要作用就是获得周围环境的温度值;液晶显示模块主要由OCMJ4X8C液晶显示器组成,用于显示日期、时间、温度等参数,也可以通过按键来调整各个参数。关键词:单片机;传感器;电子台历 ABSTRACTWith the rapid development of electronic technology, the design based on Single-chip Microcomputer is widely applied in industry, agriculture, electric power, electron and so on. Microcomputer, as the core of the embedded control system, has substituted the traditional electronic circuit.In this paper, it presents how to carry out the design of electronic calendar in detail. Taking the designing process as the main line, it describes the entire designing process separately from two aspects: the hardware circuit design and the programming method. The electronic calendar consists of the single-chip microcomputer minimum system, the clock module, LCD display circuit, and SD18B20 temprature sensor circuit. The single-chip microcomputer minimum system, as the control core of the system, includes a single-chip microcomputer,a reset circuit and a clock circuit. The clock module is mainly composed of the DS1302 clock chip to provide very precise time for the system; The temperature sensor module is composed of DS18B20 chip, which is used to obtain the temperature value of the surrounding environment; The LCD module is mainly composed of the OCMJ4X8C display component, which is used to display the date、time、temperature and other parameters, these parameters can be adjusted by the keys.Key words:single-chip microcomputer electronic calendar temperature sensorii佳木斯大学信息电子技术学院佳木斯大学学士学位论文I佳木斯大学信息电子技术学院目 录摘 要iABSTRACTii第1章 绪论11.1 课题背景11.2 课题来源1第2章 硬件电路设计22.1 51单片机最小应用系统模块22.1.1 AT89S51单片机简介22.1.2 复位电路42.1.3 电源电路52.1.4 时钟电路62.2 时钟模块电路设计72.3 温度传感器模块电路设计92.4 液晶显示模块电路设计122.5 本章小结14第三章 系统软件设计153.1 单片机最小应用系统模块软件设计163.2 时钟模块软件设计163.3 温度传感器模块软件设计183.4 液晶显示模块软件设计193.5 本章小结20结论21致 谢23参考文献24附录1 电路原理图25附录2 PCB图26附录3 元器件清单27附录4 程序清单29附录5 外文参考资料翻译5153佳木斯大学信息电子技术学院第1章 绪论1.1 课题背景 在日常生活中,台历是一个再常见不过的东西了,当然,它也是生活中的必备品。目前常见的台历有纸架台历,水晶台历,便签式台历等,但是这些台历有一个显而易见的缺点,就是人们要每天手动翻页,这样才能够保证上面展示的是当前日期,并且这种台历一般要每年换一本新的,使用起来很不方便。在这种情况下,出现了电子台历。 在单片机技术日趋成熟的今天,其灵活的硬件电路的设计和软件的设计,让单片机得到了广泛的应用,几乎是从小的电子产品,到大的工业控制,单片机都起到了举足轻重的作用。以往台历使用不方便,再加上它一般都是纸质,从环保角度考虑,如果每年人们都换掉一批旧的往年台历,然后买一批当年台历的话,因此而牺牲的树将是一个很惊人的数目。所以人们针对这些缺点开始研发这样一种基于单片机的电子台历,使之可以自己只能显示时间日期等信息,而不必像以往那样每天记着将明天的日期翻出来,并且使用有效期很长久,不必每年更换新的台历。无疑,基于单片机的电子台历的出现将会为我们的生活提供很多便利,也将为日常生活数字化贡献一份力量。1.2 课题来源与任何一个技术的发展过程一样,电子台历的发展也需要经过不断地改进和完善。早期常用的一些时间控制单元都使用模拟电路设计制作的,其定时准确性和重复精度都不是很理想,现在基本上都是基于数字技术的新一代产品,随着单片机性能价格比的不断提高,新一代产品的应用也越来越广泛,大可构成复杂的工业过程控制系统,完成复杂的控制功能。小则可以用于家电控制,甚至可以用于儿童电子玩具。它功能强大,体积小,质量轻,灵活好用,配以适当的接口芯片,可以构造各种各样、功能各异的微电子产品。随着电子技术的飞速发展,为了方便人们的生活,很多家用电器及公交系统上都设计了电子台历功能,应这个需求,人们就想到了制作这样一个基于单片机的电子台历产品,这个产品可以方便快捷的控制时间日期,再加上时钟芯片,电子台历功能就可以更加方便快捷的实现,并且我这里加入了温度传感器模块,可以方便的让人们知道自己周围的温度。在单片机的基础上设计的电子台历这种具有智能化特性的产品方便了人们的生活,扩大了数字化的范围。该课题介绍的是本次设计的设计背景及设计的生活来源,该设计可以完成一般台历所具有的功能,且该电子台历操作简单,功能齐全,是单片机在实际生活中的一种应用。第2章 硬件电路设计该次设计的硬件部分可以划分为这样几个模块:单片机最小系统、DS1302时钟模块、按键电路模块、以及LCD液晶显示模块、温度传感器模块五大主要部分。整体电路经过编程调试之后可以准确显示年、月、日、星期、时、分、秒、温度等各项信息。系统原理框图如图2-1所示:按键电路模块OCMJ4X8C模块DS1302模块温度模块89S51最小系统 图2-1 系统原理框图2.1 51单片机最小应用系统模块单片机的最小系统,主要指的是最小应用系统,最小应用系统是能维持单片机运行的最简单的配置系统。这种系统成本低廉、结构简单,经常构成一些简单的控制系统,如开关状态的输入/输出控制等。一个单片机最小系统一般包括:电源电路,复位电路,时钟电路。2.1.1 AT89S51单片机简介MCS-51 单片机是美国INTE 公司于1980 年推出的产品,典型产品有 80 31(内部没有程序存储器,实际使用方面已经被市场淘汰)、8051(芯片采用HMOS,功耗是630mW,是89C51 的5 倍,实际使用方面已经被市场淘汰)和8751 等通用产品,一直到现在, MCS-5 1 内核系列兼容的单片机仍是应用的主流产品(比如目前流行的89S51、已经停产的89C51 等),各高校及专业学校的培训教材仍与MCS-51 单片机作为代表进行理论基础学习。 有些文献甚至也将8051 泛指MCS-51 系列单片机,8051 是早期的最典型的代表作,由于MCS-51 单片机影响极深远,许多公司都推出了兼容系列单片机,就是说MCS-51 内核实际上已经成为一个8 位单片机的标准。 其他的公司的51 单片机产品都是和MCS-51 内核兼容的产品而以。同样的一段程序,在各个单片机厂家的硬件上运行的结果都是一样的,如ATMEL 的89C51(已经停产)、89S51, PHILIPS(菲利浦),和WINBOND(华邦)等,我们常说的已经停产的89C51 指的是ATMEL公司的 AT 89C51 单片机,同时是在原基础上增强了许多特性,如时钟,更优秀的是由Flash(程序存储器的内容至少可以改写 1000 次)存储器取带了原来的 ROM(一次性写入),AT89C51 的性能相对于8051 已经算是非常优越的了。 不过在市场化方面,89C51 受到了PIC 单片机阵营的挑战,89C51 最致命的缺陷在于不支持ISP(在线更新程序)功能,必须加上ISP 功能等新功能才能更好延续MCS-51 的传奇。89S51就是在这样的背景下取代89C51 的,现在,89S51 目前已经成为了实际应用市场上新的宠儿,作为市场占有率第一的Atmel 目前公司已经停产AT89C51,将用AT89S51 代替。89S51 在工艺上进行了改进,89S51 采用 0.35 新工艺,成本降低,而且将功能提升,增加了竞争力。89SXX 可以像下兼容89CXX 等51 系列芯片。市场上见到的89C51 实际都是Atmel 前期生产的巨量库存而以。如果市场需要,Atmel当然也可以再恢复生产AT89C51。AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案单片机AT89S51的内部结构可以划分为CPU、存储器、并行口、串行口、定时/计数器和中断逻辑几个部分。 CPU由运算器和控制逻辑构成。其中包括若干特殊功能寄存器(SFR) AT89S51时钟有两种方式产生,即内部方式和外部方式。 AT89S51在物理上有四个存储空间:片内/片外程序存储大路、片内/片外数据存储器。片内有256B数据存储器RAM和4KB的程序存储器ROM。除此之外,还可以在片外扩展RAM和ROM,并且和有64KB的寻址范围。 AT89S51内部有一个可编程的、全双工的串行接口。它串行收发存储在特殊功能寄存器SFR的串行数据缓冲器SBUF中的数据。 AT89S51共有4个(P0、P1、P2、P3口)8位并行I/O端口,共32个引脚。P0口双向I/O口,用于分时传送低8位地址和8位数据信号;P1、P2、P3口均为准双向I/O口;其中P2口还用于传送高8位地址信号;P3口每一引脚还具有特殊功能,用于特殊信号的输入输出和控制信号。 AT89S51内部有两个16位可编程定时器/计数器T0、T1。最大计数值为216-1。工作方式和定时器或计数器的选择由指令来确定。 中断系统允许接受5个独立的中断源,即两个外部中断,两个定时器/计数器中断以及一个串行口中断。AT89S51引脚图如图2-2所示:图2-2 AT89S51单片机引脚图2.1.2 复位电路为确保微机系统中电路稳定可靠工作,复位电路是必不可少的一部分,复位电路的第一功能是上电复位。一般微机电路正常工作需要供电电源为5V5%,即4.755.25V。由于微机电路是时序数字电路,它需要稳定的时钟信号,因此在电源上电时,只有当VCC超过4.75V低于5.25V以及晶体振荡器稳定工作时,复位信号才被撤除,微机电路开始正常工作。MCS-51单片机的复位是由外部的复位电路来实现的。复位引脚RST通过一个斯密特触发器与复位电路相连,斯密特触发器用来抑制噪声,在每个机器周期的S5P2,斯密特触发器的输出电平由复位电路采样一次,然后才能得到内部复位操作所需要的信号。上电复位:上电复位电路是一种简单的复位电路,在计算机刚通电的瞬间,复位电容器充电,将CPU的输出状态强行置为预定的状态。待计算机时钟振荡正常,然后等待逻辑运算器开始正常工作后,才开放计算机的输出。只要在RST复位引脚接一个电容到VCC,接一个电阻到地就可以了。上电复位是指在给系统上电时,复位电路通过电容加到RST复位引脚一个短暂的高电平信号,这个复位信号随着VCC对电容的充电过程而回落,所以RST引脚复位的高电平维持时间取决于电容的充电时间。即通电时,电容两端相当于短路,RST引脚上为高电平,然后电源通过电阻对电容充电,RST端电压慢慢下降,降到一定电压值以下,即为低电平,单片机开始正常工作。为了保证系统安全可靠的复位,RST引脚的高电平信号必须维持足够长的时间。自动复位是通过外部复位电路的电容充电来实现的。只要VCC的上升时间不超过1ms,就可以实现自动复位。 原理就是通过给电容的放电令单片机内部RAM部分清空,作用是有很多不如为了再向单片机内部烧录程序时就要手动复位,这个电路图就是手动复位的,复位电路形式要看你的寄存器的储存的形式来设计的,上电复位就是开机复位,另内部程序指向0000H,然后从头走,相对开机复位来说还有就是手动复位,还有就是复位有软硬之分,电路图这个就是硬件复位,还有靠指令复位清空的就是软件复位。 电路如图2-3所示:图2-3复位电路2.1.3 电源电路电源电路是指车载功放的电源部分的设计,使用的电路形式和特点。对于一个功放来说,其电源部分非常重要,专业功放的电源电路的容量往往是根据放大器的实际消耗,再加足够的富裕量,因此比同样标称功率的普通功放的容量大得多,因此电源电路可以从一个侧面反映出整个功放的好坏。常见的电源电路有D级放大器电路、MOSFET电路、高性能平衡绝缘电路等。为了让电路工作起来,理所当然应当给它一个工作电压,这就需要设计一个正确合理的电源电路。该课题的电源采用固定式三端稳压电源。在电子产品中,常见的三端稳压集成电路有正电压输出的78 系列和负电压输出的79系列。顾名思义,三端IC是指这种稳压用的集成电路,只有三条引脚输出,分别是输入端、接地端和输出端。它的样子象是普通的三极管,TO- 220 的标准封装,也有9013样子的TO-92封装。 用78/79系列三端稳压IC来组成稳压电源所需的外围元件极少,电路内部还有过流、过热及调整管的保护电路,使用起来可靠、方便,而且价格便宜。该系列集成稳压IC型号中的78或79后面的数字代表该三端集成稳压电路的输出电压,如7806表示输出电压为正6V,7909表示输出电压为负9V。 因为三端固定集成稳压电路的使用方便,电子制作中经常采用。电路如图2-4所示:图2-4 电源电路2.1.4 时钟电路产生时钟脉冲信号的电路叫“时钟电路”。脉冲就是一系列交变信号,当然,时钟电路产生的脉冲越接近方波越使人感觉理想。时钟是单片机的心脏,单片机各功能部件的运行都是以时钟频率为基准,有条不紊的一拍一拍地工作。因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。常用的时钟电路有两种方式:一种是内部时钟方式,另一种为外部时钟方式。内部时钟,是用芯片内部振荡电路,精度不高,温飘也较大,不需要外部振荡器件。外部时钟,分RC振荡和石英晶振,RC精度不高,成本低,石英晶振,精度高,稳定性好,根据使用场合,选择适合的时钟方式。本文用的是内部时钟方式。MCS-51单片机内部有一个用于构成振荡器的高增益反相放大器,该高增益反向放大器的输入端为芯片引脚XTAL1,输出端为引脚XTAL2。这两个引脚跨接石英晶体振荡器和微调电容,就构成一个稳定的自激振荡器。电路如图2-5所示:图2-5 系统的时钟电路2.2 时钟模块电路设计为能够使时间和日期等功能更方便的实现,我在电路中选用了一款时钟芯片DS1302。 现在流行的串行时钟电路很多,如DS1302、DS1307、PCF8485等。这些电路的接口简单、价格低廉、使用方便,被广泛地采用。本文介绍的实时时钟电路DS1302是DALLAS公司的一种具有涓细电流充电能力的电路,主要特点是采用串行数据传输,可为掉电保护电源提供可编程的充电功能,并且可以关闭充电功能。采用普通32.768kHz晶振。 DS1302是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个318的用于临时性存放数据的RAM寄存器。DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后背电源双电源引脚,同时提供了对后背电源进行涓细电流充电的能力。 DS1302的引脚排列,其中Vcc1为后备电源,VCC2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。当Vcc2大于Vcc10.2V时,Vcc2给DS1302供电。当Vcc2小于Vcc1时,DS1302由Vcc1供电。X1和X2是振荡源,外接32.768kHz晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。RST输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电运行时,在Vcc2.5V之前,RST必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。I/O为串行数据输入输出端(双向),后面有详细说明。SCLK始终是输入端。 DS1302的控制字节的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入DS1302中,位6如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出。 在控制指令字输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个SCLK脉冲的下降沿读出DS1302的数据,读出数据时从低位0位到高位7。 DS1302有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式。 此外,DS1302还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器内容。DS1302与RAM相关的寄存器分为两类:一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0HFDH,其中奇数为读操作,偶数为写操作;另一类为突发方式下的RAM寄存器,此方式下可一次性读写所有的RAM的31个字节,命令控制字为FEH(写)、FFH(读)。 DS1302与CPU的连接需要三条线,即SCLK(7)、I/O(6)、RST(5)。图3示出DS1302与89C2051的连接图,其中,时钟的显示用LCD。 实际上,在调试程序时可以不加电容器,只加一个32.768kHz的晶振即可。只是选择晶振时,不同的晶振,误差也较大。另外,还可以在上面的电路中加入DS18B20,同时显示实时温度。只要占用CPU一个口线即可。LCD还可以换成LED,还可以使用北京卫信杰科技发展有限公司生产的10位多功能8段液晶显示模块LCM101,内含看门狗(WDT)/时钟发生器及两种频率的蜂鸣器驱动电路,并有内置显示RAM,可显示任意字段笔划,具有34线串行接口,可与任何单片机、IC接口。功耗低,显示状态时电流为2A(典型值),省电模式时小于1A,工作电压为2.4V3.3V,显示清晰。 DS1302与微处理器进行数据交换时,首先由微处理器向电路发送命令字节,命令字节最高位MSB(D7)必须为逻辑1,如果D7=0,则禁止写DS1302,即写保护;D6=0,指定时钟数据,D6=1,指定RAM数据;D5D1指定输入或输出的特定寄存器;最低位LSB(D0)为逻辑0,指定写操作(输入),D0=1,指定读操作(输出)。 在DS1302的时钟日历或RAM进行数据传送时,DS1302必须首先发送命令字节。若进行单字节传送,8位命令字节传送结束之后,在下2个SCLK周期的上升沿输入数据字节,或在下8个SCLK周期的下降沿输出数据字节。 DS1302与RAM相关的寄存器分为两类:一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0HFDH,其中奇数为读操作,偶数为写操作;再一类为突发方式下的RAM寄存器,在此方式下可一次性读、写所有的RAM的31个字节。 要特别说明的是备用电源B1,可以用电池或者超级电容器(0.1F以上)。虽然DS1302在主电源掉电后的耗电很小,但是,如果要长时间保证时钟正常,最好选用小型充电电池。可以用老式电脑主板上的3.6V充电电池。如果断电时间较短(几小时或几天)时,就可以用漏电较小的普通电解电容器代替。100 F就可以保证1小时的正常走时。DS1302在第一次加电后,必须进行初始化操作。初始化后就可以按正常方法调整时间。 DS1302存在时钟精度不高,易受环境影响,出现时钟混乱等缺点。DS1302可以用于数据记录,特别是对某些具有特殊意义的数据点的记录,能实现数据与出现该数据的时间同时记录。这种记录对长时间的连续测控系统结果的分析及对异常数据出现的原因的查找具有重要意义。传统的数据记录方式是隔时采样或定时采样,没有具体的时间记录,因此,只能记录数据而无法准确记录其出现的时间;若采用单片机计时,一方面需要采用计数器,占用硬件资源,另一方面需要设置中断、查询等,同样耗费单片机的资源,而且,某些测控系统可能不允许。但是,如果在系统中采用时钟芯片DS1302,则能很好地解决这个问题采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个318的用于临时性存放数据的RAM寄存器。DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后背电源双电源引脚,同时提供了对后背电源进行涓细电流充电的能力。具体接线电路如图2-6所示: 图 2-6 时钟芯片电路2.3 温度传感器模块电路设计温度是一个物理量,温度传感器的作用就是把这个物理量的变化变成一定关系的(如线性)电信号的变化(如电压或者电流),然后这个电信号就可以通过导线传送给处理单元来进行处理计算,计算的结果就可以送给外接的显示器如LED或者LCD显示出温度数字。目前,在工业控制的很多领域,温度监控普遍是利用热敏电阻组成的测温电路,经过AD与DA转换后实现测温,但是由于热敏电阻的不稳定性,导致测温易受外界干扰、且精度不高。在该模块设计中,选用了温度传感器DS18B20元件,DS18B20是美国DALLAS半导体公司继DS1820之后最新推出的一种改进型智能温度传感器。与传统的热敏电阻相比,他能够直接读出被测温度并且可根据实际要求通过简单的编程实现912位的数字值读数方式。可以分别在93.75 ms和750 ms内完成9位和12位的数字量,并且从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源。因而使用DS18B20可使系统结构更趋简单,可靠性更高。他在测温精度、转换时间、传输距离、分辨率等方面较DS1820有了很大的改进,给用户带来了更方便的使用和更令人满意的效果。 DS18B20的内部结构 DS18B20采用3脚PR35封装或8脚SOIC封装。64 b闪速ROM的结构如下: 开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最后8位是前56位的CRC校验码,这也是多个DS18B20可以采用一线进行通信的原因。 非易市失性温度报警触发器TH和TL,可通过软件写入用户报警上下限。 高速暂存存储器 DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的E2RAM。后者用于存储TH,TL值。数据先写入RAM,经校验后再传给E2RAM。而配置寄存器为高速暂存器中的第5个字节,他的内容用于确定温度值的数字转换分辨率,DS18B20工作时按此寄存器中的分辨率将温度转换为相应精度的数值。该字节各位的定义如下: 低5位一直都是1,TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式。在DS18B20出厂时该位被设置为0,用户不要去改动,R1和R0决定温度转换的精度位数,即是来设置分辨率,如表1所示(DS18B20出厂时被设置为12位)。设定的分辨率越高,所需要的温度数据转换时间就越长。因此,在实际应用中要在分辨率和转换时间权衡考虑。 高速暂存存储器除了配置寄存器外,还有其他8个字节组成,其分配如下所示。其中温度信息(第1,2字节)、TH和TL值第3,4字节、第68字节未用,表现为全逻辑1;第9字节读出的是前面所有8个字节的CRC码,可用来保证通信正确。 当DS18B20接收到温度转换命令后,开始启动转换。转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1,2字节。单片机可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式以0062 5 /LSB形式表示。温度值格式如下: 对应的温度计算:当符号位S=0时,直接将二进制位转换为十进制;当S=1时,先将补码变换为原码,再计算十进制值。表2是对应的一部分温度值。DS18B20完成温度转换后,就把测得的温度值与TH,TL作比较,若TTH或TTL,则将该器件内的告警标志置位,并对主机发出的告警搜索命令作出响应。因此,可用多只DS18B20同时测量温度并进行告警搜索。 CRC的产生 在64 b ROM的最高有效字节中存储有循环冗余校验码(CRC)。主机根据ROM的前56位来计算CRC值,并和存入DS18B20中的CRC值做比较,以判断主机收到的ROM数据是否正确。 DS18B20的测温原理 低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1,高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入,还隐含着计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55 所对应的基数分别置入减法计数器1和温度寄存器中,减法计数器1和温度寄存器被预置在-55 所对应的一个基数值。减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图2中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值,这就是DS18B20的测温原理。 另外,由于DS18B20单线通信功能是分时完成的,他有严格的时隙概念,因此读写时序很重要。系统对DS18B20的各种操作必须按协议进行。操作协议为:初始化DS18B20(发复位脉冲)发ROM功能命令发存储器操作命令处理数据。 DS18B20 单线数字温度计的特性: 独特的单线接口仅需一个端口引脚进行通讯。 简单的多点分布应用。 无需外部器件。 可通过数据线供电。 零待机功耗。 测温范围-55+125,以0.5递增。华氏器件-67+2570F,以0.90F 递增。 温度以9 位数字量读出。 温度数字量转换时间200ms(典型值)。 用户可定义的非易失性温度报警设置。 报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件。 它的应用方面包括温度控制、工业系统、消费品、温度计或任何热感测系统。DS18B20 数字温度计以9 位数字量的形式反映器件的温度值,通过一个单线接口发送或接收信息,因此在中央微处理器和DS18B20 之间仅需一条连接线(加上地线)。用于读写和温度转换的电源可以从数据线本身获得,无需外部电源。因为每个DS18B20 都有一个独特的片序列号,所以多只DS18B20 可以同时连在一根单线总线上,这样就可以把温度传感器放在许多不同的地方。这一特性在HVAC 环境控制、探测建筑物、仪器或机器的温度以及过程监测和控制等方面非常有用。该模块具体电路如图2-7所示:图2-7 温度传感器模块电路2.4 液晶显示模块电路设计液晶显示器中最主要的物质就是液晶,它是一种规则性排列的有机化合物,是一种介于固体和液体之间的物质,目前一般采用的是分子排列最适合用于制造液晶显示器的nematic细柱型液晶。液晶的物理特性是:当通电时导通,分子排列变的有秩序,使光线容易通过;不通电时分子排列混乱,阻止光线通过。让液晶分子如闸门般地阻隔或让光线穿透。大多数液晶都属于有机复合物质,由长棒状的分子构成。在自然状态下,这些棒状分子的长轴大致平行。将液晶倒入一个经精良加工的开槽平面,液晶分子会顺着槽排列,所以假如那些槽非常平行,则各分子也会是完全平行的。从技术上简单地说,液晶面板包含了两片相当精致的无钠玻璃素材,称为Substrates,中间夹著一层液晶。当光束通过这层液晶时,液晶本身会排排站立或扭转呈不规则状,因而阻隔或使光束顺利通过。 从液晶显示器的结构来看,无论是笔记本电脑还是桌面系统,采用的LCD显示屏都是由不同部分组成的分层结构。LCD由两块玻璃板构成,厚约1mm,其间由包含有液晶材料的5m均匀间隔隔开。因为液晶材料本身并不发光,所以在显示屏两边都设有作为光源的灯管,而在液晶显示屏背面有一块背光板(或称匀光板)和反光膜,背光板是由荧光物质组成的可以发射光线,其作用主要是提供均匀的背景光源。背光板发出的光线在穿过第一层偏振过滤层之后进入包含成千上万液晶液滴的液晶层。液晶层中的液滴都被包含在细小的单元格结构中,一个或多个单元格构成屏幕上的一个像素。在玻璃板与液晶材料之间是透明的电极,电极分为行和列,在行与列的交叉点上,通过改变电压而改变液晶的旋光状态,液晶材料的作用类似于一个个小的光阀。在液晶材料周边是控制电路部分和驱动电路部分。当LCD中的电极产生电场时,液晶分子就会产生扭曲,从而将穿越其中的光线进行有规则的折射,然后经过第二层过滤层的过滤在屏幕上显示出来。 液晶显示技术也存在弱点和技术瓶颈,与CRT显示器相比亮度、画面均匀度、可视角度和反应时间上都存在明显的差距。其中反应时间和可视角度均取决于液晶面板的质量,画面均匀度和辅助光学模块有很大关系。而液晶显示器的亮度主要取决于背光光源。 对于液晶显示器来说,亮度往往和他的背板光源有关。背板光源越亮,整个液晶显示器的亮度也会随之提高。而在早期的液晶显示器中,因为只使用2个冷光源灯管,往往会造成亮度不均匀等现象,同时明亮度也不尽人意。一直到后来使用4个冷光源灯管产品的推出,才有了不小的改善。 信号反应时间也就是液晶显示器的液晶单元响应延迟。实际上就是指的液晶单元从一种分子排列状态转变成另外一种分子排列状态所需要的时间,响应时间愈小愈好,它反应了液晶显示器各象素点对输入信号反应的速度,即pixel由暗转亮或由亮转暗的速度。响应时间越小则使用者在看运动画面时不会出现尾影拖拽的感觉。有些厂商会通过将液晶体内的导电离子浓度降低来实现讯号的快速响应,但其色彩饱和度、亮度、对比度就会产生相应的降低,甚至产生偏色的现象。这样信号反应时间上去了,但却牺牲了液晶显示器的显示效果。有些厂商采用的是在显示电路中加入了一片IC图像输出控制芯片,专门对显示信号进行处理的方法来实现的。IC芯片可以根据VGA输出显卡信号频率,调整信号响应时间。由于没有改变液晶体的物理性质,因此对其亮度、对比度、色彩饱和度都没有影响,这种方法的制造成本也相对较高。 LCD点阵显示器成本低,配置灵活,与单片机接口简单,在单片机应用系统中广泛应用。这里为显示年月日星期等汉字,选用一款OCMJ4X8C的128*64点阵式液晶屏。OCMJ4X8C液晶显示器模块5是全屏幕图形点阵式液晶显示器组件,由控制器、驱动器和全点阵液晶显示器组成。可完成图形显示,也可以显示汉字(4 *8个1616点阵汉字);与CPU接口是8位数据线和几条地址线,而不用另外加控制器(如HD61830等),另外3条电源线供芯片和LCD驱动。中文模块可以显示字母、数字符号、中文字型及图形,具有绘图及文字画面混合显示功能。提供三种控制接口,分别是8位微处理器接口,4位微处理器接口及串行接口(OCMJ4X16A/B无串行接口)。所有的功能,包含显示RAM,字型产生器,都包含在一个芯片里面,只要一个最小的微处理系统,就可以方便操作模块。内置2M-位中文字型ROM (CGROM) 总共提供8192 个中文字型(16*16 点阵),16K-位半宽字型ROM (HCGROM) 总共提供126 个符号字型(16*8 点阵),64 * 16位字型产生RAM (CGRAM),另外绘图显示画面提供一个64*256点的绘图区域(GDRAM),可以和文字画面混和显示。提供多功能指令:画面清除(Display clear)、光标归位(Return home)、显示打开/关闭(Display on/off)、光标显示/隐藏(Cursor on/off)、显示字符闪烁(Display character blink)、光标移位(Cursor shift)、显示移位(Display shift)、垂直画面卷动(Vertical line scroll)、反白显示(By_line reverse display)、待命模式(Standby mode)。 OCMJ4X8C液晶显示器与单片机的具体接线电路如图2-8所示: 图2-8 OCMJ4X8C 与单片机的接口电路2.5 本章小结本章介绍的是本设计的主要硬件结构,单片机的相关I/O口输入输出就可以实现相应的控制功能。还介绍了单片机的复位电路、时钟电路、时钟芯片电路、LCD显示电路、按键电路以及温度感应电路。这些电路都设计好以后,再生成PCB图。第三章 系统软件设计软件编写的过程需要反复调试和修改,这部分需要做的工作相对硬件方面要更加细致。总体软件设计流程图如图3-1所示:开始结束时钟芯片初始化单片机初始化显示子程序液晶显示初始化温度传感器初始化图3-1 总体软件设计流程图3.1 单片机最小应用系统模块软件设计在硬件电路设计中,最小系统接了指示灯,用来验证最小系统能否正常工作。该部分的软件设计主要完成各个模块的初始化。最小应用系统模块软件设计流程图如图3-2所示:图3-2 最小系统软件设计流程图3.2 时钟模块软件设计该模块主要负责时间日期等信息的存取,DS1302时钟芯片既提供实时时钟,又把关键的数据位存储于RAM。DS1302写入数据时,数据应在时钟下降沿发生变化,上升沿将数据写入DS1302内部移位寄存器。读取DS1302数据时,数据也在时钟下降沿变化,即在下降沿数据从移位寄存器输出,但当CLK时钟为正半周时,I/O线为高阻态,所以应在上升沿前读取,否则将读出全为FFH。 通过把输入驱动置高电平来启动所有的数据传送。输入有两种功能:首先,接通控制逻辑,允许地址命令序列送入移位寄存器;其次,提供了终止单字节或多字节数据的传送手段。当为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中置为低电平,则会终止此次数据传送,并且I/O引脚变为高阻态。上电运行时,在Vcc2.5V之前,必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。DS1302 的控制字如图3-3所示: 图3-3 DS1302控制字控制字节的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入DS1302中,位6如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0,表示 要进行写操作,为1,表示进行读操作,控制字节总是从最低位开始输出。数据输入输出(I/O)在控制指令字输入后的下一个SCLK的时钟的上升沿时数据被写入DS1302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个SCLK脉冲的下降沿读出DS1302的数据,读出数据时从低位0开始到高位7。DS1302有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式。该模块主要需要进行的软件设计工作可以分为读数据和写数据两大部分。该模块程序的写和读设计流程图如图3-4所示:图3-4 时钟模块软件设计流程图3.3 温度传感器模块软件设计温度传感器模块的软件设计,主要完成DS18B20的测量温度值计算及温度值的显示功能。其采用模块化设计,程序设计包括系统初始化、复位程序、读取温度程序、温度转换程序、液晶显示程序和延时程序。流程图如图3-5所示:图3-5 温度传感器模块软件设计流程图下面是该模块程序的读数据部分:uchar ReadOneChar () /读一个字节uchar j=0;uchar dat1=0;for (j=0;j= 1; DQ=0; /先将数据线拉低作为开始标志 delay1us(6);/2us /起始标志后一个短暂延时 DQ=1; /释放数据线 产生一个上升沿 delay1us(14);/10us /等待数据 if(DQ) dat1|=0x80; /获得数据 delay1us(42); /60us 每次操作间隔60us DQ=1; /释放数据线 delay1us(10);return(dat1);3.4 液晶显示模块软件设计为了让各种参数如年、月、日、时、分、秒、星期、温度等参数清晰明确的显示出来,这里选用一个点阵液晶显示屏,由它负责将各参数以简单明了的数字、文字形式表现出来。OCMJ4X8C是12864液晶显示屏中的一种,它共有128*64点阵,即每行显示128点,每列显示64点。此种型号的液晶显示屏以中间间隔平均划分为左屏和右屏分别显示,均为64*64点阵,而且各自都有独立的片选信号控制选择。先显示左屏,左屏全部显示完后才能显示右屏。显示屏上的显示数据由显示数据随机存储器DDRAM提供。DDRAM每字节中的每1个bit,对应显示屏上的1个点。bit值为1,对应点显示,反之不显示。每半屏显示数据共有512字节的DDRAM,分为8个数据页来管理,这些页对应显示屏从上到下编号为07页,每页64字节,涵盖半边显示屏的64行*64列*8bit点阵数据。向显示屏写数据实际上是向DDRAM中写数据,DDRAM不同页和不同列中的字节数据唯一对应显示屏一行的8个显示点。例如
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年事业单位工勤技能-江苏-江苏保健按摩师四级(中级工)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-广西-广西地图绘制员五级(初级工)历年参考题库含答案解析
- 2025年事业单位工勤技能-广东-广东热处理工一级(高级技师)历年参考题库含答案解析
- 2025年事业单位工勤技能-广东-广东机械热加工四级(中级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广东-广东地质勘查员五级(初级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广东-广东保育员五级(初级工)历年参考题库含答案解析
- 2020-2025年初级经济师之初级建筑与房地产经济通关题库(附答案)
- 2025年驾驶证考试-客车理论考试-客车驾驶证(科目一)历年参考题库含答案解析(5套)
- 2025年职业技能鉴定-铁路职业技能鉴定-铁路职业技能鉴定(铁路钢轨探伤工)技师历年参考题库含答案解析(5套)
- 2025年职业技能鉴定-铁路职业技能鉴定-变电值班员(初级工)历年参考题库含答案解析(5套)
- 2025年鞍山市铁西区教育局面向师范类院校应届毕业生校园招聘45人笔试参考题库附答案解析
- 空调与制冷操作考试试题(含答案)
- (2025年)河南省信阳市辅警协警笔试笔试真题(含答案)
- 从《大学衍义补》窥探丘濬法律思想的时代映照与传承价值
- 2025江西九江都昌县公安局招聘警务辅助人员14人笔试备考题库及答案解析
- 肿瘤药物配制注意事项
- GB/T 22126-2025物流中心作业通用规范
- 2025至2030年中国光接入系统设备行业发展前景及投资战略咨询报告
- 土地 赠与协议书
- 非遗数字技术课件
- 2024-2025学年吉林省吉林十二中高一(下)期末数学试卷(含答案)
评论
0/150
提交评论