基于51单片机的电子万年历毕业论文设计_第1页
基于51单片机的电子万年历毕业论文设计_第2页
基于51单片机的电子万年历毕业论文设计_第3页
基于51单片机的电子万年历毕业论文设计_第4页
基于51单片机的电子万年历毕业论文设计_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

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

文档简介

1、 摘 要 随着社会的发展,信息量的不断提升以前对信息交换的要求提高,电子万年历的发 展以及投入市场变得非常有必要。本设计是基于 51 单片机并模拟日常所用的日历,而 51 系列单片机是各单片机中最为典型和最有代表性的一种。通过本次设计,学习和巩固了 单片机指令编程的相关知识,熟悉单片机各部件的组成及其功能。 本设计将制作一种基于单片机控制的带实时温度显示、具有定时功能的电子万年历。 传统的电子日历大都体积大,功耗大,显示不准确等特点。为了缩小体积,减小功耗, 使其变得小巧灵敏,本设计加入了时钟芯片 ds1302,可对时间进行准确记时,同时可设 置定时时间,实现定时功能。另外本设计具有显示实时温

2、度的功能。传统的温度传感器 系统大都采用放大、调理、a/d 转换,转换后的数字信号送入计算机处理,处理电路复杂、 可靠性相对较差,占用计算机的资源比较多。本设计将采用 ds18b20 一线制数字温度传 感器,可将温度信号直接转换成数字信号送给微处理器,电路简单,成本低,实现了时 间温度同时显示的效果。最后,温度和时间都将通过 12864 液晶显示器进行显示。测试 表明系统达到了设计要求的各项功能,各部分工作正常。 关键词:时钟 温度检测 单片机 温度 abstract with the development of the society, the amount of information

3、is improving the requirements of the information exchange. the development of the electronic calendar and the investment market become very necessary. this design is based on 51 single-chip microcomputer and simulation used in the daily calendar, and 51 series microcontroller is the mcu in the most

4、typical and most representative one. through this design, learning and consolidate the single chip microcomputer instruction programming knowledge, be familiar with composition and function of the microcontroller parts. this design creates an electronic calendar with real-time temperature display an

5、d timing function based on single chip control. most of traditional calendars are characterized by large size, high power consumption and inaccurate display. in order to reduce volume and power consumption and make calendars become small and exquisite, the design adds a clock chip ds1302, which can

6、accurately record the time and set a regular time to achieve timing function. in addition, this design displays real-time temperature function. traditional temperature sensor system is mostly amplified, recuperated and a / d converted. the converted digital signal is input the computer to be process

7、ed, but the processing circuit is complicated with relatively poor reliability and occupies more resources of the computer. this design uses the ds18b20 first-line system digital temperature sensor to directly convert the temperature signal into digital signal and send it the microprocessor, whose c

8、ircuit is simple and low cost, achieving the displayed effect of time and temperature simultaneously. finally, the temperature and time will be displayed through the 12864 liquid crystal display. the test indicates that the system has reached various functions of the design requirements and each par

9、t operates smoothly. keywords:keywords: clock temperature-detection scm temperature 目 录 1 1 绪论绪论 .1 1 2 2 系统基本方案选择和论证系统基本方案选择和论证 .1 1 2.12.1 单片机芯片的选择方案和论证单片机芯片的选择方案和论证.1 2.22.2 显示模块的选择方案和论证显示模块的选择方案和论证.1 2.32.3 时钟芯片的选择方案和论证时钟芯片的选择方案和论证.2 2.42.4 温度传感器的选择方案和论证温度传感器的选择方案和论证.3 2.52.5 电路设计最终方案确定电路设计最终方案确

10、定.4 3 3 系统硬件电路设计系统硬件电路设计 .1 1 3.1 系统功能模块划分.1 3.2 各单元模块功能分析及模块电路设计.2 3.2.1 时钟模块.2 3.2.2 温度模块.2 3.2.3 显示模块.5 3.2.4 独立键盘模块.5 3.2.5 蜂鸣器模块.6 3.2.6 单片机模块.7 3.2.7 温度信息的采集.8 3.3 电路原理图的绘制和电路的焊接.1 3.3.1 原理图绘制软件 protel .1 3.3.2 pcb 制作 .1 3.3.3 元器件的焊接.3 4 4 系统软件设计系统软件设计 .1 1 4.1 万年历软件系统的流程图.1 4.3 温度的读取.5 下面是温度读

11、取的子程序:.6 4.4 键盘模块.6 4.5 蜂鸣器模块.6 结束语结束语 .1 1 致致 谢谢 .1 1 参考文献参考文献 .1 1 附录附录 .1 1 1 1 绪论绪论 二十一世纪是数字化技术高速发展的时代,而单片机在数字化高速发的时代扮演着 极为重要的角色。随着单片机技术在社会生活中的应用越来越广泛,对单片机的应用和 开发也是现代电子工程技术员必须掌握的一门技术。而且随着人们生活水平的提高和生 活节奏的加快,对时间的要求越来越高,精准数字计时的消费需求也越来越多。电子万 年历的开发与研究在信息化时代的今天则是当务之急,因为它应用在学校、机关、企业 等众多的公共场合,可以说遍及人们生活的

12、每个角落。目前市场上各式各样的电子时钟 数不胜数,但大多数只是针对时间显示,功能单一不能满足人们日常生活需求。本次设 计的万年历功能多样,显示直观,读取方便,价格也更加低廉,符合电子仪器仪表的未 来发展趋势,具有广阔的市场前景。所以数字万年历无论从实用的角度和培养能力的角 度都很有价值。 电子万年历显示功能,包括公历年、月、日,时间、温度、星期、农历等等;附带 功能有:定时闹铃、以及按钮是否可以正常调动。本文提出了一种基于 at89s52 单片机 的万年历设计方案,采用 lcd 显示。本方案以 at89s52 单片机作为主控核心,与时钟芯 片 ds1302、温度芯片 ds18b20、人体红外感

13、应模块、闹钟模块、按键、lcd 显示等模块组 成硬件系统。在硬件系统中设有 7 个独立按键和一个 lcd 显示器,能显示丰富的信息, 根据使用者的需要可以随时对时间进行校准、时间、温度显示等,综上所述此万年历具 有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,符合电子仪器仪 表的发展趋势,具有广阔的市场前景。随着电子技术的迅速发展,特别是随大规模集成 电路出现,给人类生活带来了根本性的改变。尤其是单片机技术的应用产品已经走进了 千家万户。电子万年历的出现给人们的生活带来的诸多方便。 万年历中使用的 lcd 的应用很广泛,如手表上的液晶显示屏,仪表仪器上的液晶显 示器或者是电脑笔记

14、本上的液晶显示器,都使用了 lcd。在一般的办公设备上也很常见, 如传真机,复印机,以及一些娱乐器材玩具等也常常见到 lcd 的足迹。字符型液晶显示 模块是一种专门用于显示字母,数字,符号等的点阵式液晶显示模块。在显示器件上的 设计,它是由若干个 57 或 511 等点阵符位组成。每一个点阵字符位都可以显示一个字 符。点阵字符位之间有一空点距的间隔起到了字符间距和行距的作用。目前市面上常用 的有 16 字1 行,16 字2 行,20 字2 行和 40 字2 行等的字符模块组。这些 lcd 虽然 显示字数各不相同,但是都具有相同的输入输出界面。 市场上有许多电子万年历的专用芯片,如:lm8363

15、、lm8365 等,但它们功能单一, 电路连接复杂,不便于调试制作。因此本系统采用了以 at89s52 单片机技术为核心,配 合 ds18b20 温度测量模块,ds1302 时钟模块,人体感应模块,lcd 显示模块,键盘模块 使该设计具有现实功能齐全,人机交互,节能的特点。 随着单片机的发展,电子万年历呈现了微型化 ,功能丰富化的趋势,而且价格在不 断下降,考虑到资源问题,现在的设计设计的万年历都采用了节能设计方案,万年历对 人们的生活有着十分重要的作用,所以电子万年历还是有很大的发展前景的。 2 2 系统基本方案选择和论证系统基本方案选择和论证 2.12.1 单片机芯片的选择方案和论证单片机

16、芯片的选择方案和论证 方案一: 采用 89c51 芯片作为硬件核心,89c51 是一种带 4k 字节闪烁可编程可擦除只读存储 器,采用 flash rom,内部具有 4kb rom 存储空间,能于 3v 的超低压工作,而且与 mcs- 51 系列单片机完全兼容,与工业标准的 mcs-51 指令集和输出管脚相兼容。由于将多功能 8 位 cpu 和闪烁存储器组合在单个芯片中,89c51 是一种高效微控制器,51 单片机为很多 嵌入式控制系统提供了一种灵活性高且价廉的方案但是运用于电路设计中时由于不具备 在线编程(isp)技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功 能需要烧入程序

17、时,对芯片的多次拔插可能对芯片造成一定的损坏,目前该型号芯片已经 停产。 方案二: 采用 at89s52 单片机,at89s52 单片机是 atmel 生产的单片机,是新一代 8051 单片 机,指令代码完全兼容传统 8051。内部集成看门狗电路。at89s52 单片机内部有 8kb 的 程序 flash 存储器。由于我们设计的万年历烧写文件大概在 7kb 左右 ,而 at89s52 单片 机的程序 flash 为 8kb,不用再外接程序存储器了。 经过综合比较最终选择方案二,即选择 at89s52 作为主控制器。 2.22.2 显示模块的选择方案和论证显示模块的选择方案和论证 方案一: lc

18、d12864 液晶是一种具有 8 位并行接口方式的点阵图形液晶显示模块;其显示分辨 率为 12864。利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机 交互图形界面。可以显示 1616 点阵的汉字,也可完成图形显示,低电压低功耗是其又 一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不 论硬件电路结构或显示程序都要简洁得多。万年历要求显示年月日、时分秒、星期、和 农历。lcd12864 液晶可以完成设计的要求 。 方案二: 系统采用 led 显示。led 应用可分为两大类:一是 led 单管应用,包括背光源 led,红外线 led 等;另外就是 led

19、 显示屏,目前,中国在 led 基础材料制造方面与国际 还存在着一定的差距,但就 led 显示屏而言,中国的设计和生产技术水平基本与国际同 步。led 显示屏是由发光二极管排列组成的显示器件。它采用低电压扫描驱动,具有:耗 电少、使用寿命长、成本低、亮度高、故障少、视角大、可视距离远等特点。采用 led 数码管动态扫描.价格上比较经济实惠,但不能显示文字,性价比不是很高,操作起来比 较液晶显示来说略显繁琐,所以也不用此种作为显示。 经过综合比较最终选择方案一,即选择 lcd12864 液晶显示屏。 2.32.3 时钟芯片的选择方案和论证时钟芯片的选择方案和论证 方案一: 采用单片机定时。单片机

20、集成度高、功能强、可靠性高、体积小、功耗低、使用方 便、价格低廉等一系列优点,单片机的应用领域已从面向工业控制、通讯、交通、智能 仪表等迅速发展到家用消费产品、办公自动化、汽车电子、pc 机外围以及网络通讯等广 大领域。 直接采用单片机定时计数器提供秒信号,计数的脉冲由外部提供,定时的脉冲由外 部晶振提供,定时加 1 的周期为一个机器周期;定时时间与初值和晶振频率有关。使用 程序实现年、月、日、星期、时、分、秒计数。采用此种方案减少芯片的使用,节约成 本,但程序复杂度较高。 方案二: 采用 ds1302 时钟芯片。ds1302 是美国 dallas 公司推出的一种高性能、低功耗、带 ram 的

21、实时时钟电路,它可以对年、月、日、星期、时、分、秒进行计时,具有闰年补偿 功能,工作电压为 2.5v5.5v。采用双电源供电(主电源和备用电源) ,可设置备用电源 充电方式,提供了对后背电源进行涓细电流充电的能力。ds1302 用于数据记录,特别是 对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录,因 此广泛应用于测量系统中。采用三线接口与 cpu 进行同步通信,并可采用突发方式一次 传送多个字节的时钟信号或 ram 数据。ds1302 内部有一个 318 的用于临时性存放数据 的 ram 寄存器。采用 ds1302 只需要写出驱动程序,调用程序读出寄存器内数据经过简单

22、 的变换就可以输出万年历的数据。 经过综合比较最终选择方案二,即采用 ds1302 时钟芯片。 2.42.4 温度传感器的选择方案和论证温度传感器的选择方案和论证 方案一: 采用热敏电阻作为温度传感器。热敏电阻是开发早、种类多、发展较成熟的敏感元 器件。热敏电阻由半导体陶瓷材料组成,利用的原理是温度引起电阻变化。热敏电阻的 主要特点是:灵敏度较高,其电阻温度系数要比金属大 10100 倍以上;工作温度范围 宽,常温器件适用于-55315,高温器件适用温度高于 315(目前最高可达到 2000)低温器件适用于-27355;体积小,能够测量其他温度计无法测量的空隙、 腔体及生物体内血管的温度;使用

23、方便,电阻值可在 0.1100k 间任意选择;易加工 成复杂的形状,可大批量生产;稳定性好、过载能力强。由于半导体热敏电阻有独特的 性能,所以在应用方面它不仅可以作为测量元件(如测量温度、流量、液位等) ,还可以 作为控制元件(如热敏开关、限流器)和电路补偿元件。热敏电阻广泛用于家用电器、 电力工业、通讯、军事科学、宇航等各个领域,发展前景极其广阔。 使用热敏电阻作为传感器,用热敏电阻与一个相应阻值电阻相串联分压,利用热敏 电阻阻值随温度变化而变化的特性,采集这两个电阻变化的分压值,并进行 a/d 转换。 此设计方案需用 a/d 转换电路,增加硬件成本而且热敏电阻的感温特性曲线并不是严格 线性

24、的,会产生较大的测量误差。 方案二: 采用 ds18b20 温度传感器。在应用与高精度、高可靠性的场合时 dallas(达拉斯) 公司生产的 ds18b20 温度传感器当仁不让。超小的体积,超低的硬件开消,抗干扰能力 强,精度高,附加功能强,使得 ds18b20 更受欢迎。对于我们普通的电子爱好者来说, ds18b20 的优势更是我们学习单片机技术和开发温度相关的小产品的不二选择。这是世界 上第一片支持“一线总线”接口的温度传感器。ds18b20 数字温度计提供 9 位(二进制)温 度读数,指示器件的温度。信息经过单线接口送入 ds18b20 或从 ds18b20 送出,因此从 单片机到 ds

25、18b20 仅需一条线连接即可。它可在 1 秒钟(典型值)内把温度变换成数字 经过综合比较最终选择方案二,即采用采用 ds18b20 温度传感器。 2.52.5 电路设计最终方案确定电路设计最终方案确定 最终选择单片机 at89s52 作为主控制器;选择 lcd12864 型液晶作为显示模块, 此模块可以显示字母、数字符号、中文字型及图形,具有绘图及文字画面混合显示功能; 选择采用 ds1302 时钟芯片,使程序实现年、月、日、星期、时、分、秒,即农历阳历时 间的显示。采用 ds18b20 温度传感器,可以对温度做出比较精确的测量,而且和单片机 通讯只要一个 io,连接方便。 3 3 系统硬件

26、电路设计系统硬件电路设计 3.13.1 系统功能模块划分系统功能模块划分 根据系统功能要求,可大致画出系统所需硬件结构框图如图 3-1 所示: 图图 3-13-1 系统功能模块图系统功能模块图 主控模块采用性价比较高的 at89s52 单片机芯片,在其内部烧写好程序,可通过程 序的运行控制测温模块进行测温;测温模块主要是由 ds18b20 构成,将其与所测对象进 行接触即可获取被测对象的温度数据,而所测得的温度和时钟芯片测得的实时日历将通 过显示模块的液晶显示器以数字形式显示;单片机调用程序,读取 ds1302 内寄存器,可 以得到万年历的时间数据,经过程序处理就可以输出在 lcd 上;键盘电

27、路可对实时日历 进行调整;蜂鸣器可以在闹钟定时中,作为声音提醒。 3.23.2 各单元模块功能分析及模块电路设计各单元模块功能分析及模块电路设计 3.2.13.2.1 时钟模块时钟模块 ds1302 的工作原理和单片机的接口: ds1302 为美国 dallas 公司的一种实时时钟芯片,主要特点是采用串行数据传输,可 为掉电保护电源提供可编程的充电功能,并且可以关闭充电功能。采用 32.768hz 晶振。 它可以对年、月、日、星期、时、分、秒进行计时,且具有闰年补偿等多种功能。 ds1302 用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据与出 现该数据的时间同时记录。这种记

28、录对长时间的连续测控系统结果的分析以及对异常数 据出现的原因的查找有重要意义。在本设计中,它的实际电路图如图 3-2 所示: 图图 3-23-2 ds1302ds1302 与单片机的连接与单片机的连接 ds1302 需要外接 32.768k 的晶振,1 号引脚接主电源 vcc(5v)电源,8 号引脚接备 用电池(3v) ,当主电源掉电后,备用电源为 ds1302 提供电源,维持 ds1302 内数据不丢 失,这正是时钟芯片所必须的特性。 3.2.23.2.2 温度模块温度模块 传统的温度传感器系统大都采用放大、调理、a/d 转换,转换后的数字信号送入计算 机处理,处理电路复杂、可靠性相对较差,

29、占用计算机的资源比较多,本设计测温模块 采用一线制总线数字温度传感器 ds18b20,可将温度信号直接转换成数字信号送给微处理 器,电路简单,成本低,其电路原理图如图 3-3 所示: 图图 3-33-3 ds18b20ds18b20 温度模块温度模块 从图中可看出,将温度传感器的一线制总线通过端口 2 与本设计主控芯片 stc12c5a6s2 的端口标号为 ds18b20 的相连即可实现相互之间的通信。设计中的测温元件 采用的是 ds18b20 测温元件,ds18b20 是由 dallas(达拉斯)公司生产的一种温度传感器。 超小的体积,超低的硬件开消,抗干扰能力强,精度高,附加功能强,使得

30、ds18b20 很 受欢迎。这是世界上第一片支持“一线总线”接口的温度传感器。ds18b20 数字温度计提 供 9 位(二进制)温度读数,指示器件的温度。信息经过单线接口送入 ds18b20 或从 ds18b20 送出,因此从单片机到 ds18b20 仅需一条线连接即可。它可在 1 秒钟(典型值)内 把温度变换成数字。 3.2.2.13.2.2.1 ds18b20ds18b20 的主要特征:的主要特征: 1)ds18b20 的主要特征: 全数字温度转换及输出; 先进的单总线数据通信; 最高12位分辨率,精度可达土0.5; 12位分辨率时的最大工作周期为750毫秒; 可选择寄生工作方式; 检测温

31、度范围为55+125; 内置eeprom,限温报警功能; 64位光刻rom,内置产品序列号,方便多机挂接; 多样封装形式,适应不同硬件系统。 2)ds18b20芯片其封装结构如下: 图图 3-43-4 ds18b20ds18b20 芯片封装图芯片封装图 由其引脚可看出,其 3 个引脚: gnd 为电压地直接接地;dq 为单数据总线用来与单片 机相连接,本系统中 ds 与单片机 p2.6 接口连接,仅此一个连接就能保证 ds18b20 与单片 机之间的数据交换;vdd 引脚接电源电压。 3.2.2.23.2.2.2 ds18b20ds18b20 的工作原理的工作原理 ds18b20的温度检测与数

32、字数据输出全集成于一个芯片之上,从而抗干扰力更强。 一个工作周期可分为两个部分,即温度检测和数据处理。 ds18b20共有三种形态的存储器资源,分别是:rom 只读存储器,用于存放 ds18b20id编码,其前8位是单线系列编码(ds18b20的编码是19h) ,后面48位是芯片唯 一的序列号,最后8位是以上56位的crc码(冗余校验) 。数据在出产时设置不由用户更 改。ds18b20共64位rom, ram 数据暂存器,用于内部计算和数据存取,数据在掉电后 丢失,ds18b20共9个字节ram,每个字节为8位。第1、2个字节是温度转换后的数据值信 息,第3、4个字节是用户eeprom(常用于

33、温度报警值储存)的镜像。在上电复位时其值 将被刷新。第5个字节则是用户第3个eeprom的镜像。第6、7、8个字节为计数寄存器, 是为了让用户得到更高的温度分辨率而设计的,同样也是内部温度转换、计算的暂存单 元。第9个字节为前8个字节的crc码。eeprom 非易失性记忆体,用于存放长期需要保存 的数据,上下限温度报警值和校验数据,ds18b20共3位eeprom,并在ram都存在镜像, 以方便用户操作。我们在每一次读温度之前都必须进行复杂的且精准时序的处理,因为 ds18b20的硬件简单结果就会导致软件的巨大开消。 3.2.33.2.3 显示模块显示模块 本设计显示模块主要采用 lcd128

34、64 液晶显示器,其电路原理图如下: 图图 3-53-5 lcd12864lcd12864 模块模块 lcd12864 液晶显示器通过数据端口也即端口 714 与主控芯片 at89s52 的 i/o 端口 p3 相连接实现数据与指令的传输,再通过控制端口 rs、rw、en 也即端口 46 与主控芯 片 p1.5,p1.6,p1.7 端口相接实现对数据和指令传输的控制 。显示模块采用 12864 液 晶显示器可实现对温度和时间的直接显示,清晰明了。 3.2.43.2.4 独立键盘模块独立键盘模块 键盘是人与万年历实现信息交互的接口,本设计中,我们采用 3 个独立键盘,电路原 理如下图 3-9:

35、图图 3-93-9 独立键盘独立键盘 当按键按下,与主控芯片连接的端口被降为低电平,按键松开则也升为高电平。按 键采用的是 tack switch 按钮开关,它具有自动恢复(弹回)的功能。当我们按下按钮时, 其中的接点接通(或切断) ,放开按钮后,接点恢复为切断(或接通) 。按照尺寸区分, 电子电路或微型计算机所使用的 tack swith 可分为 8mm、10mm、12mm 等。虽然 tack switch 有 4 个引脚,但实际上,其内部只有一对 a 接点,即其中两个引脚是内部相连通 的,而另外两个引脚内部也是相连通的。7 个按键实现了开机模式选择,日期调节等功能, 独立按键的引入使得体现

36、了本设计的人性化,智能化,功能的强大。 3.2.53.2.5 蜂鸣器模块蜂鸣器模块 蜂鸣器模块是本设计中体现人机交互的又一大设计亮点,其电路原理图如下图: 图图 3-103-10 蜂鸣器模块蜂鸣器模块 (1)蜂鸣器的介绍 蜂鸣器的作用:蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广 1 泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时 器等电子产品中作发声器件。 蜂鸣器的分类:蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两类。 2 蜂鸣器的电路图形符号:蜂鸣器在电路中用字母“h”或“ha” (旧标准用“fm” 、 3 “lb” 、 “jd”等)表示。 本设计里

37、,我们采用有源蜂鸣器,由于蜂鸣器的工作电流一般比较大,以至于单 片机的 i/o 口是无法直接驱动的,所以要利用放大电路来驱动,我们使用三极管来放大 电流,驱动蜂鸣器,此模块只要通过 bell(连接到到单片机 p2.7)输入的 pwm 波既可以 使蜂鸣器分出声音,我们设计的这款万年历可以在闹钟定时中作为声音提醒信号。 3.2.63.2.6 单片机模块单片机模块 at89s52 是 atmel 公司生产的低功耗,高性能 cmos8 位单片机,片内含 8k bytes 的可系统编程的 flash 只读程序存储器,器件采用 atmel 公司的高密度、非易失 性存储技术生产,兼容标准 8051 指令系统

38、及引脚,它集 flash 存储器既可在线编辑 (isp)也可用传统方法进行编辑及通用 8 位微处理器于单片芯片中,功能强大 at89s52 单片机可为您提供许多高性价比的应用场合。器管脚图如图 3-2: 图图 3-13-1 at89s52at89s52 管脚图管脚图 在本系统中,at89s52 单片机内部的功能单元已经能够满足系统设计需要,不需要 系统扩展。 at89s52 具有以下的特点: 主要性能 与 mcs-51 单片机产品兼容 8k 字节在系统可编程 flash 存储器 1000 次擦写周期 全静态操作:0hz33hz 三级加密程序存储器 32 个可编程 i/o 口线 三个 16 位定

39、时器/计数器 八个中断源 全双工 uart 串行通道 低功耗空闲和掉电模式 掉电后中断可唤醒 看门狗定时器 双数据指针 掉电标识符 at89s52 是一种低功耗、高性能 cmos8 位微控制器,具有 8k 在系统可编程 flash 存 储器。使用 atmel 公司高密度非易失性存储器技术制造,与工业 80c51 产品指令和引脚 完全兼容。片上 flash 允许程序存储器在系统可编程,亦适于 常规编程器。在单芯片上,拥有灵巧的 8 位 cpu 和在系统可编程 flash,使得 at89s52 为 众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 at89s52 具有以下标准功能: 8k 字节

40、 flash,256 字节 ram,32 位 i/o 口线,看门 狗定时器,2 个数据指针,三个 16 位定时器/计数器,一个 6 向量 2 级中断结构,全双工 串行口,片内晶振及时钟电路。另外,at89s52 可降至 0hz 静态逻辑操作,支持 2 种软件 可选择节电模式。空闲模式下,cpu 停止工作,允许 ram、定时器/计数器、串口、中断 继续工作。掉电保护方式下,ram 内容被保存,振荡器被冻结,单片机一切工作停止,直 到下一个中断或硬件复位为止。 3.2.73.2.7 温度信息的采集温度信息的采集 通过ds18b20单线总线的所有执行处理都从一个初始化序列开始。初始化序列包括一 个由

41、总线控制器发出的复位脉冲和随后由从机发出的存在脉冲: (1)复位:首先我们必须对ds18b20芯片进行复位,复位就是由控制器(单片机) 给ds18b20单总线至少480us的低电平信号。当18b20接到此复位信号后则会在1560us后 回发一个芯片的存在脉冲。 (2)存在脉冲:在复位电平结束之后,控制器应该将数据单总线拉高,以便于在 1560us后接收存在脉冲,存在脉冲为一个60240us的低电平信号。至此,通信双方已 经达成了基本的协议,接下来将会是控制器与18b20间的数据通信。 (3)控制器发送rom指令:双方打完了招呼之后最要将进行交流了,rom指令共有5 条,每一个工作周期只能发一条

42、,rom指令分别是读rom数据、指定匹配芯片、跳跃rom、 芯片搜索、报警芯片搜索。各自功能如下: read rom(读rom)33h (方括号中的为16进制的命令字): 这个命令允许总线控 制器读到ds18b20的64位rom。只有当总线上只存在一个ds18b20的时候才可以使用此指令。 match rom(指定匹配芯片)55h: 这个指令后面紧跟着由控制器发出了64位序列 号,当总线上有多只ds18b20时,只有与控制发出的序列号相同的芯片才能做出反应,其 它芯片将等待下一次复位。这条指令适合单芯片和多芯片挂接。 skip rom(跳跃rom指令)cch: 这条指令使芯片不对rom编码做出

43、反应,在单总线 的情况之下,为了节省时间则可以选用此指令。如果在多芯片挂接时使用此指令将会出 现数据冲突,导致错误出现。 search rom(搜索芯片)f0h: 在芯片初始化后,搜索指令允许总线上挂接多芯片 时用排除法识别所有器件的64位rom。 alarm search(报警芯片搜索)ech: 在多芯片挂接的情况下,报警芯片搜索指令 只对附合温度高于th或小于tl报警条件的芯片做出反应。只要芯片不掉电,报警状态将 被保持,直到再一次测得温度值达不到报警条件为止。 rom指令为8位长度,功能是对片内的64位光刻rom进行操作。其主要目的是为了分辨 一条总线上挂接的多个器件并作处理。诚然,单总

44、线上可以同时挂接多个器件,并通过 每个器件上所独有的id号来区别,一般只挂接单个18b20芯片时可以跳过rom指令(注意: 此处指的跳过rom指令并非不发送rom指令,而是用特有的一条“跳过指令” ) 。 (4)控制器发送存储器操作指令:在rom指令发送给18b20之后,紧接着(不间断) 就是发送存储器操作指令了。操作指令同样为8位,共6条,存储器操作指令分别是写ram 数据、读ram数据、将ram数据复制到eeprom、温度转换、将eeprom中的报警值复制到 ram、工作方式切换。 write scratchpad (向ram中写数据)4eh:这是向ram中写入数据的指令,随后 写入的两个

45、字节的数据将会被存到地址2(报警ram之th)和地址3(报警ram之tl) 。写入 过程中可以用复位信号中止写入。 read scratchpad (从ram中读数据)beh:此指令将从ram中读数据,读地址从地 址0开始,一直可以读到地址9,完成整个ram数据的读出。芯片允许在读过程中用复位信 号中止读取,即可以不读后面不需要的字节以减少读取时间。 copy scratchpad (将ram数据复制到eeprom中)48h:此指令将ram中的数据存入 eeprom中,以使数据掉电不丢失。此后由于芯片忙于eeprom储存处理,当控制器发一个 读时间隙时,总线上输出“0” ,当储存工作完成时,总

46、线将输出“1” 。在寄生工作方式 时必须在发出此指令后立刻超用强上拉并至少保持10ms,来维持芯片工作。 convert t(温度转换)44h:收到此指令后芯片将进行一次温度转换,将转换的 温度值放入ram的第1、2地址。此后由于芯片忙于温度转换处理,当控制器发一个读时间 隙时,总线上输出“0” ,当储存工作完成时,总线将输出“1” 。在寄生工作方式时必须 在发出此指令后立刻超用强上拉并至少保持500ms,来维持芯片工作。 recall eeprom(将eeprom中的报警值复制到ram)b8h:此指令将eeprom中的报警 值复制到ram中的第3、4个字节里。由于芯片忙于复制处理,当控制器发

47、一个读时间隙时, 总线上输出“0” ,当储存工作完成时,总线将输出“1” 。另外,此指令将在芯片上电复 位时将被自动执行。这样ram中的两个报警字节位将始终为eeprom中数据的镜像。 read power supply(工作方式切换)b4h:此指令发出后发出读时间隙,芯片会 返回它的电源状态字, “0”为寄生电源状态, “1”为外部电源状态。 存储器操作指令的功能是命令18b20作什么样的工作,是芯片控制的关键。 (5)执行或数据读写:一个存储器操作指令结束后则将进行指令执行或数据的读写, 这个操作要视存储器操作指令而定。 ds18b20需要严格的协议以确保数据的完整性。协议包括几种单线信号

48、类型:复位脉 冲、存在脉冲、写0、写1 、读0和读1。所有这些信号,除存在脉冲外,都是由总线控制 器发出的。和ds18b20间的任何通讯都需要以初始化序列开始。一个复位脉冲跟着一个存 在脉冲表明ds18b20已经准备好发送和接收数据(适当的rom命令和存储器操作命令) 。 ds18b20的复位时序: 图图4-24-2 ds18b20ds18b20复位时序图复位时序图 ds18b20 的读时序: 对于ds18b20的读时序分为读0时序和读1时序两个过程。对于ds18b20的读时隙是从 主机把单总线拉低之后,在15us之内就得释放单总线,以让ds18b20把数据传输到单总线 上。ds18b20在完

49、成一个读时序过程,至少需要60us才能完成。 图图4-34-3 ds18b20ds18b20读时序图读时序图 ds18b20 的写时序: 对于 ds18b20 的写时序仍然分为写 0 时序和写 1 时序两个过程。对于 ds18b20 写 0 时 序和写 1 时序的要求不同,当要写 0 时序时,单总线要被拉低至少 60us,保证 ds18b20 能够在 15us 到 45us 之间能够正确地采样 io 总线上的“0”电平,当要写 1 时序时,单 总线被拉低之后,在 15us 之后就得释放单总线。 3.33.3 电路原理图的绘制和电路的焊接电路原理图的绘制和电路的焊接 在硬件的设计前期,根据框图对

50、电路中可能出现的电路,进行了模拟实验,并根据实 验结果对后期的硬件设计进行了合理化的修改完善。在前面已分析了系统并绘制了框图, 并根据框图分别设计了各部分电路。由于温度传感器与时钟芯片集成度较高,所以在硬 件电路设计时不需要太多其他元件即可实现预期功能。因此在 protel 上对原理图进行了 绘制,从而得出了最终的完整电路原理图附录 1。 3.3.13.3.1 原理图绘制软件原理图绘制软件 protelprotel protel 是 portel 公司在 80 年代末推出的 eda 软件,在电子行业的 cad 软件中, 它当之无愧地排在众多 eda 软件的前面,是电子设计者的首选软件,它包含了

51、电原理图 绘制、模拟电路与数字电路混合信号仿真、多层印制电路板设计(包含印制电路板自动 布线) 、可编程逻辑器件设计、图表生成、电子表格生成、支持宏操作等功能,并具有 client/server (客户/服务器)体系结构,同时还兼容一些其它设计软件的文件格式, 如 orcad,pspice,excel 等,其多层印制线路板的自动布线可实现高密度 pcb 的 100 布通率。protel 99se 采用数据库的管理方式。该软件沿袭了 protel 以前版本方便易学 的特点,内部界面与 protel 99 大体相同,新增加了一些功能模块,功能更加强大。新 增的层堆栈管理功能,可以设计 32 个信号

52、层,16 个地电层,16 个机械层。新增的 3d 功 能在加工印制版之前可以看到板的三维效果。其具有的打印功能,可以轻松修改打印设 置控制打印结果。protel 99se 容易使用的特性还体现在其帮助功能,按下右上角的小问 号,然后输入你所要的信息,可以很快地看到特性的功能,然后用到设计中,按下状态 栏末端的按钮,使用帮助顾问。 3.3.23.3.2 pcbpcb 制作制作 当通过 protel 绘制出完整的电路原理图后,就可以按照绘制好的原理图制作 pcb 了,具体步骤如下: (1)打印电路板。将绘制好的电路板用转印纸打印出来,注意滑的一面面向自己, 一般打印两张电路板,即一张纸上打印两张电

53、路板。在其中选择打印效果最好的制作线 路板。 (2)裁剪覆铜板,也就是表面面都覆有铜膜的线路板,将覆铜板裁成电路板的大小, 不要过大,以节约材料。 (3)预处理覆铜板。用细砂纸把覆铜板表面的氧化层打磨掉,以保证在转印电路板 时,热转印纸上的碳粉能牢固的印在覆铜板上,打磨好的标准是板面光亮,没有明显污 渍。 (4)转印电路板。将打印好的电路板裁剪成合适大小,把印有电路板的一面贴在覆 铜板上,对齐好后把覆铜板放入热转印机,放入时一定要保证转印纸没有错位。一般来 说经过 2-3 次转印,电路板就能很牢固的转印在覆铜板上。热转印机事先就已经预热, 温度设定在 90-1400 摄氏度,由于温度很高,操作

54、时注意安全。 (5)腐蚀线路板,回流焊机。先检查一下电路板是否转印完整,若有少数没有转印 好的地方可以用黑色油性笔修补。然后就可以腐蚀了,等线路板上暴露的铜膜完全被腐 蚀掉时,将线路板从腐蚀液中取出清洗干净,这样一块线路板就腐蚀好了。腐蚀液的成 分为浓盐酸、浓双氧水、水,比例为 1:2:3,在配制腐蚀液时,先放水,再加浓盐酸、 浓双氧水,若操作时浓盐酸、浓双氧水或腐蚀液不小心溅到皮肤或衣物上要及时用清水 清洗,由于要使用强腐蚀性溶液,操作时一定注意安全。 (6)线路板钻孔。线路板上是要插入电子元件的,所以就要对线路板钻孔了。依据 电子元件管脚的粗细选择不同的钻针,在使用钻机钻孔时,线路板一定要

55、按稳,钻机速 度不能开的过慢。 (7)线路板预处理。钻孔完后,用细砂纸把覆在线路板上的墨粉打磨掉,用清水把 线路板清洗干净。水干后,用松香水涂在有线路的一面,为加快松香凝固,我们用热风 机加热线路板,只需 2-3 分钟松香就能凝固。 按照上面的流程,我们就做出来一块 pcb 电路板了。 由于采用实验板成本更低,最后实物制作时采用了实验板焊接。 3.3.33.3.3 元器件的焊接元器件的焊接 元器件装焊顺序依据的原则是:先低后高,先小后大。一般情况下,应按电阻、电容、 二极管、三极管、集成电路、大功率管顺序焊接。 (1)对元器件焊接的要求 电阻的焊接:按图将电阻准确装入规定位置,型号标记要易见且

56、方向也尽量一致。 1 要求焊接一种规格后再焊接另一种规格。 电容的焊接:按图将电容准确装入规定位置,并注意有极性电容的极性方向不能错。 2 电容上的型号标记要易见见且方向也尽量一致。电解电容要紧靠 pcb 板,不可悬浮。 二极管的焊接:正确辨认正负极性后按要求装入规定位置,型号标记要易见,焊接 3 时间尽量可能短。 三极管的焊接:正确辨认各引脚后按要求装入规定位置,型号标记要易见,焊接时 4 间尽可能短。 场效应管的焊接:正确辨认各引脚后按要求装入规定位置,焊接时间尽可能短。 5 需要加散热片的,将接触面打磨光滑并加硅脂后再紧固。 集成电路(芯片)的焊接: 6 集成电路(芯片)焊接时,要注意按

57、图纸要求检查型号、焊接位置是否符合要求,焊接 时先焊芯片边沿的两只引脚,以便使其定位,然后再从左到右或从上到下进行逐点焊接。 焊接时间尽可能短,禁止拉焊。 (2) 焊接质量检查 元器件不得有错装、漏装、错联和歪斜松动等。 1 焊点应吃锡饱满,无毛刺、无针孔、无气泡、裂纹、挂锡、拉点、漏焊、碰焊、 2 虚焊等缺陷。 焊接后电路板上的金属件表面应无锈蚀和其它杂质。 3 焊接完成的电路板不得有斑点、裂纹、气泡、发白等现象,铜箔及敷形涂覆层不得 4 脱落、不起翘、不分层。 元器件的引脚或引线表面应渗锡均匀。 5 在完成电路的焊接后,测试之前,一定要先对电路检测,看是否有短路情况出现,以 免芯片损坏。电

58、源输入电压也是关键因素,在供电之前务必用万用表先测量。 4 4 系统软件设计系统软件设计 系统软件设计中,我们使用了 keil vision2。keil c51 生成的目标代码效率非常 之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语 言的优势,所以我们选择该软件来开发我们的万年历程序。 4.14.1 万年历软件系统的流程图万年历软件系统的流程图 图图 4-14-1 系统软件流程图系统软件流程图 当接通电源开始工作后,单片机中的程序开始运行,将对ds18b20进行初始化,以便 和单片机芯片达成通信协议。完成初始化后,由于本系统只有一个测温元件,单片机会 向其发出跳过

59、ram指令,接下来便可向其发送操作指令,启动测温程序,测温过程完成后, 发出温度转换指令,从而便可将温度转化成数字模式进行显示读取;同时ds1302将读取 时分秒星期以及年月日寄存器然后通过液晶显示实时时间、星期及日期;键盘电路中按 键可对实时日历时钟进行调整。 图-c 时间调整程序流程图 4.24.2 ks0108ks0108 的软件设计的软件设计 液晶控制器 ks0108 一共有七条指令,从作用上可分为两类,显示状态设置指令和数 据读/写操作指令。详见指令系统可查看图形液晶显示器产品有关手册。显示起始行设置 中 l5l0 为显示起始行的地址,取值在 0-3fh(1-64 行)范围内。页面地

60、址设置中 p2-p0 为选择的页面地址,取值范围为 0-7h,代表 1-8 页。列地址设置中 c5-c0 为 y 地址计数 器的内容,取值在 0-3fh(1-64 行)范围内。 显示器上 128 点64 点,每 8 点为一字节数据,都对应着显示数据 ram(在 ks0108 芯片内),一点对应一个 bit,计算机写入或读出显示存储器的数据代表显示屏上某一点列 上的垂直 8 点行的数据。d0 代表最上一行的点数据,d1 为第二行的点数据,d7 为 第八行的点数据。该 bit=1 时该点则显示黑点出来,该 bit=0 时该点则消失。另外 lcd 指令中有条 display on/off 指令,di

温馨提示

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

评论

0/150

提交评论