基于单片机的多功能显示设计

上传人:痛*** 文档编号:66442155 上传时间:2022-03-28 格式:DOC 页数:60 大小:1.63MB
收藏 版权申诉 举报 下载
基于单片机的多功能显示设计_第1页
第1页 / 共60页
基于单片机的多功能显示设计_第2页
第2页 / 共60页
基于单片机的多功能显示设计_第3页
第3页 / 共60页
资源描述:

《基于单片机的多功能显示设计》由会员分享,可在线阅读,更多相关《基于单片机的多功能显示设计(60页珍藏版)》请在装配图网上搜索。

1、目录摘要1前言1第1章绪论21.1单片机技术和发展趋势21.2 LCD显示技术3第2章多功能显示屏设计构思42.1系统总设计流程42.2单片机选择方案52.3数据模块方案采集72.4 AVF单片机系统开发工具8第3章 系统硬件设计和实现 93.1系统硬件概述 103.2硬件电路各模块工作原理10第4章系统软件设计184.1系统设计总框图 194.2各模块软件设计 19第5章 系统设计结果和分析 245.1测试仪器245.2硬件测试245.3软件测试245.4测试结果分析 25第6章全文总结和展望25致谢27参考文献28附录:304558基于单片机的多功能显示屏使用系统设计学生:李丽指导老师:邓

2、丽华(三峡大学 电气和新能源学院)摘 要:本设计利用ATmegal单片机读取来自时钟芯片,温度传感器的数据, 实现秒、分、时、日、月、年的控制以及室内温度的采集并最终通过LCD液晶显示屏显示结果。此外还可以实现时间调整、定时和滚动显示等多种实用功能。整 个设计分硬件和软件两大部分。硬件部分采用ATMega%单片机作为控制核心,FYD 12864液晶屏作为信号输出显示部分;软件部分利用C语言作为设计语言,对ATmega16进行编程来实现各种功能。关键词:单片机,LCD温度采集Abstract: This desig n used ATMega16 read from the clock chip

3、 microco ntroller, temperature sen sor,its AD data, to achieve sec on ds, minu tes, hours, days, mon ths, years, in door temperature con trol and output voltage of the collecti on and the collection and eventually through the LCD liquid crystal The display shows the results. Also allows time to adju

4、st, timing, and a variety of practical functions such as scrolling display. The design of hardware and software most of the points. Hardware used as the con trol ATMega16 SCM, FYD12864 character LCD display as part of the signal output; software components using C Ianguage as a Ianguage, on the ATMe

5、ga16 to program ming functions.Keywords: microco ntroller, LCD, temperature collecti on-、八、-刖言在如今人们生活中,科技的发展让多功能显示屏在我们身边随处可见。在繁 华的都市中显示屏可以向市民提供市区空气质量指数,噪声值以及政府发布的相关信息等。不仅可以方便市民了解周围的环境状况,而且提高了市民创模工程的知晓率和关注度。另外在现在的汽车中也能看到多功能显示屏的身影,简单的只 能显示空调温度,收音机或车载音响信息等内容。复杂的多功能显示屏则除了显 示上述内容以外,还可以显示车辆油耗,续航里程,导航信息或者D

6、VD等内容,而且大多采用彩色屏幕,当然多功能显示屏的使用远不止这些。由此可见其在日 常生活中的重要,它是人类和机器沟通一座桥梁。研究本课题让我们从最基本的 多功能显示屏入手学习和研究,对人们生活中使用的多功能显示屏的原理有更好 的认识和了解,从而研制出更为复杂的可以更好的为人民的日常生活服务的电子 产品。本设计重点研究单片机+时钟芯片这种模式的电子万年历,不仅实现了显示时间和调整时间的万年历功能,而且还可以实现实时温度的检测和显示,电子信息广告等其他多功能用途。市场上有许多电子钟的专用芯片如:LM8363 LM8365等,但它们功能单一,电路连接复杂,不便于调试制作。所以本统设计的多功能 显示

7、屏使用系统选用单片机来完成设计,它可以将要显示的数据直接送到LCD显示器,节省了部分转换电路,节约了硬件成本,且功能的扩展性好,只需要对 单片机的部分软件进行更新即可实现该系统功能的升级。外围接口电路使用了 FYD12864LC显示屏、时钟芯片DS1302温度采集芯片 DS18B20这些硬件模块来 完成设计。第1章绪论1.1单片机技术和发展趋势单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功 能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、 定时器,实时时钟等外围设备。而现在最强大的

8、单片机系统甚至可以将声音、图 像、网络、复杂的输入输出系统集成在一块芯片上。单片机也被称为微控制器(Microco ntroller ),是因为它最早被用在工 业控制领域。单片机由芯片内仅有CPU勺专用处理器发展而来。最早的设计理念 是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集 成进复杂的而对体积要求严格的控制设备当中。INTEL的Z80是最早按照这种思 想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳11。早期的单片机都是8位或4位的。其中最成功的是INTEL的8031,因为 简单可靠而性能不错获得了很大的好评。此后在8031上发展出了 MCS5係列

9、单片机系统。基于这一系统的单片机系统直到现在还在广泛使用。随着工业控制领 域要求的提高,开始出现了 16位单片机,但因为性价比不理想并未得到很广泛 的使用。90年代后随着消费电子产品大发展,单片机技术得到了巨大的提高。 随着INTEL i960系列特别是后来的ARM系列的广泛使用,32位单片机迅速取代 16位单片机的高端地位,并且进入主流市场。而传统的8位单片机的性能也得到了飞速提高,处理能力比起80年代提高了数百倍。目前,高端的32位单片机 主频已经超过300MHz性能直追90年代中期的专用处理器,而普通的型号出厂 价格跌落至1美元,最高端的型号也只有10美元11。当代单片机系统已经不 再只

10、在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛使用在全系列 的单片机上。而在作为掌上电脑和手机核心处理的高端单片机甚至可以直接使用 专用的 Windows和Linux操作系统。单片机比专用处理器更适合使用于嵌入式系统,因此它得到了最多的使用。 事实上单片机是世界上数量最多的计算机。 现代人类生活中所用的几乎每件电子 和机械产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、 掌上电脑以及鼠标等电脑配件中都配有 1-2部单片机。而个人电脑中也会有为数 不少的单片机在工作。汽车上一般配备 40多部单片机,复杂的工业控制系统上 甚至可能有数百台单片机在同时工作!单片机的数量不仅远

11、超过PC机和其他计算的综合,甚至比人类的数量还要多。单片机是一种在线式实时控制计算机,在线式就是现场控制,需要的 是有较强的抗干扰能力,它是靠程序运行的,并且可以修改。通过不同的 程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要 费很大力气才能做到的,有些则是花大力气也很难做到的12。目前占统治地位的软件基本是最低级汇编语言,但对于AVR系列的单片机的开发项目一般使用的是 C语言,虽然使用 C语言编写的代码比用汇编语言编写的 代码占用的空间要大 5%到20%但是由于半导体技术的发展,芯片的容量 和处理速度有了大幅度的提高,占用空间的大小的差异已经不是关键,相 比之下,更应该注重

12、软件是否具有长期稳定运行的能力,注重使用先进开 发工具所带来的时间和成本的优势。单片机在目前的发展形势下,表现出几大趋势:可靠性及使用水平越来越高和互联网连接已是一种明显的走向。所集成的部件越来越多:美国国家半导体公司的单片机已把语音、图象部 件也集成到单片机中,也就是说,单片机的意义只是在于单片集成电路, 而不在 于其功能了;如果从功能上讲它可以讲是万用机,原因是其内部已集成上各种使 用电路。功耗越来越低和模拟电路结合越来越多。1.2 LCD显示技术LCD技术是把液晶灌入两个列有细槽的平面之间。这两个平面上的槽互相垂直(相交成90度)。也就是说,若一个平面上的分子南北向排列,则另 一平面上的

13、分子东西向排列,而位于两个平面之间的分子被强迫进入一种90度扭转的状态。由于光线顺着分子的排列方向传播,所以光线经过液晶时也 被扭转90度。但当液晶上加一个电压时,分子便会重新垂直排列,使光线 能直射出去,而不发生任何扭转。LCD是依赖极化滤光器(片)和光线本身。自然光线是朝四面八方随机发 散的。极化滤光器实际是一系列越来越细的平行线。这些线形成一张网,阻 断不和这些线平行的所有光线。极化滤光器的线正好和第一个垂直,所以能完全阻断那些已经极化的光线。只有两个滤光器的线完全平行,或者光线本 身已扭转到和第二个极化滤光器相匹配,光线才得以穿透。LCD正是由这样两个相互垂直的极化滤光器构成,所以在正

14、常情况下应 该阻断所有试图穿透的光线。但是,由于两个滤光器之间充满了扭曲液晶, 所以在光线穿出第一个滤光器后,会被液晶分子扭转90度,最后从第二个滤光器中穿出。另一方面,若为液晶加一个电压,分子又会重新排列并完全 平行,使光线不再扭转,所以正好被第二个滤光器挡住。总之,加电将光线 阻断,不加电则使光线射出。当然也可以改变LCD中的液晶排列,使光线在加电时射出,而不加电时被阻断。但由于计算机屏幕几乎总是亮着的,所以 只有“加电将光线阻断”的方案才能达到最省电的目的。第2章多功能显示屏设计构思2.1系统设计流程系统设计流程如图1所示,主要有6个步骤。(1) 明确设计任务要求确定设计任务和目标,并制

15、定说明规格文档,作为下一步设计的指导和检验 标准。还要明确系统功能要求,性能要求,环境、可靠性、成本、功耗、资源等 要求。(2) 体系结构设计体系结构设计是系统的总体设计,它需要确定单片机系统的总体构架,从功 能上对软硬件进行划分。在此基础上,确定系统的硬件选型(主要是处理器选型), 操作系统的选择和开发环境的选择。(3) 硬件的设计、制作及测试在这一阶段要确定硬件部分的各功能模块及模块之间的关联, 并在此基础上 完成元器件的选择、原理图绘制、印刷电路板(PCB设计、硬件的装配和测试、 目标硬件最终的确定和测试。(4) 软件的设计、实现及测试这部分工作和硬件开发并行、交互进行。软件设计主要完成

16、引导程序的编制、 操作系统的移植、驱动程序的开发、使用软件的编写等工作。设计完系统设计流 程图成后,软件开发进入实现阶段。这一阶段主要是嵌入式软件的生成(编译、 链接),调试和固化运行,最后完成软件的测试。(5) 系统集成将测试完成的软件系统装入制作好的硬件系统中,进行系统综合测试,验证 系统功能是否能够正确无误地实现, 最后将正确的软件固化在目标硬件中。 本阶 段的工作是整个开发过程中最复杂、最费时的,特别需要相应的辅助工具支持。(6) .系统性能测试及可靠性测试若满测试最终完成的系统性能是否满足设计任务书的各项性能指标和要求。 足,则可将正确无误的软件固化在目标硬件中;若不能满足,在最坏的

17、情况下, 则需要回到设计的初始阶段重新进行设计方案的制定。图1系统设计总流程2.2单片机选择方案单片机种类较多,其C51系列和AVR系列具有较好的代表性。C51系列中AT89S52较常用,它是一种低功耗、高性能CMOS 8位微控制器,具有8K在系统可编程 Flash存储器。使用 Atmel公司高密度非易 失性存储器技术制造, 和工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器1。在单芯片上,拥有灵巧的8位CPU和在系统可编程 Flash,使得AT89S52为众多嵌入式控制 使用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能:8k

18、字节Flash,256字节RAM 32 位I/O 口线,看门狗定时器,2个数据指针,三个 16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至0Hz静态逻 辑操作,支持2种软件可选择节电模式。空闲模式下, CPU停止工作,允许 RAM定时器/计数器、串口、中断继续工作。掉电保 护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下 一个中断或硬件复位为止。AVF系列中ATmega16较常用,ATmega16是基于增强的 AVR RISC结构的 低功耗8位CMOS微控制器。由于其先进的指令集以及单时钟周期指令执行 时间,ATm

19、ega16的数据吞吐率高达 IMIPS/MHz,从而可以缓减系统在功耗 和处理速度之间的矛盾。AVR内核具有丰富的指令集和32个通用工作寄存器。所有的寄存器都直接和算逻单元(ALU)相连接,使得一条指令可以在一个时钟周期内同时访问两个独立的寄存器。这种结构大大提高了代码 效率,并且具有比普通的CISC微控制器最高至10倍的数据吞吐率9。ATmega16有如下特点:16K字节的系统内可编程 Flash(具有同时读写 的能力,即 RWW) 512字节EEPROM 1K字节SRAM, 32个通用I/O 口线, 32个通用工作寄存器,用于边界扫描的JTAG接口,支持片内调试和编程, 三个具有比较模式的

20、灵活的定时器/计数器(T/C),片内/外中断,可编程串行USART有起始条件检测器的通用串行接口,8路10位具有可选差分输入级可编程增益(TQFP封装)的ADC,具有片内振荡器的可编程看门狗 定时器,一个SPI串行端口,以及六个可以通过软件进行选择的省电模式。 工作于空闲模式时 CPU停止工作,而 USART两线接口、A/D 转换器、SRAM T/C、SPI端口以及中断系统继续工作;掉电模式时晶体振荡器停 止振荡,所有功能除了中断和硬件复位之外都停止工作;在省电模式下, 异步定时器继续运行,允许用户保持一个时间基准,而其余功能模块处于 休眠状态;ADC噪声抑制模式时终止 CPU和除了异步定时器

21、和 ADC以外所 有I/O 模块的工作,以降低 ADC转换时的开关噪声;Sta ndby 模式下只有晶体或谐振振荡器运行,其余功能模块处于休眠状态,使得器件只消耗 极少的电流,同时具有快速启动能力;扩展Sta ndby 模式下则允许振荡器和异步定时器继续工作。本芯片是以Atmel高密度非易失性存储器技术生产的。片内ISP Flash允许程序存储器通过ISP串行接口,或者通用编程器进行编程,也可以通过运行于AVR内核之中的引导程序进行编程。引导程序可以使用任意接口将使用程序下载到使用Flash 存储区 (ApplicationFlash Memory)。在更新使用 Flash存储区时引导 Fla

22、sh 区(Boot Flash Memory)的程序继续运行,实现了RWW操作。通过将8位RISC CPU和系统内可编程的 Flash 集成在一个芯片内,ATmega16成为一个功能强大的单片机,为许多嵌入式控制使用提供了灵活而低成本的解 决方案14。通过以上对比 AT89S52的flash比较小,自身没有 AD模块,需要外 扩。没有EEPRO不能记录需要掉电保存的数据,故本系统采用AVR系列的ATmega16单片机来作为系统的控制核心。2.3数据模块方案采集在计算机广泛使用的今天,数据采集的重要性是十分显著的。它是计算机和 外部物理世界连接的桥梁。数据采集是利用一种装置,从系统外部采集数据并

23、输 入到系统内部的一个接口。数据采集技术广泛引用在各个领域。 比如摄像头,麦 克风,都是数据采集工具,数据采集的大体流程如图2。模拟输岀图2数据采集过程本系统设计需要采集的信号有:外界温度,时钟等信号。2.3.1测温模块方案选择方案一 热电阻测温:热电阻测量温度,精度和灵敏度都可以,但是它的电阻 值和温度的线性关系不好.不便用数字的方法处理。方案二 热电偶测温:热电偶是工业上最常用的温度检测元件之一,热电偶工作原理是基于赛贝克效应,即两种不同成分的导体两端连接成回路,如两连接 端温度不同,则在回路内产生热电流的物理现象。其优点是:测量精度高。因 热电偶直接和被测对象接触,不受中间介质的影响。测

24、量范围广。常用的热电 偶从-50+1600C均可边续测量,某些特殊热电偶最低可测到 -269 C,最高可达 +2800C (0热电偶是工业温度测量中使用最广泛的一种传感器 ,在数字电子技术 中实现不方便,故而此处不选用此方案。方案三AD590加运算放大器AD590是美国模拟器件公司生产的单片集成两端感温电流源。它的主要特性 如下:1、流过器件的电流(mA等于器件所处环境的热力学温度(开尔文)度 数,即:mA/K 2、AD590的测温范围为-55 C+150C。3、AD590的电源电压范 围为4V30V。电源电压可在4V6V范围变化,电流 变化1mA相当于温度变化 1K0 AD590可以承受44

25、V正向电压和20V反向电压,因而器件反接也不会被损坏。4、输出电阻为710MW 5、精度高。AD590共有I、J、K L、M五档,其中 M档 精度最高,在-55C+150C范围内,非线性误差为土 0.3 C。由以上特性可以看出二端式半导体温度传感器 AD590的工作电压要求不高, 测温的范围比较宽,它的输出电流是紧随温度变化的电流源,它的线性非常好.但是需要一定的外部电路,且需占用单片机的一个AD 口。*方案四单总线温度传感器ds18b20:单总线温度传感器ds18b20具有超小的 体积,超低的硬件开销,抗干扰能力强,精度高的等优点,常用于数字电子技术 设计中,故而也为本系统设计采用。2.3.

26、2时钟模块方案方案一 基本门电路搭建 用基本门电路来实现数字钟,电路结构复杂,故障 系数大,不易调试。方案二 单片机编程 用单片机读取来自时钟芯片的数据,由于使用软硬件结 合的方式,所以电路结构简单、调试也相对方便。和第一种方案比较优点是非常 明显的。我们选择了第二种方案,采用的是一款常用的时钟芯片 ds1302o通过以上各个方案的制定和对比,我们找到了适用于本设计的各模块的方 案,同时也对适用于各模块的元器件做了选择。接下来就要利用软硬件开发工具 对系统的整体进行设计。2.4 AVR单片机系统开发工具一台嵌入式系统既有软件也有硬件,理所当然就分别需要软件和硬件的开发 工具了,二者缺一不可。2

27、.4.1硬件开发工具硬件设计软件则有 Protel DXP|99SE, Proteus 等。Protel DXP是第一个将所有设计工具集于一身的板级设计系统,电子设计 者从最初的项目模块规划到最终形成生产数据都可以按照自己的设计方式实现。 Protel DXP运行在优化的设计浏览器平台上,并且具备当今所有先进的设计特 点,能够处理各种复杂的PCB设计过程。通过设计输入仿真、PCB绘制编辑、拓 扑自动布线、信号完整性分析和设计输出等技术融合,Protel DXP提供了全面的设计解决方案6 oProteus的ISIS是一款Labcenter出品的电路分析实物仿真系统,可仿真 各种电路和IC,并支持

28、单片机,元件库齐全,使用方便,是不可多得的专业的 单片机软件仿真系统2。为系统初级阶段软件调试带来了方便。本设计主要用到硬件设计软件是 DXP和protues,利用各部分器件的资料, 在DXP中绘图,完成硬件设计,查找相关软件程序并在protues中仿真调试整体 硬件设计的正确性。2.4.2软件开发工具常见的单片机开发工具有很多如 CodeVision,IAR,ICCAVR等。而 CodeVisio n AVR是设计紧凑、功能强大的编译软件,被认为是学习 AVR的最容 易入门的工具。友好的界面很像 KEILo CVAVRfc持单片机的位操作及专用函数定义,极大的方便了开发者。由于本系统采用的是

29、Atmel公司的AVR系列单片机,鉴于CodeVision AVR容易入门15,选为最终的开发工具。CodeVision AVR编辑软件启动界面:图4项目选项卡设置以上为此次设计目 “hl址 uri MU5AH.T Anakgamparator ADC 5P 立匚 】娜0 ZWrB(J2C) LB at-Banoeci Prolect trVooaUan Pm忖E肚嗣 IRQ TiWSChip: AlmegalStkxk leiCCCCCO 詡 MHz匚吐PiovanTa.图3 CVAVR启动界面CodeVision AVR 项目向导项目向导是CodeVision AVR的一个非常有用的功能,

30、通过该向导可以很方便的生成硬件的初始化代码。下面对本设计要用的功能作一些简单的介绍:(1) 芯片设置,可以设置所使用 AVR芯片的型号及时钟频率等参数,(2) 端口设置,可以设置各端口的初始化状态。(3) 工程信息选项卡,可以填入和工程有关的信息。H CDd.iETErdJLV - uti 11xHUUSAPTWC 5P1I2C I we I 2 Wfitazc) LCD CMpExtmal JPQFrajed: lnnattonPioiecl Name,Verscn:I IDate: 201M-1E匚阿口叭三峡丈学匚DmmeE里用到部分项目向导,编译器的向导能够帮助我们操作单片机的底层硬件,

31、让开发人员把更多的精力放在核心程序的编写上,因此缩短软件开发周期。第3章系统硬件设计和实现硬件电路以单片机最小系统为基础,采用 FYD12864字符型液晶来进行时钟 日历和当前温度的显示。系统原理图如图5:FQ 心S PAliWli PAJ i km i PU i JXJ -PM M3C+ i PkiFM iJX- -ADC-.:HF *pl WT: :k- .x3ne3m7ii.-TTOtKlB-nTJ:ZTxiaZ3AIJXTXC 口 ZFLMi.Mfk-IO.FKl.TliKi KOTO Hil? i m - iLHaCTO p-3.FSJ-.Hm.IV. a:Eiimle 廿 g RA

32、5 (ADCSJ RA0 (ADC6J RA7 (ADC7 AREFLI GND WCC PCT (TOSC2) n PCS (TOSCD PCS (TDI) PC4 (IDO) PC3 (TMS) PC2 (TCK) PCI (SDA) PCO (SCL) P07 (0C2)XTAL1:反向振荡放大器和片内时钟操作电路的输入端。XTAL2:反向振荡放大器的输出端。VCC:电源;GND地:二ATmega16片机的I/O端口的工作原理:Atmega16单片机具有32个通用I/O 口,分为PA PB PC PD 4组,每组 有8位。这些I/O 口都可以通过寄存器设置成输入或者输出, 有些I/O 口

33、还具有 第二功能。在设置通用I/O 口时,atmega16的所有端口的功能都是相同的,并且具有 真正的读-修改-写功能。Atmega16的内部独特的结构使得输出缓冲器具有对称 的驱动能力,可以输出或者吸收大电流,能够直接驱动 LCD所有的端口引脚都具有内部上拉电阻,可以通过寄存器配置独立选择是否连 接,复位时所有的引脚都为高阻态。Atmega16单片机的每个端口都有3个I/O寄存器地址:数据寄存器 PORTx(x=A B、C、D),方向寄存器DDRx和端口输入 引脚PINx。其中PINx为只读寄存器。对PINx寄存器的某一位写逻辑1将造成 数据寄存器的相应位发生0和1的翻转。当寄存器MCUC的

34、上拉禁止位PUD被置 位时,所有端口的引脚上拉电阻都被禁止。不论如何设置DDRxn都可以通过读PINx来获得该引脚上的逻辑电平14。三ATmega16单片机的复位原理外部复位由外加于 RESET引脚的低电平产生。当复位低电平持续时间大于 最小脉冲宽度时(参见表1)即触发复位过程,即使此时并没有时钟信号在运 行。当外加信号达到复位门限电压 VRST(上升沿)时,tTOUT延时周期开始。 延时结束后MCU即启动14。表1外部触发复位Vrst/RESET门限电压0.1VCC0.9VCCVTrst/RESET最小脉冲宽度1.5us由表1知当RES脚电压低于0.1VCC时,且时间持续1.5us,单片机自

35、动复位。四ATmega16单片机最小系统设计图6给出了采用Mega16单片机外加电源及晶体振荡器构成单片机最小系统。配合单片机开发的设计、调试和下载,最终将时钟信息从PCS PC7端 口输出到字符液晶显示。-444| paI曲I.t?n 茂 評u TOPMPBh HOT OTTS I fbs i Ann exc : PB.苗 PBmom 刃-边刃i pet, :mipm i i W i prc nm i PWrUTIl .PIM-CXlBi nr ocil ra- .jcpi PET.OC?PWO乳- pc:2 p rti: PC$!: IPC -TDIi K. 10X1 - KrlOiMSE

36、T 心r. pl 630 AllIKLl上严TlOmFifI玮J-KLnr.;:iliJj:j j?Z?PAXi I号小匸JEX*和.DE-&HD 匚HDKCAmVC4n.rc图6单片机最小系统和液晶接口3.2.2温度采集模块设计温度传感器种类繁多,在使用和高精度,高可靠性的场合时适用 DALLAS 司的DS18B2C温度传感器 7,它具有超小的体积,超低的硬件开销,抗干扰 能力强,精度高等优点。一、DS18B20勺特点1、适应电压范围宽,电压范围:3.05.5V,在寄生电源方式下可由数据线 供电。2、独特的单线接口方式,DS18B20在和微处理器连接时仅需要一条口线即 可实现微处理器和DS1

37、8B20勺双向通讯。3、DS18B20支持多点组网功能,多个 DS18B2C可以并联在唯一的三线上, 实现组网多点测温。4、DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成 在形如一只三极管的集成电路内。5、测温范围为55E+ 125C,在-10+85C时精度为土 0.5 C。&可编程的分辨率为912位,对应的可分辨温度分别为 0.5 C、0.25 C、 0.125 C和0.0625 C,可实现高精度测温。7、测量结果直接输出数字温度信号,以一线总线串行传送给CPU同时 可传送CRC校验码,具有极强的抗干扰纠错能力。&负压特性:电源极性接反时,芯片不会因发热而烧毁,但不能正

38、常工作。二、控制器对ds18B20操作流程:1复位:首先必须对 DS18B20芯片进行复位,复位就是由控制器(单 片机)给DS18B20单总线至少480uS的低电平信号。当 18B20接到此复 位信号后则会在15-60uS 后回发一个芯片的存在脉冲。2存在脉冲:在复位电平结束之后,控制器应该将数据单总线拉高,以 便于在15-60uS 后接收存在脉冲,存在脉冲为一个60-240uS 的低电平信号。至此,通信双方已经达成了基本的协议,接下来将会是控制器和 18B20间的数据通信。如果复位低电平的时间不足或是单总线的电路断路都不会 接到存在脉冲,在设计时要注意意外情况的处理。3控制器发送ROM指令:

39、双方打完了招呼之后将要进行交流了,ROM指令共有5条,每一个工作周期只能发一条,ROM指令分别是读 ROM数据、指定匹配芯片、跳跃ROM芯片搜索、报警芯片搜索。ROM指令为8位 长度,功能是对片内的 64位光刻ROM进行操作。其主要目的是为了分辨 一条总线上挂接的多个器件并作处理。单总线上可以同时挂接多个器件, 并通过 每个器件上所独有的ID 号来区别,一般只挂接单个18B20芯片时可以跳过ROM指令则读前2个字节即可)。4控制器发送存储器操作指令:在ROM指令发送给18B20之后,紧接着就是发送存储器操作指令。操作指令同样为8位,共6条,存储器操作指令分别是写 RAM数据、读RAM数据、将R

40、AM数据复制到EEPROM 温度转换、将EEPRO M中的报警值复制到 RAM、工作方式切换。存储器操 作指令的功能是命令 18B20作什么样的工作,是芯片控制的关键。5执行数据读写:一个存储器操作指令结束后则将进行指令执行或数 据的读写,这个操作要视存储器操作指令而定。如执行温度转换指令则控 制器必须等待18B20执行其指令,一般转换时间为 500uS。若要读出当前的温度数据我们需要执行两次工作周期,第一个周期为 复位、跳过ROM指令、执行温度转换存储器操作指令、等待500uS温度转换时间。紧接着执行第二个周期为复位、跳过ROM指令、执行读RAM的存储器操作指令、读数据(最多为9个字节),中

41、途可停止只读简单温度值。三、DS18B2芯片和单片机的接口:如图7所示,DS18B2只需要接到控制器的一个I/O 口上,由于单总线为开漏 所以需要外接一个4.7K的上拉电阻。本设计中使用的控制器是单片机,单总线可 以使用单片机的I/O 口内部的上拉电阻而不需要再外接上拉电阻。1EB20图7 ds18b20和控制器接口四、温度传感器采集温度转换:DS18B20在出厂时的配置为 12位,读取温度时共读取 16位,所以把后 11位的2进制转化为10进制后在乘以0.0625便为所测的温度,还需要判 断正负。前5个数字为符号位,当前5位为1时,读取的温度为负数;当前5位为0时,读取的温度为正数。表2为D

42、S18B20温度值格式表,这是12位转化后得到的 12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于 0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际 温度。 例如+125 C的数字输出为07D0H, +25.0625 C的数字输出为0191H,-25.0625 C的数字输出为FF6FH, -55 C的数字输出为FC90H 。表2 ds18b20温度值格式表位数Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0亠3亠2J

43、-1亠-2亠-3亠-4LS Byte22222222位数Bit 15Bit 14Bit 13Bit 12Bit 11Bit 10Bit 9Bit 8MS ByteSSSSS2625243.2.3时钟模块硬件设计DS1302是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰 年补偿功能,工作电压为2.5V5.5V。采用三线接口和 CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31X8的用于临时性存放数据的RAM寄存器。DS1302是DS1202的升级产品,和DS1202兼

44、容,但增加了主电源 /后背电源双电源引脚,同时提 供了对后背电源进行涓细电流充电的能力1。DS1302的引脚排列如图 8,其中Vcc1为后备电源,VCC2为主电源。在主 电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。当 Vcc2大于Vcc1 + 0.2V时,Vcc2给DS1302供电。当 Vcc2小于 Vcc1时,DS1302由Vcc1供电。X1和X2是振荡源,外接32.768kHz 晶振。RST是复位/片选线,通过把 RST输入驱动置高电平来启动所有的数 据传送。RST输入有两种功能:首先,RST接通控制逻辑,允许地址 /命令序列送入移位寄存器

45、;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中 RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电运行时,在Vcc2.0V之前,RST必须保持低电平。 只有在SCLK 为低电平时,才能将 RST置为高电平。I/O为串行数据输入输出端(双向), SCLK为时钟输入端。12 3 4dhddr8 7 6 5二 r1BviXJ匚27 saxX2 30J vc3D匚百5j RFTDSI3D28*Pin DIP (300-Mil)图8 ds1302的引脚排列一、DS1302勺控制字节DS1302的

46、控制字如表3所示。控制字节的最高有效位(位7)必须是逻辑1,如 果它为0,贝U不能把数据写入DS130中,位6如果为0,则表示存取日历时钟数据, 为1表示存取RA数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表 示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出。表3 DS1302的控制字节1RAM/CKA4A3A2A1A0RAM/K二、数据输入输出(I/O)在控制指令字输入后的下一个SCLK寸钟的上升沿时,数据被写入DS1302数 据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个SCL脉冲的 下降沿读出DS1302勺数据,读出数据时从低位0位到高位7

47、。三、DS1302勺寄存器DS130有12个寄存器,其中有7个寄存器和日历、时钟相关,存放的数据位为BC码形式。此外,DS1302还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存 器及和RA相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外 的所有寄存器内容。DS1302和RA相关的寄存器分为两类:一类是单个RA单元, 共31个,每个单元组态为一个8位的字节,其命令控制字为C0H-FDH,其中奇数 为读操作,偶数为写操作;另一类为突发方式下的RA寄存器,此方式下可一次性读写所有的RA啲31个字节,命令控制字为FEH写)、FFH读)。四、DS1302和单片机接口电路如图 7DS13

48、02和CPU的连接需要三条线,即SCLK(7)、1/0(6) 、RST(5)。图10示出DS1302和89C2051的连接图,其中,时钟的显示用I/O表示。实际上,在调试程序时可以不加电容器,只加一个32.768kHz的晶振即可。只是选择晶振时,不同的晶振误差不一样,有的误差很大有的很小。另外,还可以和上面电路中的DS18B20一起显示实时温度,ds18b20占用了单片机的另外一个I/O 口。电路图如下:图9 ds1302和控制器接口电路3.2.4 FYD12864字符液晶模块FYD12864-0402B是一种具有4位/8位并行、2线或3线串行多种接口方式, 内部含有国标一级、二级简体中文字库

49、的点阵图形液晶显示模块;其显示分辨率为128X 64,内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用 该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界 面。可以显示8X 4行16X 16点阵的汉字.也可完成图形显示.低电压低功耗是 其又一显著特点。由该模块构成的液晶显示方案和同类型的图形点阵液晶显示模 块相比,硬件电路结构或显示程序都要简洁得多14。一、基本特性:低电源电压VDD:+3.0-+5.5V显示分辨率:128 X 64点内置汉字字库,提供8192个16X 16点阵汉字(简繁体可选)内置128个16X 8点阵字符2MHZ寸钟频率显示方式

50、:STN半透、正显驱动方式:1/32DUTY 1/5BIAS视角方向:6点背光方式:侧部高亮白色LED功耗仅为普通LED的1/5 1/10 通讯方式:串行、并口可选内置DC-DC专换电路,无需外加负压 无需片选信号,简化软件设计工作温度:0 C - +55 C ,存储温度:-20 C - +60 C二、液晶模块接口:接口方式有并行接口和串行接口两种,通过对 15号引脚设 置可以选择接口方式;在本次设计中使用的 8位并行接口和Atmega16进行数据 传输。表4并行接口管脚说明管脚号管脚名称电平管脚功能描述1VSS0V电源地2VCC3.0+5V电源正3V0-对比度(亮度)调整4RS(CSH/LR

51、S=“ H” ,表示DB7DB0为显示数据RS=“L” ,表示DB7DB0为显示指令数据5R/W(SID)H/LR/W=“ H ,E= “ H” ,数据被读到 DB7DB0R/W=“ L” ,E= “ H L” , DB7 DB0的数据被写到 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:串口方式16NC-空脚17/RESETH/L复位端,低电平有效18V

52、OUT-LCD驱动电压输出端19AVDD背光源正端(+5V)20KVSS背光源负端三、控制器接口信号说明:表5 RS, R/W的配合选择决定控制界面的4种模式RSR/W功能说明LLMPI写指令到指令暂存器(IR)LH读出忙标志(BF)及地址记数器(AC的状态HLMPI写入数据到数据暂存器(DRHHMPU从数据暂存器(DR中读出数据表6 E信号E状态执行动作结果高一一 低I/O缓冲一-DR配合/W进行写数据或指令高DR1/0 缓冲配合r进行读数据或指令n低/低一一 高无动作根据以上接口管脚说明设计本系统中液晶和单片机接口电路如图10所示:P1为2*8插座,R4为液晶对比度调节电位器,通过调整他可

53、以改变液晶的 对比度,R5C3组成液晶的上电复位电路,液晶的 7-14号引脚接单片机的PC口, 15号脚为高电平即设置此接口方式为并行接口。voni TGIB丄J:.CTtit c raTD1臀甲亠+* _! V ! ? wc7 5 + E;:* tZ i EDBO 2DB1 9DB?10 na 11 DB+ 1?2 D& 1+ DBT 1* F;B 1 ITT I:TI lS.UTTi 19 h.w r:图10 LCD和控制器接口电路第4章系统软件设计在编写软件之前必须构思整个系统的框图,然后分别设计每一个小的程序模块并进行相应的测试,确保每一个模块都能正常的工作。最后将每一个模块 并接在一

54、起进行整体测试。4.1系统设计总框图主程序显示盘便I读取塚惟出捲扯瑾丄JE 示nf冋 监控市电电伍丄图11系统软件设计流程图4.2各模块软件设计4.2.1液晶模块软件设计和调试、字符显示原理FYD12864-0402B每屏可显示4行8列共32个16X 16点阵的汉字,每个显示RAM可显示1个中文字符或2个16X 8点阵全高ASCII码字符,即每屏最多可 实现32个中文字符或64个ASCII码字符的显示。FYD12864-0402B内部提供128X 2字节的字符显示RAMS冲区(DDRA)字符显示是通过将字符显示编码写入 该字符显示RAM实现的。根据写入内容的不同,可分别在液晶屏上显示CGROM

55、中 文字库)、HCGROMASCII码字库)及CGRAIM自定义字形)的内容。三种不同字 符/字型的选择编码范围为:00000006H (其代码分别是 0000、0002、0004、 0006共4个)显示自定义字型,02H7FH显示半宽ASCII码字符,A1A0F7FFH显示8192种GB2312中文字库字形。字符显示RAM在液晶模块中的地址80H9FH 字符显示的RAM的地址和32个字符显示区域有着一一对应的关系,其对应关系如下表7所示14 o表7 RAM地址和显示区域对应表80H81H82H83H84H85H86H87H90H91H92H93H94H95H96H97H88H89H8AH8B

56、H8CH8DH8EH8FH98H99H9AH9BH9CH9DH9EH9FH、图形显示原理先设垂直地址再设水平地址(连续写入两个字节的资料来完成垂直和水平的坐标地址)垂直地址范围AC5.AC0 ;水平地址范围 AC3AC0绘图RAM的地址计数器(AC只会对水平地址(X轴)自动加一,当水平地址 =0FH时会重新设为00H但并不会对垂直地址做进位自动加一, 故当连续写入多 笔资料时,程序需自行判断垂直地址是否需重新设定。 GDRAI的坐标地址和资料 排列顺序如图12:0D水平坐标01图12图形显4.2.2 温程序编写一、DS18B20令:温度转换DS18B20 进D11E1F001E1F二12加64

57、点D15 - DOD15 口0*D15 虽 IXD15 D00609-0EOF示对应坐标地址 度采集模块 和调试 的六条控制命44H 启 动行温度转换读暂存器BEH读暂存器9个字节内容。写暂存器4EH将数据写入暂存器的TH TL字节复制暂存器48H把暂存器的TH TL字节写到E2RAM中读电源供电方式B4H启动DS18B2C发送电源供电方式的信号给主 CPU 跳跃ROM旨令CCH这条指令使芯片不对ROMS码做出反应,在单总线的情况之 下,为了节省时间则可以选用此指令。如果在多芯片挂接时使用此指令将会出现 数据冲突,导致错误出现。二、单总线操作时序3:DS18B2复位及应答关系示意图如图13:(1) 先将数据线置高电平“ 1”。(2) 延时(该时间要求的不是很严格,但是尽可能的短一点)(3) 数据线拉到低电平“ 0”。(4) 延时750微秒(该时间的时间范围可以从480到960微秒)(5) 数据线拉到高电平“ 1(6) 延时

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!