基于MCS-51单片机的万年历设计.doc_第1页
基于MCS-51单片机的万年历设计.doc_第2页
基于MCS-51单片机的万年历设计.doc_第3页
基于MCS-51单片机的万年历设计.doc_第4页
基于MCS-51单片机的万年历设计.doc_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

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

文档简介

黄石理工学院 毕业设计论文 题 目:基于 mcs-51 的万年历设计 院 系: 专 业: 姓 名: 指导老师: 黄 石 理 工 学 院 毕 业 设 计 论 文 i 摘摘 要要 本设计是一个基于 mcs-51 单片机实现的万年历。 本文首先描述系统硬件工作原理,并附以系统结构框图加以说明,着重介绍了 本系统所应用的各硬件接口技术和各个接口模块的功能及工作过程,其次,详细阐述 了程序的各个模块和实现方法。本设计以数字集成电路技术为基础,at89c51 单片 机技术为核心。本文编写的主导思想是软、硬件相结合,以硬件为基础,来进行各 功能模块的编写。 本系统以单片机的 c 语言进行软件设计,为了便于扩展和更改,软件的设计采 用模块化结构,使程序设计的逻辑关系更加简洁明了。系统通过字符型液晶显示数 据,所以具有人性化的操作和直观的显示效果。可以显示时间、公历日期、星期, 并有闹铃、语音报时及检测温度的功能。 关键词:关键词: 单片机; 液晶模块 ;语音报时;温度传感器; 黄 石 理 工 学 院 毕 业 设 计 论 文 ii 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 introduced 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 the 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 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 examination. the keyword:mcu; lcd module; the pronunciation of time; temperature sensor. 黄 石 理 工 学 院 毕 业 设 计 论 文 iii 目目 录录 摘摘 要要.i abstractii 第第 1 1 章章 绪论绪论.1 第第 2 2 章章 方案论证方案论证.3 2.1 功能要求3 2.2 方案确定3 第第 3 3 章章 系统硬件设计系统硬件设计.6 3.1 电源部分的设计6 3.1.1 变压器式直流稳压电源.6 3.1.2 开关式直流稳压电源.7 3.1.3 开关式直流稳压电源的设计.7 3.2 主电路的设计8 3.2.1 主要芯片的选择.8 3.2.2 主电路原理分析.9 3.3 单片机外围芯片简介10 3.3.1 1602lcd 显示模块.10 3.3.2 温度传感器 ds18b2013 3.3.3 语音芯片 isd1420.16 第第 4 4 章章 程序设计程序设计.19 4.1 总体设计19 4.2 主程序的设计20 4.3 int1 中断服务程序.22 4.4 各功能模块的设计22 4.4.1 显示子程序.22 4.4.2 日历、时间校正子程序.23 4.4.3 定时处理子程序.23 4.4.4 温度检测及处理子程序25 4.4.5 语音报时子程序.27 4.4.6 延时子程序.28 第第 5 5 章章 调试及性能分析调试及性能分析.29 5.1 软件调试29 5.2 硬件调试29 5.3 性能分析30 结束语结束语.31 致谢致谢.32 附录一附录一 系统原理图系统原理图.33 附录二附录二 系统的系统的 pcb 图和元件安装图图和元件安装图.34 附录三附录三 程序清单程序清单.35 主要参考文献主要参考文献.54 黄 石 理 工 学 院 毕 业 设 计 论 文 1 第第 1 1 章章 绪论绪论 1.11.1 单片机的发展概况单片机的发展概况 单片机一词最初源于“single chip microcomputer”,它忠实地反映了早期单片机 的形态和本质。随后按照面向对象,突出控制功能,在片内集成了许多外围叫路及 外设接口,突破了传统意义的计算机结构,发展成 microcontroller 的体系结构,目前 国外已普遍称之为微控制器 mcu(micro controller unit) 。鉴于它完全作为嵌入式 微控制器。由于国内对单片机一词已约定成俗,因此仍沿用至今。但对“单片机” 一词的理解,不应现限于“single chip microcomputer”,而应接轨于国际上对单片机 的标准称呼“micro controller unit”(mcu) 。 单片机的发展大致可分为四个阶段: 第一阶段:单片机探索阶段。以 intel 公司 mcs-48,motorola 公司 6801 为代 表,属低档型 8 位机。 第二阶段:单片机完善阶段。以 intel 公司 mcs-51,motorola 公司 68hc05 为 代表,属高档型 8 位机。此阶段,8 位单片机体系进一步完善,特别是 mcs-51 系列 单片机在世界和我国得到了广泛的应用,奠定了它在单片机领域的经典地位,形成 了事实上的 8 位单片机标准结构。 第三阶段:8 位机和 16 位机争艳阶段,也是单片机向微控制器发展的阶段。此 阶段 intel 公司推出了 16 位的 mcs-96 系列单片机,世界其他芯片制造商也纷纷推出 了性能优异的 16 位单片机,但由于价格不菲,其应用面受到一定的限制。相反 mcs-51 系列单片机,由于其性能价格比高,却得到了广泛的应用,并吸引了世界许 多知名制造厂商,竟相使用以 80c51 为内核,扩展部分测控系统中使用的电路技术、 接口技术、a/d、d/a 和看门狗等功能部件,推出了许多与 80c51 兼容的 8 位单片 机。强化了微控制器的特征,进一步巩固和发展了 8 位单片机的主流地位。 第四阶段:微控制器全面发展阶段。随着单片机在各个领域全面深入地发展和 应用,世界各大电气、半导体厂商普遍投入,出现了高速、大寻址范围、强运算能 力的 8 位/16 位/32 位通用型单片机以及小型廉价的专用型单片机,百花齐放,全面 发展,单片机已进入一个可广泛选择和全面发展的应用时代。 1.21.2 mcs-51mcs-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 公司将 80c51 内核使用权以专利互换或出售形式转让给世界许多著 名 ic 制造厂商,如 philips、nec、atmel、amd、dallas、siemens、fujutsu、oki、华邦、lg 等。在保 持与 80c51 单片机兼容的基础上,这些公司融入了自身的优势,扩展了针对满足不 黄 石 理 工 学 院 毕 业 设 计 论 文 2 同测控对象要求的外围电路。这样,80c51 单片机就变成了众多芯片制造厂商支持 的大家族,成了事实上的标准 mcu 芯片。 1.31.3 单片机的应用单片机的应用 目前,单片机已渗透到我们工作、生活的各个领域,几乎很难找到哪个领域没 有单片机的踪迹了。导弹的飞行装置靠的是单片机,网络数据通信及传输,工业自 动化控制,智能 ic 卡系统及各类家用电器的控制都离不开单片机。单片机的特点是 体积小,在其增加一些外围电路之后,就能成为一个完整的应用系统。例如,我们 日常生活中所用的数字电子秤,其内部就有一块单片机芯片,再加上传感器、液晶 屏和一些附加电路,就形成了一个完整的应用系统。由此可见,单片机的可扩展性 是不错的,应用也相当灵活。 单片机应用的意义不仅在于它的广阔范围及所带来的经济效益。更重要的意义 在于,单片机的应用从根本上改变了应用系统传统的设计思想和设计方法。以前采 用硬件电路实现的大部分功能,现在用单片机通过软件方法来实现。这种以软件取 代硬件的技术,不仅提高了系统的可靠性,还简化了硬件的设计;不仅缩小了系统 的体积,还降低了成本。 现代电子、电器产品及设备的智能化水平不断提高,在人机界面设计上不但有 了文字标识、发光管指示、显像屏显示等视觉表达,而且还有各种听觉表达,如最 简单的“滴滴、嘟嘟”讯响声、稍丰富些的音乐声,甚至用人的语言直接对用户“说话” 等。用简单的数码语音集成电路可以实现一句或多句语句的播放,如掩模芯片中的 “欢迎光临”、 “有电危险、请勿靠近”等,还有如 isd 系列、apr9600(ivs1560)等 芯片可由开发人员或用户任意录制、播放需要的一段或几段语音等。在听觉表达中 最复杂的就是语音的组合,它是将用户预存的多段语音按指定顺序连续播放,将字 或词汇组合成一句话、甚至一段话播放出来,从而实现最准确、定量的语义表达, 例如“嘟,现在温度 37.5 度,温度偏高”、 “现在时间五点二十五分三十三秒”等。 传统语音组合电路的设计十分复杂,开发工具十分昂贵,语音录制及软件编制 工作量巨大,而且组合出来的语音效果也不甚理想,尤其在投资不大的产品、系统 中最为突出,从而制约了这一技术的应用和发展。只在近几年来,模拟存储语音技 术的 isd 芯片及其廉价的开发编辑工具问世后,情况才大为改观。现在已有专业公 司开发出通用 isd 语音组合模块,用户只需要在 isd 语音芯片中分段录入要求的词 汇,即可方便地用单片机控制输出这些词汇的任意组合成句、成段,词汇的语音容 量从 20 秒至 480 秒甚至更长,以至可以容纳所有的中文汉字发音。 在日常生活及工农业生产中常要用到温度的检测及控制,传统的测温元件有热 电偶和热电阻。而热电偶和热电阻测出的一般都是电压,再转换成对应的温度,需 要比较多的外部硬件支持,硬件电路复杂,软件调试复杂,制作成本高。美国达拉 斯(dallas)半导体公司生产的新型ds18b20温度检测器件, 它是单片结构,无需 外加a/ d 即可输出数字量, 通讯采用单线制, 同时该通讯线还可兼作电源线,即具有 寄生电源模式。它具有体积小、精度易保证、无需标定等特点,特别适合与单片机合 用构成智能温度检测及控制系统。 本设计将以上三种优异性能的集成芯片相结合,以at89c51为控制器,以 ds18b20为温度检测器,以isd1420为语音输出,组成多功能万年历系统。具有功能 多、实用性强等特点。 黄 石 理 工 学 院 毕 业 设 计 论 文 3 第第 2 2 章章 方案论证方案论证 2.1 功能要求功能要求 1、能显示年、月、日、星期、时、分、秒。 2、能对时间进行手动修正。 3、采用 24 小时制,能自动处理润年。 4、使用 16x2lcd 显示器显示时间参数,除了星期使用字母外,其它的时间参 数使用数字。 5、上电后,电子钟显示“2007-04-20 fri” “12-00-00” 即第一行显示年、月、日、星期,第二行显示时、分秒。 6、定时功能:可设置定时时间,当定时时间到时,蜂鸣器发出报警声音。 2.2 方案确定方案确定 按照系统设计功能的要求,初步确定设计系统由主控模块、显示模块、键盘接 口模块、电源模块 5 个模组成。另外再扩充两个模块语音模块、温度检测模块, 分别完成语音报时和瘟度检测的功能。 方案一:方案一:如图 2-1 所示,系统以单片机为主控制器。通过单片机内的定时器, 得出一秒的时间,再根据秒、分、时、日、月、年之间的进制关系,完成基本的时 钟功能,再通过 lcd 液晶显示模块显示出来。温度检测部分由热敏电阻将温度转换 成模拟量的电压信号,经 a/d 转换器,将其转换成对应的数字量,再通过单片机把 温度值传给 lcd 液晶显示模块显示出来。语音报时时,单片机将当前的时钟的语音 信息(数字量)经 d/a 转换器,将其转换成模拟量,再进行功率放大,通过扬声器 发声,完成报时功能。 方案二:方案二:如图 2-2 所示,系统以单片机为主控制器。时钟功能的实现方法是由 单片机外部的秒脉冲发生器产生秒脉冲,以外部中断的形式传给单片机,单片机再 按照秒、分、时、日、月、年之间的进制关系,完成基本的时钟任务,再通过 lcd cpu 单片机 a/d 转换 d/a 转换功率放大扬声器 键 盘电 源 热敏电阻 图 2-1 方案一结构图 lcd 显示模 块 黄 石 理 工 学 院 毕 业 设 计 论 文 4 液晶显示模块显示出来。温度检测部分采用成品的数字温度传感器,它将温度直接 转换成单片机能识别的数字量信号,通过接口电路传给单片机,单片机把温度值传 给 lcd 液晶显示模块显示出来。语音报时部分采用专用的语音处理芯片,在报时时, 单片机将当前的时钟信息,转换成对应的语音地址,再传给语音芯片,由语音芯片 完成发音任务。 以上的两种方案都能完成系统设计所要求的功能,都以单片机为主控制器。键 盘和显示部分也一样。所不同的是秒信号产生、温度测量和语音处理电路。下面就 对这两种方案进行比较。 秒信号的产生秒信号的产生 方案一中,秒信号的产生是通过对单片机的机器周期进行计数 得到的。单片机的机器周期由单片机外接的晶振周期(时钟周期)确定,它们之间的关 系是: 晶振周期=12机器周期 如果外接的晶振频率为 12mhz,则机器周期为 1us。要得到一秒,就要对机器 周期计数 1000000 次。晶振频率的精度直接影响着秒信号的精度。方案二中,秒信 号的产生是用专用的秒脉发生器产生的,它具有各种补偿措施,以保证频率的稳定。 所以方案二的时钟和日历精度高于方案一。 温度测量温度测量 在方案一中,采用热敏电阻检测温度,其原理是热敏电阻的阻值随 温度的变化而变化,从而改变电路的电压或电流,这样就得出与温度有对就关系的 电压或电流信号,再经计算,就可得出被测量的温度。由于电压量或电流量都是模 拟量,易受外界的干扰,并且热敏元件存在非线性的问题,这都将影响温度的测量 精度,还给计算带来了麻烦。方案二采用成品的集成测温模块,具有体积小、抗干 扰能力强、调试方便或不用调试、易于实现群测等优点。而且直接输出数字量的温 度值。在简化了测量电路的同时又保证了测量精度。 语音处理语音处理 在方案一中,先把要发的音全部转换成数字量,存储在存储器中, 放音时,再把它们转换成模拟量去驱动扬声器发音。采用这种方法时,需要大量的 存储。假设语音的平均频率为 1.5khz,由采样定理(采样频率2被采样信号的最高 频率)知,采样频率至少为 3khz,那么将 1 秒钟的 1.5khz 的音频信号转换成数字量, 在未经任何压缩处理的情况下,至少要 3k 个存储单元才能存储下来。对于 mcs-51 单片机来说,必须外扩展存储器,不仅增加了成本,更重要的是增加了单片机的负 cpu 单片机 lcd 显示模块 键 盘 数字温度传感器 秒脉冲发生器 专用语音处理芯片扬声器 电 源 图 2-2 方案二结构图 黄 石 理 工 学 院 毕 业 设 计 论 文 5 担,单片需要不停把那么的数据传给 d/a 转换器进行转换,再驱动扬声器发音,这 就有可能导致单片机不能按时完成其他任务。方案二采用专用语音处理芯片,它集 成录音和放音功能,只须外接几个电容、电阻和按键就可以组成一个录放系统。和 单片机相连时,只须单片机把所发音的地址传给语音芯片,语间芯片就可完成发音 任务。在发音的过程中,单片机可以做其他的任务。不仅提高了语音电路的可靠性, 还大大减少了语音电路对单片机的占用率。 由以上的比较知,在实现相同功能的情况下,方案二比方案一明显地具有优越 性单片机外围元件少、电路简单、精度高、可靠性高、体积小等诸多优点。鉴 于此,本设计采用方案二。 黄 石 理 工 学 院 毕 业 设 计 论 文 6 第第 3 3 章章 系统硬件设计系统硬件设计 由于本万年历系统以单片机为主控芯片,故须对其编定相应的软件程序。 硬件是软件的载体,硬件的结构和可靠性直接影响着整个系统的可靠性。任何电子 产品都必须有一个电源为其提供能量才能工作,故本设计先从电源部分开始,再进 行功能部分的设计。 3.1 电源部分的设计电源部分的设计 稳压电源的功能是把来自电网的 220v 交流电压转变为所需的、稳定的直流电压, 为其他电路提供能源。它的设计在保证满足负载所须能量的同时,还要根据负载的 特性及其对电源的要求(如稳压范围、纹波系数等) ,进行设计。必要时还要有过流、 过压、欠压、过负载保护措施。 现在常用的直流稳压电源有变压器式和开关式电源两种。 3.1.1 变压器式直流稳压电源变压器式直流稳压电源 变压器式直流稳压源由电源变压器、整流电路、滤波电路和稳压电路四个部分组 成,如图 3-1 所示。市电先经电源变压器变换成所须等级的交流电压,而后经整流电 路将之整流成直流电,这时的直流电脉动量很大,经滤波电路以减小其脉动量,最 后经稳压电路进行稳压,从而得出符合要求的电压。 变压器式直流稳压电源结构简单,设计容易,但它的体积较大,效率也较低,过 负载能力也差。 + 电 源 + 整 流 + 滤 波 + 稳 压 + u1 u2 u3 ui u0 _ 变压器 _ 电 路 _ 电 路 _ 电 路 _ u1 u2 u3 ui u0 0 t 0 t 0 t 0 t 0 t 图 3-1 变压器式直流稳压电源的组成框图及整流与稳压过程 (b)整流与稳压过程 (a)稳压电源的组成框图 黄 石 理 工 学 院 毕 业 设 计 论 文 7 3.1.2 开关式直流稳压电源开关式直流稳压电源 开关式直流稳压电源简称开关电源(switching power supply),它是指起电压调 整功能的器件始终以开关方式工作的一种直流稳压电源。图 3-2 所示为输入输出隔离 的开关电源原理框图。50hz 单相交流 220v 电压或三相交流 220v380v 电压经 emi 防电磁干扰电源滤波器,直接整流滤波,然后再将滤波后的直流电压经变换电路变 换为数赫或数百千赫的高频方波或准方波电压,通过高频变压器隔离并降压(或升 压)后,再经高频整流、滤波电路,最后输出直流电压。通过取样、比较、放大及 控制、驱动电路,控制变换器中功率开关管的占空比,便能得到稳定的输出电压。 开关电源具有功耗小、效率高、体积小、重量轻、稳压范围宽、电路形式灵活多 样等诸多优点。因而本设计采用开关电源。 3.1.3 开关式直流稳压电源的设计开关式直流稳压电源的设计 由于万年历系统都采用集成电路,只需+5 单电源供电,功耗低。故设计的开关 电源比较简单,如图 3-3 所示。 图 3-3 开关式直流稳压电源原理图 1t 1 l1 l2 s1 1vt 2 13001 1vt 1 8050 1d5 1n4148 1d6 1n4837 1z d1 5.1v 1r2 1m 1r5 4.7k 1r3 680 1r4 62k 1c2 22uf 1c3 470uf 5v 1d2 in4007 1d4 in4007 1d1 in4007 1d3 in4007 1r1 1 1c1 472 1r6 1.5k1r7 10 1r9 330 1r8 1.5k le d 这个电源是自激振荡的反激式开关电源。220v 交流输入,一端经过一个开关, 另一端经过一个 1 电阻 1r1 后,进入由 4 个二极管 1d1-1d4 组成的电桥,进行整流。 emi 滤波器 整 流 滤 波 变 换 电 路 高频 变压 器 整 流 滤 波 控 制 电 路 取样 比较 放大 交流输 入 直流输 出 图 3-2 开关式直流稳压电源原理框图 黄 石 理 工 学 院 毕 业 设 计 论 文 8 电阻 1r1 用来做保护的,如果后面出现故障等导致过流,那么这个电阻将被烧断, 从而避免引起更大的故障。右边的电阻 1r4 构成一个高压吸收电路,当开关管 1vt2 关断时,负责吸收线圈上的感应电压,从而防止高压加到开关管 1vt2 上而导致击穿。 1vt2 为开关管(其型号为 mje13001),耐压 400v,集电极最大电流 0.2a,最大集电 极功耗为 10w,用来控制原边绕组与电源之间的通、断。当原边绕组不停的通断时, 就会在开关变压器中形成变化的磁场,从而在次级绕组中产生感应电压。左端的 1r2 为启动电阻,给开关管提供启动用的基极电流。 1r7 为电流取样电阻,电流经 取样后变成电压(其值约为 10*ie(1vt2),这电压经 1r5 后,加至三极管 1vt1 的基极 上。当取样电压大约大于 1.4v,即开关管电流大于 0.14a 时,三极管 1vt1 导通, 从而将开关管 1vt2 的基极电压拉低,集电极电流减小,这样就限制了开关管的电流, 防止电流过大而烧毁(其实这是一个恒流结构,将开关管的最大电流限制在 140ma 左 右)。变压器左下方的绕组(取样绕组)的感应电压经整流二极管 1d5 整流,电容 1c2 滤波后形成取样电压。取样电压超过稳压二极管 1zd1 的稳压值后,稳压二极管 1zd1 被击穿,使 1vt1 迅速导通,从而将开关 1vt2 的基极电位拉低,这将导致开 关管断开或者推迟开关的导通,从而控制了能量输入到变压器中,也就控制了输出 电压的升高,实现了稳压输出的功能。电阻 1r3 跟串联的电容 1c1,则是正反馈支 路,从取样绕组中取出感应电压,加到开关管的基极上,以维持振荡。 变压器次级绕组,经二极管 1d6 整流,220uf 电容滤波后输出 5v 的电压。因为开 关电源的工作频率较高,普通整流二极管是不行的,要采用快速回复二极管,例如 肖特基二极管等。同样因为频率高的原因,变压器也必须使用高频开关变压器,铁 心一般为高频铁氧体磁芯,具有高的电阻率,以减小涡流。 led 为电源指示灯,1r8 用于对 led 进行限流。由于当电源工作于轻载时,开 关频率较高,效率就不理想,为了防止过多的消耗发生在开关管上,应防止频率过 分升高,具体的做法是在输出端加一固定电阻充当负载,即图中的 1r9,其值的大 小一般按不小于满负载的 10%考滤。 3.2 主电路的设计主电路的设计 主电路的功能是完成年、月、日、星期、时、分、秒之间的转换,对温度传感 器进行控制并读取温度转换后的值,再送往液晶显示屏 lcd 显示,还要判断定时时 间是否到时,并且接受键盘操作,对日期和时间进行校正,以及对定时器进行设定 和语音报时。 3.2.1 主要芯片的选择主要芯片的选择 主控芯片由单片机完成。目前市场上的单片机种类很多,如 intel 公司生产的 80c51 系列,atmel 公司生产的 at89 系列,microchip 公司生产的 pic 系列等等。 他们各有其优点及缺点。其中 atmel 公司生产的 at89 系列单片机最为流行,它具 有 flash rom,擦写方便,价格便宜。因此选用 at89c51 为主控芯片。 显示模块采用 216 的 lcd 屏 1602。1602lcd 能显示 2 行,每行 16 个字符, 显示直观、功耗小,有较高的性价比。 温度传感器采用美国达拉斯(dallas)生产的可编程的 ds18b20 温度传感器。 它直接输出数字量的温度值,精度高,测温分辨率可达 0.0625。一线制总线,接 口方便,体积小等诸多优点。 黄 石 理 工 学 院 毕 业 设 计 论 文 9 语音芯片选用美国信息存储器件公司推出的 isd420 语音芯片。isd1420 芯片的 外围元件简单,仅需少量阻容元件、麦克风即可组成一个完整的录放系统。isd1420 可以以字为单位来储存声音信息,以少量的语音信息,通过语音的组合,可形成多 种语句。isd1420 采用模拟信息存储技术,重放音质好,接口灵活方便,同样具有 优越的性价比。 3.2.2 主电路原理分析主电路原理分析 万年历系统的原理图如图 3-4 所示。在图 3-4 中 1602 液晶显屏将要显示的内容 显示出来。at89c51 完成年、月、日、星期、时、分、秒之间的转换,集成芯片 2u4 通过 at89c51 的中断 1 向 at89c51 提供精确的秒脉冲信号,以完成时钟和日 历任务。在这里采用外部中断提供秒脉冲信号,其目的有二:1、提高时钟的精度。 2、在本系统中采用了一个 ds18b20 的数字温度传器,它是单总线型的,数据的传 输有严格的时间要求。它测量一次,再加这一次读写操作,大约需要 900 毫秒,如 果采用单片机内部定时器(12mhz 晶振时,最大定时时间为 65.536 毫秒),就会在温 度读写期间发生定时器中断,这样就会破坏 ds18b20 数据传输的时序,从而导致数 据传输错误。采用外部中断的方式提供秒信号时,每秒只中断 1 次,在某次中断到 下一次中断期间,已完成了数据的传输,这样就保证了 ds18b20 数据传输的正确性。 通过 ta89c51 的 p0 口与 1602 液晶显示屏进行命令和数据的传输。在 p0 口中 接有上拉电阻 2r1,这是因为 p0 口为非准向 i/o 口,其内部输出三极管的集电极没 有上拉电阻,是开路的,若不外接上拉电阻 2r1,就会造成 p0 口不能输出高电平。 p2.5 用于控制传送给 lcd 的是命令还是要显示的内容。p2.5 为高电平表示传送的是 p1.0 1 p1.1 2 p1.3 4 p1.4 5 p1.5 6 p1.6 7 p1.7 8 rst /vpp 9 rxd/p3.0 10 txd/p3.1 11 int0/p3.2 12 int1/p3.3 13 t0/p3.4 14 t1/p3.5 15 wr/p3.6 16 rd/p3.7 17 p1.2 3 xtal 1 18 xtal 2 19 vss 20 ale /prog 30 p2.1 22 p2.2 23 p2.3 24 p2.4 25 p2.5 26 p2.6 27 p2.7 28 psen 29 p2.0 21 ea/vpp 31 p0.7 32 p0.6 33 p0.5 34 p0.4 35 p0.3 36 p0.2 37 p0.1 38 p0.0 39 vcc 40 at89c51 2u1 2r1 a103 2sw1 减减 减 2sw3 减1减 2sw2 减1减 2sw4 减减 减 2r2 4.7k 2c1 22uf 5v 2y1 12mh z 2c3 30p 2c2 30p vcc 3 dq 2 gnd 1 ds18b20 2u5 ds18b20 vcc 3 out 2 gnd 1 2u4 1s spk1 5v db0 db1 db2 db3 db4 db5 db6 db7 db0 db1 db2 db3 db4 db5 db6 db7 rs r/w r/w e 5v 5v 5v 5v 5v 2vt 1 8050 2r4 2 dq dq sw2 sw3 sw4 a2 a3 a4 a5 a6 a7 eom eom play sw2 sw3 sw4 2r3 1k led le d sw1 sw1 vss 1 vdd 2 vc 3 rs 4 r/w 5 e 6 db0 7 db1 8 db2 9 db3 10 db4 11 db5 12 db6 13 db7 14 le d+ 15 le d- 16 1602 2u3 a0 1 a1 2 a2 3 a3 4 a4 5 a5 6 nc 7 nc 8 a6 9 a7 10 nc 11 gndd 12 gnda 13 sp+ 14 sp- 15 vcca 16 m ic 17 m ic re f 18 agc 19 anain 20 anaout 21 nc 22 pl ayl 23 pl aye 24 recl ed 25 xclk 26 rec 27 vccd 28 2u2 isd1420 a0 a1 a0 a1 a2 a3 a4 a5 a6 a7 play rs e 图 3-4 主电路原理图 黄 石 理 工 学 院 毕 业 设 计 论 文 10 要显示的内容,p2.5 为低电平表示传送的是控制命令。p2.6 用于控制 lcd 的读和写 操作。高电平为读操作,低电平为写操作。p2.7 为使能控制,控制 lcd 是否接受操 作。高电平时允许读操作,由高电平变为低电平的过程中,允许写操作。 温度传感器 ds18b20 用单总线接在 at89c51 的 p2.4 口上,按单总线协议进行数 据传输。 at89c51 的 p1 口与语音芯片 isd1420 的地址线 a0-a7 相连,用以控制发哪个 音。isd1420 的与(25 脚)at89c51 的 p3.2 口(外部中断 0)相连,用来告recled 诉 at89c51 放音结束,可以启动下一次放音。启动放音采用边沿触发方式, isd1420 的(24 脚)与 at89c51 的 p3.1 口相连,用以启动放音。playe 键盘电路采用四个键,分别接到 at89c51 的 p2.0-p2.3 口上。 sw1 为功能键,用于控制当前校正的是哪部分,在正常显示的情况下连续按它, 会在正常显示年月日星期时分正常显示之间循环变换。在定时调整 时按它,会在时分定时开关控制位定时提示音选择正常显示之间变换。 (在 此状态下,连续按 sw1 不循环变换) 。 sw2、sw3 分别为“加 1” 、 “减 1”键。在校正状态下,每按一下 sw2 或 sw3 相应的部分就会加 1 或减 1。若在正常显示状态下,按下 sw2,就会显示定时显示 状态。若在进入定时显示状态开始,大约在两秒内若按下了功能键 sw1,则会转到 定时器的设定状态,否则就返回正常显示状态。 2r2、2c1 构成 at89c51 的复位电路。at89c51 复位的条件是使其复位端(9 脚) 保持高电平大于两个机器周期。在刚通电的时候,电源电压通过 2r2 向 2c1 充电, 在 2r2 两端形成电压,使单片机的复位端为高电平,只要使 2r2 2c1 的时间常数 大于两个机器周期,就可使 at89c51 复位,一般 2r2 取 1k、2c1 取 22uf。考虑 到开关稳压电源的瞬态响应时间稍长,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 1602lcd 显示模块对外部接口有 16 个引脚。各引脚的功能如表 3-3-1 所示 表 3-3-1 1602lcd 显示模块引脚功能 引脚号符号功能 1vss接地 2vdd+5v 黄 石 理 工 学 院 毕 业 设 计 论 文 11 3vcclcd 驱动电源 需随温的变化而调整 4rs寄存器选择信号 h:数据寄存器 l:指令寄存器 5r/w读写控制 h:读数据 l:写数据 6e 允许信号端 上升沿:锁存选择信号 下降沿:读/写数数或指 令 714db0db7数据输入/输出总线 1516 led+ led- 背光灯电源 1602lcd 显示模块的寄存器选择(rs) 、读/写(r/w)与操作之间的关系如表 3-3-2 所示 表 3-3-2 1602lcd 的 e、rs、r/w 与操作之间的关系 rsr/we操作 00写指令码 01读忙信号和地址计数器 10写数据 11读数据 1602lcd 显示模块的读写操作时序分别如图 3-5、图 3-6 所示。 图 3-5 1602lcd 读操作时序 图 3-6 1602lcd 写操作时序 黄 石 理 工 学 院 毕 业 设 计 论 文 12 1602lcd 显示模块的指令系统如表 3-3-3 所示。 表 3-3-3 1602lcd 指令系统 指 令 码 序 号 指 令 rsr/wdb7db6db5 db 4 bd3db2 db 1 db 0 指 令 说 明 执行周期 (最大) f=250khz 1清屏0000000001清屏 置 ac 为零1.64ms 2返回000000001* 光标返回(ac=0) , 显示回原位。ddr 内容不变 40us 3 输入方式设 置 00000001j/ds 设置光标及显示移动 方向。确定是移到显 示还是移动光标 40us 4 显示开关控 制 0000001dcb 显示 on/off 为 d, 光标 on/off 为 c, 光标闪烁为 b 40us 5 光标或显示 移 000001s/cr/l* 光标和显示的移动不 影响 ddram 的内容 40us 6功能设置00001dlnf* 接口数据位 dl,显 示行数 n 及字形 f 40us 7 cgram 地 址设置 0001acg 设置 cgram 地址, 设置后 ddram 数据 可发送或接收 40us 8 ddram 地 址设置 001add 设置 ddram 地址, 设置后 ddram 数据 可发送或接收 40us 9 读忙信号 (bf)及地 址计数据 01bfac 读 bf,判断内部操 作是否下在进行,读 ac 1us 10写数据10写数据 写数据到 cg 或 ddram 40us 11读数据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 和 cgram ddram:显示数据 ram cgram:字符生成 ram rs:寄存器选择 r/w:读/写 黄 石 理 工 学 院 毕 业 设 计 论 文 13 3.3.2 温度传感器温度传感器 ds18b20 ds18b20 数字温度计是 dallas 公司生产的 1wire,即单总线器件,具有线 路简单,体积小的特点。因此用它来组成一个测温系统,具有线路简单,在一根通 信线,可以挂很多这样的数字温度计,十分方便。 1、ds18b20 产品的特点产品的特点 只要求一个端口即可实现通信。 在 ds18b20 中的每个器件上都有独一无二的序列号。 实际应用中不需要外部任何元器件即可实现测温。 测量温度范围在55到125之间。 数字温度计的分辨率用户可以从 9 位到 12 位选择。 内部有温度上、下限报警设置。 2、ds18b20 的引脚介绍的引脚介绍 ds18b20 的封装及引脚排列见图 3-7, 其引脚功能描述见表 3-3-4。 表 3-3-4 ds18b20 的引脚功能描述 序 号 名称引脚功能描述 1gnd接地 2dq数据输入/输出引脚。漏极开路。当被用着在寄生电源下,也可以 向器件提供电源。 3vdd可选择的 vdd 引脚。当工作于寄生电源时,此引脚必须接地。 ds18b20 to-90 封装底视图 ds18b20 8 脚 soic 封装 图 3-7 ds18b20 的封装及引脚排 列图 黄 石 理 工 学 院 毕 业 设 计 论 文 14 ds18b20 内部结构如图 3-8 所示,主要由 4 部分组成:64 位 rom、温度敏感 元件、非易失性温度报警触发器 th 和 tl、配置寄存器。rom 中的 64 位序列号是 出厂前被光刻好的,它可以看作是该 ds18b20 的地址序列码,每个 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。 表3-3-5 配置寄存器与分辨率关系 r0r1温度计分辨率/bit最大转换时间/ms 00993.79 0110187.5 1011375 1112750 3、ds18b20 rom操作指令操作指令 一旦总线主机检测到从器件的存在,它便可以发出器件rom操作命令之一。所 有rom操作命令均为8位长。 1) read rom (读rom)33h :此命令允许总线主机读ds18b20的8位产品系列编 码,唯一的48信序列号,以及8位的crc。此命令只能在总线上仅有一个ds18b20的 情况下使用。如果总线上存在多于一个的从器件,那么当所有从器件企图同时发送 图 3-8 ds18b20 内部结构框图 64 位 rom 和单 总线 接口 高速 缓存 存储器 存储器和控制器 8 位 crc 生成器 温度敏感元件 低温触发器 tl 高温触发器 th 配置寄存器 电 源 检 测 dq gnd vcc tmr1r011111 msblsb 图 3-9 配置寄存器定义 黄 石 理 工 学 院 毕 业 设 计 论 文 15 时将发生数据冲突的现象(漏极开路会产生线与的结果)。 2) match rom (符合rom)55h:此命令后继以64位的rom数据序列,允许总线 主机对多点总线上特定的ds18b20寻址。只有与64位rom序列严格相符的ds18b20 才能对后继的存储器操作命令作出响应。 3) skip rom (跳过rom)cch:在单点总线系统中,此命令通过允许总线主机 不提供64位rom编码而直接进行存储器操作以节省时间。 4) search rom (搜索rom)f0h:当系统开始工作时,总线主机可能不知道单总 线上的器件个数或不知道其64位rom编码。搜索rom命令允许总线控制器用排除法 识别总线上的所有从器件的64位编码。 5) alarm search (警告搜索)ech:此命令的流程与搜索rom命令相同。但是仅 在最近一次温度测量出现警告的情况下,ds18b20才对此命令作出响应。 4、ds18b20 ram操作指令操作指令 1)write scratchpad (写暂存存储器)4eh:这个命令向ds18b20的暂存器th和tl 中写入数据。可以在任何时刻发出复信命令来中止写入。 2)read scratchpad (读暂存存储器)beh:这个命令读取暂相隔器的内容。读取 将从第1个字节开始,一直进行下去,直到第9(crc)字节读完。如果不想读完所有字 节,控制器可以在任何时间发出复位命令来中止读取。 3)copy scratchpad (复制暂存存储器)48h:这个命令把暂存器的内容拷贝到 ds18b20的e2rom存储器里,即把温度报警触发字节存入非易失性存储器里。如果 总线控制器在这条命令之后跟着发出读时间隙,而ds18b20又忙于把暂存器拷贝到 e2rom存储器,ds18b20就会输出一个0,如果拷贝结束的话,ds18b20则输出1。 如果使用寄生电源,总线控制器必须在这条命令之后立即启动强上拉 ,并最少保持

温馨提示

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

评论

0/150

提交评论