




已阅读5页,还剩44页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
贵州大学科技学院本科毕业论文(设计)I 目 录 摘要 III Abstract .IV 1 绪论 1 1.1 课题背景.1 1.2 研究意义.1 1.3 研究现状.1 1.4 主要内容 .2 1.5 论文安排.2 2 芯片的选择和论证 4 2.1 单片机芯片的选择方案和论证.4 2.2 显示模块选择方案和论证.4 2.3 时钟芯片的选择方案和论证.4 2.4 温度传感器的选择方案和论证.5 2.5 电路设计最终方案决定.5 3 硬件模块图 6 4 系统硬件仿真和软件设计 8 4.1 Protues ISIS 简介 8 4.2 Keil C51 uVision2 简介8 4.3 该设计流程图.9 5 本研究中的主要模块 .10 5.1 主控模块(AT89S52 模块) 10 5.2 DS1302 时钟模块 .13 5.2.1 DS1302 简介13 5.2.2 DS1302 结构与工作原理 .14 5.2.3 控制命令字节与寄存器 16 5.2.4 DS1302 电路设计图 .19 5.3 DS18B20 温度模块 20 5.3.1 概述 20 贵州大学科技学院本科毕业论文(设计)II 5.3.2 DS18B20 的性能20 5.3.3 DS18B20 的内部结构20 5.3.4 DS18B20 的测温原理23 5.3.5 DS18B20 与单片机的接口设计24 5.3.6 DS18B20 电路设计图25 5.3.7 操作时序 .25 5.4 LCD1602 显示模块 28 5.4.1 概述 .28 5.4.2 结构与工作原理 .28 5.4.3 字符发生存储器(CGROM) .29 5.4.4 控制指令 .29 5.4.5 1602 的内部显示地址.31 5.4.6 LCD1602 电路设计图31 5.5 电源部分31 6 系统调试和操作 .33 6.1 系统调试33 6.2 系统操作33 6.2.1 系统的操作说明 33 6.2.2 系统操作注意事项 34 7 设计总结 .35 参考文献 .36 附录 1:电子万年历原理图37 附录 2:主程序38 致谢 .45 贵州大学科技学院本科毕业论文(设计)III 单片机控制的电子万年历设计与制作 摘要 随着半导体技术的迅速发展,特别是大规模集成电路出现,给人类生活带来了很 多的改变。尤其是单片机技术的应用产品已经随着社会前进的步伐走进我们的生活。 电子产品的应用可谓多不胜数,电子万年历就是其中的一种。电子万年历的出现给人 们的生活带来的极大的方便。 本设计着重要描述的就是基于 AT89S52 单片机控制的电子万年历。本文首先描述 系统硬件工作原理,随后介绍了本系统所应用的各硬件接口技术(既芯片驱动程序) 和各个接口模块的功能及工作过程。本设计的主导思想是软硬件相结合来进行各功能 模块的编写。 电子万年历以硬件 C 语言为主体进行软件设计,增加了程序的可读性和可移植性。 系统通过 1602 小液晶输出显示数据,可以显示当前时间、公历日期、星期、温度,并 附有以峰鸣器为提示的闹铃功能。 关键词:单片机;电子万年历;公农历;接口模块;C 语言 贵州大学科技学院本科毕业论文(设计)IV Single Chip Microcomputer Control Electronic Calendar Design and Prduction Abstract Along with the technical and quick development in Semiconductor, especially appearing with the large-scale integrated circuit, make the life change much. The MCU technology application already walks into our life with society step. Electron product application can be termed as being too many to enumerate.The electronic calendar is one kinds among of them.Electron calendars appearing bringing about much convenience for people. This design is going to describing the calendar based on AT89S52. System hardware of main body is described first, Follow the function, principle of work and hardware interface (that means the chips drives) are introduced. The designs main ideas is that composes soft and hardware to achieve the design. The calendar is designed with hardware C language as the Realization tool, which increased procedure readability and transplanting. The system shows the output by LCD1602, which can demonstrate the current time, the lunar calendar date, the week, the temperature and the system, can alter people with a small sounder. Keywords: MCU, Electronic calendar, Lunar calendar, Interface module, C Language 贵州大学科技学院本科毕业论文(设计)第 1 页 1绪论 1.1课题背景 现在是一个知识爆炸的新时代,新产品、新技术层出不穷,电子技术的发展更是日 新月异。可以毫不夸张的说,电子技术的应用无处不在,电子技术正在不断地改变我 们的生活,改变着我们的世界。 近些年,随着科技的发展和社会的进步,人们对数字钟的要求也越来越高,传统的 时钟已不能满足人们的需求。多功能数字钟不论在性能上还是在样式上都发生了质的 变化,它可以对年、月、日、星期、时、分、秒进行计时,还具有闰年补偿,时间校 准,测温等多种功能,对于数字电子万年历采用直观的数字显示,该电路采用 AT89S52 单片机作为核心,功耗小,能在 3V 的低压下工作,电压可选用 3-5V 电压供电。采用 C 语言编程更加优化。 时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间, 一旦重要的事情,一时的耽误可能酿成大祸。因此万年历具有读取方便、显示直观、 功能多样、电路简洁、成本低廉等诸多优点,符合电子仪表的发展趋势,具有广阔的 市场前景。 1.2研究意义 由于在日常生活当中,人们喜欢按时间办事或一定要按时间办事,上班下班、上 课下课、开会、乘车、轮船启航、飞机起飞等等,所以我们经常可以在一个家庭、学 校、工厂、公司等等集体或单位看到时钟或者纸挂年历。但是时钟只能显示具体某一 时、分、秒信息,不能显示年、月、日、星期和农历信息;纸挂年历只能查看年、月、 日、星期、和农历信息,而不能看具体时、分、秒信息。且假如我们不知道现在具体 是什么时间,单凭纸挂年历或时钟不能帮上我们的忙,然而,电子万年历这时就起了 非常大的作用,因为电子万年历不仅能显示时、分、秒信息,也能显示、年、月、日、 星期和农历信息,是集时钟和纸挂年历功能一体的产品,且人们查看起来极其方便, 一目了然。所以,如果我们开发出一款实用电子万年历产品,其经济前景将非常可观。 贵州大学科技学院本科毕业论文(设计)第 2 页 1.3研究现状 近年来,随着科学技术的迅速发展,无论在国内还是国外,电子万年历的设计方 案已经越发成熟,稳定性及实用性有很大的提高,电子万年历也发展成为由原来的只 能实现基本功能到现在市面上集娱乐性于一身的常见电子产品。 现在的电子万年历产品基本都采用了集成度极高的专用芯片,这大大地降低了产 品的设计难度,同时也缩短了产品的生产周期。正是基于电子万年历很好的开放性和 可发挥性,多种多样的电子万年历被设计出来。目前市场上有普通万年历,温度万年 历,计算器万年历,天气预报万年历等等。 然而,现代的数码产品市场更新换代的周期越来越短,所以在设计万年历产品的 时候在完成一些基本功能的情况下,在控制好生产成本的前提下,往产品内加入更多 的娱乐功能已经成为一种趋势,这也会成为制约万年历产品的受欢迎程度的一个重要 因素。 1.4 主要内容 电子万年历主要是利用电子技术将时钟电子化、数字化,拥有时间精确、体积小、 界面友好、可扩展性能强等特点,被广泛应用丁生活和工作当中。当今市场上的电子 时钟品类繁多,外形小巧别致。也有体型较大的,诸如公共场所的大型电子报时器等。 电子时钟首先是数字化了的时间显示或报时器,在此基础上,人们可以根据不同场合 的要求,在时钟上加置其他功能,比如定时闹铃,环境温度、湿度检测,环境空气质 量检测,USB 扩展口功能等。 系统硬件以 AT89S52 单片机为核心,起着控制作用。DS1302 提供时钟;数字式温度传 感器;LCD 液晶显示屏作为显示模块。 本设计电子时钟主要功能为: 1具有时间显示和手动校对功能,24 小时制; 2具有年、月、日、星期、时、分显示和自动校对功能; 3具有环境温度采集和显示功能; 4掉电后无需重新设置时间和日期。 1.5 论文安排 本研究先对系统所需要的主要芯片进行选择和论证,确定了选用AT89S52单片 贵州大学科技学院本科毕业论文(设计)第 3 页 机作为系统的主要控制芯片,时钟芯片DS1302提供时钟,数字式温度传感器实现实时温 度显示,而显示部分采用的是LCD显示屏。 接着简要的介绍了系统的调试工具,而重点是对相应主要模块的硬件进行详细的 讲解。比如 AT89S52、DS1302、DS18B20 和 LCD1602 等芯片的引脚功能和工作原理。有 利于读者对各模块的理解。然后简单介绍了系统调试的方法和系统操作说明和操作注 意事项。在最后给出全局程序和电路原理图,让读者理清整个设计的来龙去脉。 贵州大学科技学院本科毕业论文(设计)第 4 页 2芯片的选择和论证 2.1单片机芯片的选择方案和论证 方案一: 采用 89C51 芯片作为硬件核心,采用 Flash ROM,内部具有 4KB ROM 存储空间,能 于 3V 的超低压工作,而且与 MCS-51 系列单片机完全兼容,但是运用于电路设计中时由 于不具备 ISP 在线编程技术, 当在对电路进行调试时,由于程序的错误修改或对程序 的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的损坏。 方案二: 采用 AT89S52,片内 ROM 全都采用 Flash ROM;能以 3V 的超底压工作;同时也与 MCS-51 系列单片机完全该芯片内部存储器为 8KB ROM 存储空间,同样具有 89C51 的功 能,且具有在线编程可擦除技术,当在对电路进行调试时,由于程序的错误修改或对 程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成损坏。 所以选择采用 AT89S52 作为主控制系统。 2.2显示模块选择方案和论证 方案一: 采用 LED 数码管动态扫描,虽然 LED 数码管价格适中,对于显示数字也比较合适,然 而需要显示多位数字和字母时,编程就会变得很复杂,而且占用的单片机口线多。 方案二: 采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显 示文字比较适合,如采用在显示数字显得太浪费,且价格也相对较高,所以也不用此种作 为显示。 方案三: 采用 LCD 液晶显示屏, LCD 液晶显示屏尽管价格比较贵,但它的显示功能强大,可 显示大量字符,显示多样,清晰可见, ,需要的接口线少。 所以采用 LCD 液晶显示屏作为显示。 贵州大学科技学院本科毕业论文(设计)第 5 页 2.3时钟芯片的选择方案和论证 方案一: 直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、星期、时、 分、秒计数。采用此种方案虽然减少芯片的使用,节约成本,但是,实现的时间误差 较大。 方案二: 采用 DS1302 时钟芯片实现时钟,DS1302 芯片是一种高性能的时钟芯片,可自动对 秒、分、时、日、周、月、年以及闰年补偿的年进行计数,而且精度高,位的 RAM 做为 数据暂存区,工作电压 2.5V5.5V 范围内,2.5V 时耗电小于 300nA. 所以采用 DS1302 提供时钟。 2.4温度传感器的选择方案和论证 方案一: 使用热敏电阻作为传感器,用热敏电阻与一个相应阻值电阻相串联分压,利用热 敏电阻阻值随温度变化而变化的特性,采集这两个电阻变化的分压值,并进行 A/D 转 换。 。此设计方案需用 A/D 转换电路,增加硬件成本而且热敏电阻的感温特性曲线并不 是严格线性的,会产生较大的测量误差。 方案二: 采用数字式温度传感器 DS18B20,此类传感器为数字式传感器而且仅需要一条数据 线进行数据传输,易于与单片机连接,可以去除 A/D 模块,降低硬件成本,简化系统 电路。另外,数字式温度传感器还具有测量精度高、测量范围广等优点。 所以采用数字式温度传感器 DS18B20 测量温度。 2.5电路设计最终方案决定 综上各方案所述,对此次作品的方案选定: 采用 AT89S52 作为主控制系统; DS1302 提供时钟;数字式温度传感器;LCD 液晶显示屏作为显示模块。 贵州大学科技学院本科毕业论文(设计)第 6 页 3硬件模块图 本系统以集成芯片为主,以 C 语言为开发语言,通过对硬件进行软件编程实现所 需要的功能。系统的模块图如图 3.1 所示,以下的内容就是根据模块逐步实现的。 图 3.1 系统模块图 各模块原理说明: 1.AT89C51 芯片:是一种带 4K 字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能 CMOS8 位微处理 器,俗称单片机。AT89C2051 是一种带 2K 字节闪烁可编程可擦除只读存储器的单片机。 单片机的可擦除只读存储器可以反复擦除 100 次。该器件采用 ATMEL 高密度非易失存 储器制造技术制造,与工业标准的 MCS-51 指令集和输出管脚相兼容。 2.最小系统:单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单 片机可以工作的系统.对 51 系列单片机来说,最小系统一般应该包括:单片机、晶振电 路、复位电路、按键输入、显示输出等。 3.时钟芯片:DS1302 芯片内部采用石英晶体振荡器,其芯片精度不大于 10ms/年, 且具有完备的时钟闹钟功能,因此,可直接对其以用于显示或设置,使得软件编程相 对简单。为保证时钟在电网电压不足或突然掉电等突发情况下仍能正常工作,芯片内 部包含锂电池。当电网电压不足或突然掉电时,系统自动转换到内部锂电池供电系统。 AT89S5 2 单片 机 晶振电路 复位电路 1602 液晶显示器 提示声音电路 时钟读取 按键调整 温度检测电路 贵州大学科技学院本科毕业论文(设计)第 7 页 而且即使系统不上电,程序不执行时,锂电池也能保证芯片的正常运行,以备随时提 供正确的时间。 4.蜂鸣器是利用给其内部线圈不断地通断电流,造成蜂鸣器薄膜的振动,从而产生 空气的振动而发出声音,不同的频率可以控制发出不同的音调。 5.1602 液晶显示器:工业字符型液晶,能够同时显示 16x02 即 32 个字符。 (16 列 2 行)1602 液晶也叫 1602 字符型液晶,它是一种专门用来显示字母、数字、符号等的 点阵型液晶模块。 贵州大学科技学院本科毕业论文(设计)第 8 页 4系统硬件仿真和软件设计 本系统的硬件仿真工具采用单片机专用仿真工具 Protues ISIS,软件调试则采用 Keil C51 uVision2 开发平台。 4.1 Protues ISIS 简介 Proteus ISIS 是英国 Labcenter 公司开发的电路分析与实物仿真软件。它运行于 Windows 操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路,该软件的特 点是: 1实现了单片机仿真和 SPICE 电路仿真相结合。具有模拟电路仿真、数字电路仿 真、单片机及其外围电路组成的系统的仿真、RS232 动态仿真、I2C 调试器、SPI 调试 器、键盘和 LCD 系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发 生器等。 2支持主流单片机系统的仿真。目前支持的单片机类型有:68000 系列、8051 系 列、AVR 系列、PIC12 系列、PIC16 系列、PIC18 系列、Z80 系列、HC11 系列以及各种 外围芯片。 3提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能, 同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具 有这些功能;同时支持第三方的软件编译和调试环境,如 Keil C51 uVision2 等软件。 4具有强大的图绘制功。总之,该软件是一款集单片机和 SPICE 分析于一身的仿 真软件,功能极其强大。 4.2 Keil C51 uVision2 简介 单片机开发中除必要的硬件外,同样离不开软件,我们写的汇编语言源程序要变 为 CPU 可以执行的机器码有两种方法,一种是手工汇编,另一种是机器汇编,目前已 极少使用手工汇编的方法了。机器汇编是通过汇编软件将源程序变为机器码,用于 MCS-51 单片机的汇编软件有早期的 A51,随着单片机开发技术的不断发展,从普遍使 用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,Keil 软件是 贵州大学科技学院本科毕业论文(设计)第 9 页 目前最流行开发 MCS-51 系列单片机的软件,这从近年来各仿真机厂商纷纷宣布全面支 持 Keil 即可看出。Keil 提供了包括 C 编译器、宏汇编、连接器、库管理和一个功能强 大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部 份组合在一起。运行 Keil 软件需要 Pentium 或以上的 CPU,16MB 或更多 RAM、20M 以 上空闲的硬盘空间、WIN98、NT、WIN2000、WINXP 等操作系统。掌握这一软件的使用对 于使用 51 系列单片机的爱好者来说是十分必要的,如果你使用 C 语言编程,那么 Keil 几乎就是你的不二之选(目前在国内你只能买到该软件、而你买的仿真机也很可能只 支持该软件) ,即使不使用 C 语言而仅用汇编语言编程,其方便易用的集成环境、强大 的软件仿真调试工具也会令你事半功倍1。 4.3 该设计流程图 图 4.1 主程序流程图 开始 初始化 读、写时间、日期和温度 分离日期时间温度显示值 显示子程序 日期、时间修改子程序 返回 贵州大学科技学院本科毕业论文(设计)第 10 页 5 本研究中的主要模块 5.1主控模块(AT89S52 模块) 目前,在我国比较流行的就是美国 ATMEL 公司的 89C51 它是一种带 Flash ROM 的 单片机,事实上,89C51 目前正在用 89S52 代替。本系统就是以 AT89S52 作为主控芯片 2 。 图 5.1 AT89S52 封装图 AT89S52 是一个低功耗,高性能 CMOS 8 位单片机,片内含 8k Bytes ISP(In-system programmable)的可反复擦写 1000 次的 Flash 只读程序存储器,器件采用 ATMEL 公司的 高密度、非易失性存储技术制造,兼容标准 MCS-51 指令系统及 80C51 引脚结构,芯片内 集成了通用 8 位中央处理器和 ISP Flash 存储单元,功能强大的微型计算机的 AT89S52 贵州大学科技学院本科毕业论文(设计)第 11 页 可为许多嵌入式控制应用系统提供高性价比的解决方案。 AT89S52 具有下列主要性能: 8KB 可改编程序 Flash 存储器(可经受 1000 次的写入/擦除周期) 全静态工作:0Hz24MHz 三级程序存储器保密 1288 字节内部 RAM 32 条可编程 I/O 线 2 个 16 位定时器/计数器 6 个中断源 可编程串行通道 片内时钟振荡器 AT89S52 采用 40Pin 封装的双列直接 DIP 结构,图 5.1 是它们的引脚配置,40 个 引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4 组 8 位共 32 个 I/O 口, 中断口线与 P3 口线复用。现在我们对这些引脚的功能加以说明: Pin20:接地脚。 Pin40:正电源脚,正常工作或对片内 EPROM 烧写程序时,接+5V 电源。 Pin19:时钟 XTAL1 脚,片内振荡电路的输入端。 Pin18:时钟 XTAL2 脚,片内振荡电路的输出端。 时钟有两种方式,一种是片内时钟振荡方式,但需在 18 和 19 脚外接石英晶体(2- 12MHz)和振荡电容,振荡电容的值一般取 10p-30p。另外一种是外部时钟方式,即将 XTAL1 接地,外部时钟信号从 XTAL2 脚输入。 输入输出(I/O)引脚: Pin32-Pin39 为 P0.0-P0.7 输入输出脚,Pin1-Pin8 为 P1.0-P1.7 输入输出脚, Pin21-Pin28 为 P2.0-P2.7 输入输出脚,Pin10-Pin17 为 P3.0-P3.7 输入输出脚,这些 输入输出脚的功能阐述如下: P0 口(32 脚39 脚):是双向 8 位三态 I/O 口,在外接存储器时,与地址总线的 低 8 位及数据总线复用,能以吸收电流的方式驱动 8 个 TTL 负载。 P1 口(1 脚8 脚):是 8 位准双向 I/O 口。由于这种借口输出没有高阻状态,输 入也不能锁存,故不是真正的双向 I/O 口。P1 口能驱动(吸收或输出电流)4 个 TTL 负载。 贵州大学科技学院本科毕业论文(设计)第 12 页 P2 口(21 脚28 脚):是 8 位准双向 I/O 口。访问外部存储器时,它可以作为高 8 位地址总线送出高 8 位地址。P2 可以驱动(吸收或输出电流)4 个 TTL 负载。 P3 口(10 脚17 脚):是 8 位准双向 I/O 口,P3 口能驱动(吸收或输出电流)4 个 TTL 负载。P3 口除了作为一般的准双向通用 I/O 口使用外,每个引脚还有第二功能。 P3 口的 8 条线都定义有第二功能,如表 5.1 所列。 表 5.1 P3 口的第二功能表 引脚第二功能 P3.0 RXD(串行口输入端) P3.1 TXD(串行口输出端) P3.2 INT0(外部中断 0 请求输入端,低电平有效) P3.3 INT1(外部中断 0 请求输入端,低电平有效) P3.4 T0(定时器/计数器 0 的技数脉冲输入端) P3.5 T1(定时器/计数器 0 的技数脉冲输入端) P3.6 WR(片外数据存储器写选通信号输出端,低电平有效) P3.7 RD(片外数据存储器写选通信号输出端,低电平有效) Pin9:RESET/Vpd 复位信号复用脚,当单片机通电,时钟电路开始工作,在 RESET 引脚上出现 24 个时钟周期以上的高电平,系统即初始复位。初始化后,程序计 数器 PC 指向 0000H,P0-P3 输出口全部为高电平,堆栈指钟写入 07H,其它专用寄存器 被清“0” 。RESET 由高电平下降为低电平后,系统即从 0000H 地址开始执行程序。然而, 初始复位不改变 RAM(包括工作寄存器 R0-R7)的状态,单片机复位后的状态如下: P0P3=FFH,各口可用于输出,也可用于输入; SP=07H,第一个入栈内容将写入 08H 单元; IP、IE 和 PCON 的有效位为 0,各中断源处于低优先级且均被关断、串行通讯的 波特率不加倍; PSW=00H,当前工作寄存器为 0 组。 Pin30:ALE/PROG 当访问外部程序器时,ALE(地址锁存)的输出用于锁存地址的低 位字节。而访问内部程序存储器时,ALE 端将有一个 1/6 时钟频率的正脉冲信号,这个 贵州大学科技学院本科毕业论文(设计)第 13 页 信号可以用于识别单片机是否工作,也可以当作一个时钟向外输出。更有一个特点, 当访问外部程序存储器,ALE 会跳过一个脉冲。 如果单片机是 EPROM,在编程其间,PROG 将用于输入编程脉冲。 Pin29:PESN 当访问外部程序存储器时,此脚输出负脉冲选通信号,PC 的 16 位 地址数据将出现在 P0 和 P2 口上,外部程序存储器则把指令数据放到 P0 口上,由 CPU 读入并执行。 Pin31:EA/Vpp 程序存储器的内外部选通线,8051 和 8751 单片机,内置有 4kB 的程序存储器,当 EA 为高电平并且程序地址小于 4kB 时,读取内部程序存储器指令数 据,而超过 4kB 地址则读取外部指令数据。如 EA 为低电平,则不管地址大小,一律读 取外部程序存储器指令。显然,对内部无程序存储器的 8031,EA 端必须接地。 5.2DS1302 时钟模块 5.2.1DS1302 简介 DS1302 是 DALLAS 公司推出的涓流充电时钟芯片内含有一个实时时钟/日历和 31 字 节静态 RAM。通过简单的串行接口与单片机进行通信,实时时钟/日历电路提供秒分时 日月年的信息,每月的天数和闰年的天数可自动调整。时钟操作可通过 AM/PM 指示决 定采用 24 或 12 小时格式。DS1302 与单片机之间能简单地采用同步串行的方式进行通 信,仅需用到三个口线。1.RES 复位,2.I/O 数据线,3.SCLK 串行时钟。时钟/RAM 的 读/写数据以一个字节或多达 31 个字节的字符组方式通信。DS1302 工作时功耗很低, 保持数据和时钟信息时功率小于 1mW3。 DS1302 是由 DS1202 改进而来,增加了以下特性:双电源管脚用于主电源和备份电 源供应,Vcc1 为可编程涓流充电电源,附加七个字节存储器,备份电源可由大容量电 容(1F)替代。它广泛应用于电话传真便携式仪器以及电池供电的仪器仪表等产品领 域。 DS1302 用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据 与出现该数据的时间同时记录。这种记录对长时间的连续测控系统结果的分析以及对 异常数据出现的原因的查找有重要意义。 采用 DS1302 作为记录测控系统中的数据记录,其软硬件设计简单,时间记录准确, 既避免了连续记录的大工作量,又避免了定时记录的盲目性,给连续长时间的测量、 贵州大学科技学院本科毕业论文(设计)第 14 页 控制系统的正常运行及检查都来了很大的方便,可广泛应用于长时间连续的测控系统 中。在测量控制系统中,特别是长时间无人职守的测控系统中,经常需要记录某些具 有特殊意义的数据及其出现的时间。记录及分析这些特殊意义的数据,对测控系统的 性能分析及正常运行具有重要的意义。传统的数据记录方式是隔时采样或定时采样, 没有具体的时间记录,因此只能记录数据而无法准确记录其出现的时间;若采用单片 机计时,一方面需要采用计数器,占用硬件资源,另一方面需要设置中断、查询等, 同样耗费单片机的资源,而且某些测控系统可能不允许。而在系统中采用 DS1302 则能 很好地解决这个问题。 主要性能如下: 实时时钟具有能计算 2100 年之前的秒,分,时,日,星期,月,年的能力,还有 闰年调整的能力。 31*8 位暂存数据存储 RAM。 串行 I/O 口方式使得管脚数量最少。 宽范围工作电压:2.0V5.5V。 工作电流:2.0V 时,小于 300nA。 读/写时钟或 RAM 时,有两种传送方式:单字节传送和多字节传送(字符组方式) 。 8 脚 DIP 封装或可选的 8 脚 SOIC 封装。 简单的 3 线串行 I/O 接口。 与 TTL/COMS 兼容(VCC=5V 时) 。 可选工业级温度范围:-40oC+85oC。 5.2.2 DS1302 结构与工作原理 1.DS1302 的引脚如图 5.2 所示。 VCC2 VCC1 X1 SCLK X2 I/O GND RST 1 8 2 7 3 6 4 5 贵州大学科技学院本科毕业论文(设计)第 15 页 图 5.2 DS1302 的引脚图 2.引脚功能如表 5.2 所示。 表 5.2 引脚功能表 引脚号引脚名称功能 1Vcc2 主电源引脚 2,3 X1,X2 振荡源,外接 32.768KHz 晶振 4RST 接地 5GND 复位/片选端 6I/O 串行数据输入/输出端(双向) 7SCLK 串行时钟输入端 8Vcc1 备用电源 3.工作原理 DS1302 时钟芯片包括实时时钟/日历和 31 字节的静态 RAM。它经过一个简单的串 行接口与微处理器通信。实时时钟/日历提供秒、分、时、日、周、月和年等信息。对 于小于 31 天的月和月末的日期自动进行调整,还包括闰年校正的功能。时钟的运行可 以采用 24h 或带 AM(上午)/PM(下午)的 12h 格式。采用三线接口与 CPU 进行同步通 信,并可采用突发方式一次传送多个字节的时钟信号或 RAM 数据。串行时钟芯片主要 由寄存器、控制寄存器、振荡器、实时时钟以及 RAM 组成。DS1302 在任何数据传送时 必须先初始化,把 RST 脚置为高电平,然后把 8 位地址和命令字装入移位寄存器,数 据在 SCLK 的上升沿被输入。无论是读周期还是写周期,开始 8 位指定 40 个寄存器中 哪个被访问到。在开始 8 个时钟周期,把命令字节装入移位寄存器之后,另外的时钟 周期在读操作时输出数据,在写操作时写入数据。时钟脉冲的个数在单字节方式下为 8 加 8,在多字节方式下为 8 加字节数,最大可达 248 字节数。如果在传送过程中置 RST 为低电平,则会终止本次数据传送,并且 I/O 引脚变为高阻态。上电运行时,在 VCC 大于等于 2.5V 之前,RST 脚必须保持低电平。只有在 SCLK 为低电平时,才能将 置为高电平。RST 贵州大学科技学院本科毕业论文(设计)第 16 页 4.DS1302 的应用 实时时钟芯片 DS1302 采用串行数据传输,可为掉电保护电源提供可编程的充电功 能,也可以关闭充电功能,芯片采用 32768Hz 晶振。要特别说明的是,备用电源 BT1 可以用电池或超级电容(10 万 F 以上) 。虽然 DS1302 在主电源掉电后耗电很小,但 如果要长时间保证时钟正常,最好选用小型充电电池。如果断电时间较短(几小时或 几天) ,可以用漏电较小的普通电解电容代替(100F 就可以保证 1 小时的正常走时) 。 DS1302 在第一次加电后,需进行初始化操作。初始化后就可以按正常方法调整时间及 闹铃。DS1302 时钟及备用电源充电电路如图 5.3 所示。 Vcc2 1 X1 2 X2 3 GND 4 RST 5 I/O 6 SCLK 7 Vcc1 8 DS1302U3 32768Hz Y1 +5V 3V BT1 P3.2 P3.3 P3.4 图 5.3 DS1302 时钟及备用电源充电电路 5.2.3控制命令字节与寄存器 1.控制命令字节 控制命令字节的格式如表 5.3 表 5.3 控制命令字节的格式表 D7 D6 D5 D4 D3 D2 D1 D0 1RAM/CKA4A3A2A1A0RD/ W 控制字节的最高有效位(位 7)必须是逻辑 1,如果它为 0,则不能把数据写入到 DS1302 中;位 6 如果为 0,则表示存取日历时钟数据,为 1 表示存取 RAM 数据;位 5 至 位 1 指示操作单元的地址;最低有效位(位 0)为 0 表示要进行写操作,为 1 表示进行 读操作,控制字节总是从最低位开始输出5。 2.日历、时钟寄存器 贵州大学科技学院本科毕业论文(设计)第 17 页 DS1302 共有 12 个寄存器,其中有 7 个寄存器与日历、时钟相关,存放的数据为 BCD 码形式。 寄存器的选择由命令字而定,日历,时钟各个寄存器与控制字对照表如表 5.3 所 示。 表 5.3 日历、时钟寄存器与控制字对照表 D7D6D5D4D3D2D1D0 寄存器名称 1RAM/CKA4A3A2A1A0 RD/W 秒寄存器 1000000 分寄存器 1000001 小时寄存器 1000010 日寄存器 1000011 月寄存器 1000100 星期寄存器 1000101 年寄存器 1000110 写保护寄存器 1000111 慢充电寄存器 1010000 时钟突发寄存器 1011111 最后一位 RD/W 为 0 表示要进行写操作,为 1 表示进行读操作。 特殊位的说明: CH:时钟暂停位。当此位设置为 1 时,振荡器停止,DS1302 处于低功耗空闲状态, 这时芯片消耗电流将小于 100NA;当此位为 0 时,振荡器启动,时钟开始启动。 12/24:12 或 24 小时方式选择位。为 1 时选择 12 小时方式,在 12 小时方式下, 位 5 是 AM/PM 选择位,此位为 1 时表示 PM。为 0 时选择 24 小时方式,在 24 小时 方式下,位 5 是第 2 个小时位(2023 时) 。 WP:写保护位。写保护寄存器的开始 7 位(06)置为 0,在读操作时总是读出 0。在对时钟或 RAM 进行写操作之前,位 7(WP)必须为 0,当它为高电平时,写保 护位防止对任何其他寄存器进行写操作。 贵州大学科技学院本科毕业论文(设计)第 18 页 TCS:控制慢充电的选择,为了防止偶然因素使 DS1302 工作,只有 1010 模式才能 使慢速充电工作。 DS:二极管选择位。如果 DS 为 01,那么选择一个二极管;如果 DS 为 10,则选择 两个二极管;如果 DS 为 11 或 00,那么充电器被禁止,与 TCS 无关。 RS:选择连接在 VCC2 与 VCC1 之间的电阻,如果 RS 为 00,那么充电器被禁止,与 TCS 无关。选择的电阻如表 5.4 所示。 表 5.4 RS 与所选电阻对照表 RS 位电阻器典型值 00 无无 01R12 K 10R24 K 11R38 K 由上所述,根据涓流充电寄存器的不同编程,可得到不同的充电电流。 3.RAM 寄存器 DS1302 与 RAM 相关的寄存器分为两类,一类是单个 RAM 单元,共 31 个,每个单元 组态为一个 8 位的字节,其命令控制字为 C0HFDH,其中奇数为读操作,偶数为写操 作;另一类为突发方式下的 RAM 寄存器,此方式下可一次性读写所有的 RAM 的 31 字节, 命令控制字为 FEH(写) 、FFH(读) 6 。RAM 寄存器与控制字对照如表 5.5。 表 5.5 RAM 区寄存器与控制字对照表 D7D6D5D4D3D2D1D0 寄存器名称 1RAM/CKA4A3A2A1A0RD/ W RAM01000000 RAM11000001 RAM301111110 RAM 突发 1111111 4.复位和时钟控制 通过将 RST 输入驱动置高电平来启动所有的数据传送。RST 输入有两种功能:首先, RST 接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST 提供了终止单字 贵州大学科技学院本科毕业论文(设计)第 19 页 节或多字节数据的传送手段。当 RST 为高电平时,所有的数据传送被初始化,允许对 DS1302 进行操作。如果在传送过程中置 RST 为低电平,则会终止此次数据传送,并且 I/O 引脚变为高阻态。上电运行时,在 VCC 2.5V 之前,RST 必须保持低电平。只有在 SCLK 为低电平时,才能将 RST 置为高电平。 5.数据输入/输出 数据输入是在输入写命令字的 8 个 SCLK 周之后,在接下来的 8 个 SCLK 周期中的 每个脉冲的上升沿输入数据,数据从 0 位开始。如果有额外的 SCLK 周期,它们将被忽 略。 数据输出是在输出读命令字的 8 个 SCLK 周之后,在接下来的 8 个 SCLK 周期中的 每个脉冲的下降沿输出数据,数据从 0 位开始。需要注意的是,第一个数据位在命令 字节后的最后一位之后的第一个下降沿被输出。只要 RST 保持高电平,如果有额外的 SCLK 周期,将重新发送数据字节,即多字节传送。时序图如图 5.4 所示。 图 5.4 时序图 贵州大学科技学院本科毕业论文(设计)第 20 页 5.2.4 DS1302 电路设计图 X1 2 X2 3 VCC2 1 GND 4 RST 5 I/O 6 SCLK 7 VCC1 8 U2 DS1302 VCC 12 Y2 C7C8 32.768KHz 10p10p P0.1 P0.2 P0.0 470uF C6 1K R10 图 5.5 DS1302 电路设计图 5.3 DS18B20 温度模块 5.3.1 概述 美国 DALLAS 公司生产的单线数字温度传感器 DS18B20,可把温度信号直接转换成串 行数字信号供微机处理。由于每片 DS18B20 含有唯一的硅串行数,所以在一条总线上 可挂接任意多个 DS18B20 芯片。DS18B20 可提供 912 位温度读数,构成多点温度检测 系统而无需任何外围硬件7。 5.3.2 DS18B20 的性能 单线接口:仅需一根口线与 MCU 连接进行通信。 多个 DS18B20 可以并联在惟一的 3 线上,实现多点组网功能。 无需外围元件 可通过数据线供电,电压范围为 3.05.5V。 零待机功耗。 测温范围:-55 125 。固有测温分辨率为 0.5 。 通过编程可实现 912 位的数字读数方式。 用户可自设定非易失性的报警上下限值。 支持多点组网功能,多个 DS18B20 可以并联在惟一的三线上,实现多点测温。 负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作8。 贵州大学科技学院本科毕业论文(设计)第 21 页 5.3.3 DS18B20 的内部结构 I/O C VDD 图 5.6 DS18B20 方框图 1.64 位 ROM 的结构如图 5.7 所示: 8 位检验 CRC48 位序列号8 位工厂代码(10H) 图 5.7 64 位 ROM 的结构图 开始 8 位是产品类型的编号,接着是每个器件的惟一的序号,共有 48 位,最后 8 位是前 56 位的 CRC 校验码,这也是多个 DS18B20 可以采用一线进行通信的原因9。 2.非易失性温度报警触发器 TH 和 TL,可通过软件写入用户报警上下限。 3.高速暂存存储器 DS18B20 温度传感器的内部存储器包括一个高速暂存 RAM 和一个非易失性的可电擦 除的 E2PROM。高速 RAM 包含 9 字节存储器,其结构如图 5.8 所示。 前两个字节包含测得的温度信息。第 3 和第 4 字节是 TH 和 TL 的拷贝,是易失的, 每次上电复位时被刷新。第 5 个字节是配置寄存器,它的内容用于确定温度值的数字 转换分辨率,DS18B20 工作时按此寄存器中的分辨率将温度转换为相应精度的数值。该 字节各位的定义如表 5.6 所示。低 5 位一直都是 1,TM 是测试模式位,用于设置 DS18B20 在工作模式还是在测试模式。在 DS18B20 出厂时该位被设置为 0,用户不要去 改动,R1 和 R0 决定温度转换的精度位数,即是来设置分辨率,如表 5.7 所示 (DS18B20 出厂时被设置为 12 位) 。 温度 LSB 64 位 ROM 和 单线接口 存储器与控制逻辑 高 速 缓 存 温度传感器 低温触发器 高温触发器 8 位 CRC 发生 器 1 字节 2 字节 3 字节 4 字节 5 字节 6 字节 7 字节 8 字节 9 字节 贵州大学科技学院本科毕业论文(设计)第 22 页 温度 MSB TH 用户字节 1 TL 用户字节 2 配置寄存器 保留 保留 保留 CRC 图 5.8 高速暂存 RAM 结构图 表 5.6 配置寄存器 TMR1R211111 表 5.7 DS18B20 分辩率的定义规定表 R1R0 分辩率/位温度最大转换时间 00993.75 0110187.5 1011375 1112750 由表 5.7 可见,设定的分辨率越高,所需要的温度数据转换时间就越长。因此, 在实际应用中要在分辨率和转换时间权衡考虑。 高速暂存 RAM 第 68 字节未用,表现为全逻辑 1;第 9 字节读出的是前面所有 8 个字节的 CRC 码,可用来保证通信正确。 当 DS18B20 接收到温度转换命令后,开始启动转换。转换完成后的温度值就以 16 位带符号扩展的二进制补码形式存储在高速暂存存储器的第 1,2 字节。单片机可通过 单线接口读到该数据,读取时低位在前,高位在后,数据格式以 0.0625/LSB 形式表 示。温度值格式如图 5.9。 TH 用户字节 1 TL 用户字节 2 E2PROM 贵州大学科技学院本科毕业论文(设计)第 23 页 LS 字节 MS 字节 图 5.9 温度数据值格式图 当符号位 S=0 时,直接将二进制位转换为十进制;当 S=1 时,先将补码变换为原 码,再计算十进制值。表 5.8 是对应的一部分温度值。 表 5.8 DS18B20 温度与测得值对应表 温度/oC数据输出(二进制)数据输出(十六进制) +1250000 0111 1101 000007D0H +850000 0101 0101 00000550H +25.06250000 0001 1001 00010191H +10.1250000 0000 1010 001000A2H +0.50000 0000 0000 10000008H 00000 0000 0000 00000000H -0.51111 1111 1111 1000FFF8H -10.1251111 1111 0101 1110FF5EH -25.0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 汽车发动机维护与检修练习题集
- 环境心理学与生活实例研究题
- 第7课《商场环境扫描》课件 2024-2025学年岭南美版初中美术九年级下册
- 维特根斯坦传:天才之为责任读后感
- 预测分析与智能库存商业决策的新引擎
- 革新未来新材料科学引领创新浪潮
- 风电与太阳能项目的全方位监理实践指南
- 顾客旅程设计提升购物体验的关键
- 顾客体验为核心的新零售门店空间设计探索
- 防灾减灾个人准备指南
- 【网上书店设计与实现20000字(论文)】
- 江苏省南京市建邺区2023-2024学年五年级下学期6月期末英语试题
- 2024年湖北省武汉市中考语文试卷真题(含答案)
- 福建省漳州市2023-2024学年八年级下学期期末数学试题
- 四川省成都天府新区2024年八年级下学期末物理试题附答案
- ISO 15609-1 2019 金属材料焊接工艺规程和评定-焊接工艺规程-电弧焊(中文版)
- 英文经典电影赏析智慧树知到期末考试答案2024年
- (正式版)JBT 106-2024 阀门的标志和涂装
- 从安全意识到安全行为习惯的养成
- 七下第三单元《骆驼祥子》整本书阅读 公开课一等奖创新教学设计
- 医疗器械销售授权证书审批指南
评论
0/150
提交评论