logo资料库

基于51单片机的电子万年历的设计资料.pdf

第1页 / 共20页
第2页 / 共20页
第3页 / 共20页
第4页 / 共20页
第5页 / 共20页
第6页 / 共20页
第7页 / 共20页
第8页 / 共20页
资料共20页,剩余部分请下载后查看
摘要
Abstract
1引言
2功能要求
3方案论证与设计
3.1控制部分的方案选择
3.2测温部分的方案选择
3.3显示部分的方案选择
4系统硬件电路设计
4.1主控器AT89C52
4.2时钟电路DS1302
4.2.1.DS1302的性能特性
4.2.2DS1302数据操作原理
4.3测温电路的设计
4.3.1温度传感器工作原理
4.3.2DS18B20与单片机的接口电路
4.4显示电路的设计
4.5键盘接口的设计
5系统程序的设计
5.1阳历程序设计
5.2时间调整程序设计
5.3温度程序设计
5.3.1主程序
5.3.2读出温度子程序
5.3.3温度转换命令子程序
5.3.4计算温度子程序
5.3.5显示数据刷新子程序
6调试及性能分析
6.1调试步骤
6.2性能分析
7总结
参考文献
致谢
慧净电子好评资料包,赠送给各位好人,好人一生平安, 慧净电子好评资料包,赠送给各位好人,好人一生平安,一生辛福一生辛福一生辛福一生辛福 慧净电子好评资料包,赠送给各位好人,好人一生平安, 慧净电子好评资料包,赠送给各位好人,好人一生平安, HJ-C52 HJ-C52 开发板------------最新配套 58585858 课 51515151 单片机视频教程 HJ-C52 慧净电子 HJ-C52 小学生 4444 年级水平的同学都能看教程学会单片机技术 目 录 慧净电子 -做人人都买得起的单片机开发板 单片机资料下载网址:WWW.HJMCU.COM
...................................................................................................................................................................... ......................................................................................................................................................................IIII ...................................................................................................................................................................... 摘 要...................................................................................................................................................................... ...........................................................................................................................................................IIIIIIII ABSTRACT ........................................................................................................................................................... ABSTRACT ........................................................................................................................................................... ABSTRACT ABSTRACT........................................................................................................................................................... 1111 引言..................................................................................................................................................................... ..................................................................................................................................................................... ..................................................................................................................................................................... 1111 ..................................................................................................................................................................... ............................................................................................................................................................. 1111 2222 功能要求............................................................................................................................................................. ............................................................................................................................................................. ............................................................................................................................................................. 3333 方案论证与设计................................................................................................................................................. ................................................................................................................................................. ................................................................................................................................................. 1111 ................................................................................................................................................. 3.1 控制部分的方案选择.................................................................................................................................. 1 3.2 测温部分的方案选择.................................................................................................................................. 1 3.3 显示部分的方案选择.................................................................................................................................. 2 ............................................................................................................................................. 4444 系统硬件电路设计............................................................................................................................................. ............................................................................................................................................. 2222 ............................................................................................................................................. 4.1 主控器 AT89C52......................................................................................................................................... 2 4.2 时钟电路 DS1302....................................................................................................................................... 3 4.2.1. DS1302 的性能特性............................................................................................................................. 3 4.2.2 DS1302 数据操作原理.......................................................................................................................... 3 4.3 测温电路的设计.......................................................................................................................................... 5 4.3.1 温度传感器工作原理........................................................................................................................... 5 4.3.2 DS18B20 与单片机的接口电路............................................................................................................8 4.4 显示电路的设计.......................................................................................................................................... 9 4.5 键盘接口的设计...................................................................................................................................... 10 5555 系统程序的设计............................................................................................................................................... ............................................................................................................................................... ............................................................................................................................................... 10101010 ............................................................................................................................................... 5.1 阳历程序设计............................................................................................................................................ 10 5.2 时间调整程序设计.....................................................................................................................................11 5.3 温度程序设计............................................................................................................................................ 12 5.3.1 主程序................................................................................................................................................. 12 5.3.2 读出温度子程序................................................................................................................................. 12 5.3.3 温度转换命令子程序......................................................................................................................... 12 5.3.4 计算温度子程序................................................................................................................................. 13 5.3.5 显示数据刷新子程序.......................................................................................................................... 13 ............................................................................................................................................. ............................................................................................................................................. 13131313 ............................................................................................................................................. 6 调试及性能分析............................................................................................................................................. 6.1 调试步骤.................................................................................................................................................... 14 6.2 性能分析.................................................................................................................................................... 14 ................................................................................................................................................................. ................................................................................................................................................................. 14141414 ................................................................................................................................................................. 7 总结................................................................................................................................................................. ............................................................................................................................................................... ............................................................................................................................................................... 14141414 ............................................................................................................................................................... 参考文献............................................................................................................................................................... ................................................................................................................................................................... ................................................................................................................................................................... 14141414 ................................................................................................................................................................... 致 谢...................................................................................................................................................................
基于 51 单片机的电子万年历的设计 摘 要 电子万年历是单片机系统的一个应用,由硬件和软件相配合使用。硬件由主控器、时钟电路、 温度检测电路、显示电路、键盘接口 5 个模块组成。主控模块用 AT89C52、时钟电路用时钟芯片 DS1302、 显示模块用 LED 数码管、温度检测采用 DS18B20 温度传感器、键盘接口电路用普通按键接上拉电阻 完成;软件利用 C 语言编程实现单片机程序控制。单片机通过时钟芯片 DS1302 获取时间数据,DS18B20 采集温度信号送该给单片机处理,单片机再把时间数据和温度数据送给 74LS154 译码,然后通过三 极管 C9015 放大驱动 LED 数码管显示阳历年、月、日、时、秒、闹钟、星期、温度。 关键词 电子万年历;单片机;温度传感器;时钟;数码显示 I
Abstract Abstract Abstract Abstract Electronic perpetual calendar which is an application of the single-chip processor system, is utilized by combining hardware and software. And Hardware is composed of five modules: Main control unit, clock circuit, temperature test circuit, display circuit, keyboard interface. Main control board adopts AT89S52, clock circuit adopts the DS1302 clock chip, display module adopts the LED digital tube, and temperature test adopts the DS18B20 temperature sensor, keyboard interface circuit is completed by connecting ordinary button with pull-up resistor. Software takes advantage of C to program, so as to realize the programmed control of single-chip processor. Single-chip processor gets the time data through using the DS1302 clock chip. The DS18B20 gathers temperature signals and transmits them to single-chip processor. Then, single-chip processor transmits the time data and the temperature data to the 74LS154 decoder. Lastly, the LED displays solar calendar year, year, month, day, hour, minute, second, alarm clock, week and temperature with being enlarged and driven by the C9015 triode. Keyword Keywords:s:s:s: Electronic perpetual calendar; single-chip processor; temperature sensor; clock; Keyword Keyword digital display
1 引言 随着微电子技术和超大规模集成电路技术的不断发展,家用电子产品不但种类日益丰富,而且 变得更加经济实用,单片微型计算机体积小、性价比高、功能强、可靠性高等独有的特点,在各个 领域得到了广泛的应用。电子万年历是一种应用非常广泛的日常计时工具,数字显示的日历钟已经 越来越流行,特别是适合在家庭居室、办公室、大厅、会议室、车站和广场等使用。LED 数字显示 的日历钟显示清晰直观、走时准确、可以进行夜视,并且还可以扩展出多种功能。功能也越来越齐 全,除了公历年月日、时分秒、星期显示及闹铃。但通过我们对各种电子钟表、历的不断观察总结 发现目前市场的钟、历都存在一些不足之处,比如:时钟不精确、产品成本太高、无环境温度显示 等,这都给人们的使用带来了某些不便。为此设计了一种功能全面、计时准确、成本低廉的基于 51 单片机的万年历。 2 功能要求 1. 万年历能用数码管显示阳历年、月、日、星期、[小]时、分、秒并设置指定时间的闹铃。 2. 数字式温度计要求测温范围-50~100°C, LED 数码管直读显示。 3 方案论证与设计 3.1 控制部分的方案选择 1. 用可编程逻辑器件设计。可采用 ALTERA 公司的 FLEX10K 系列 PLD 器件。设计起来结构清晰, 各个模块,从硬件上设计起来相对简单,控制与显示的模块间的连接也会比较方便。但是考虑到本 设计的特点,EDA 在功能扩展上比较受局限,而且 EDA 占用的资源也相对多一些。从成本上来讲, 用可编程逻辑器件来设计也没有什么优势。 2. 用凌阳 16 位单片机设计。凌阳 16 位单片机有丰富的中断源和时基,方便本实验的设计。它 的准确度相当高,并且 C 语言和汇编兼容的编程环境也很方便来实现一些递归调用。 I/O 口功能也 比较强大,方便使用。用凌阳 16 位单片机做控制器最有特色的就是它的可编程音频处理,可完成语 音的录制播放和识别。这些都方便对设计进行扩展,使设计更加完善。成本也相对低一些。但是, 在控制与显示的结合上有些复杂,显示模组资源相对有限,而且单片机的稳定性不是很高。 3. 主控芯片使用 51 系列 AT89C52 单片机,时钟芯片用美国 DALLAS 公司推出的一种高性能、 低功耗、带 RAM 的时钟 DS1302。采用 DS1302 作为主要计时芯片,可以做到计时准确。更重要的是, DS1302 可以在很小电流的后备电源(2.5~5V 电源,在 2.5V 时耗电小于 300nA)下继续计时,停电 后时钟无需重新调整,并可编程选择多种充电电流来对后备电源进行慢速充电,可以保证后备电源 基本不耗电,还可自设闹铃,阳历、星期与年月日自动对应。本系统采用了此方案。 3.2 测温部分的方案选择 1.在日常生活及工农业生产中经常要乃至温度的检测及控制,传统的测温元件有热电偶和热电 阻。而热电偶和热电阻测一般都是电压,再转换成对应的温度,需要比较多的外部硬件支持,硬件 电路复杂,软件调试复杂,制作成本高。 2.与前面相比,采用美国 DALLAS 半导体公司继 DS1820 之后推出的一种改进型智能温度传感器 DS18B20 作为检测元件,测温范围为-55~125°C,最大分辨率可达 0.0625°C。DS18B20 可以直 接读出被测温度值,而且采用 3 线制与单片机相连,减少了外部的硬件电路,具有低成本和易使用 的特点。 共 15 页,第 1页
马培:基于 51 单片机的电子万年历设计 3.3 显示部分的方案选择 1. 液晶显示方式。液晶显示效果出众,可以运用菜单项来方便操作,但是在显示时,特别是使 用秒表功能时扫描速度跟不上,屏幕会有明显的闪烁。而且由于 61 板的存储空间有限,液晶显示就 不能与语音播抱程序同时实现。这些大大影响了电子万年历的性能。 2. 相比液晶显示,8 段数码管虽然操作比液晶显示略显繁琐,但可视范围十分宽,而且经济实 惠,也不需要复杂的驱动程序。所以最后选择 LED 数码管显示方案。 综上所述,按照系统设计功能的要求,确定硬件系统由主控制器、时钟模块、测温电路、显示 模块、键盘接口共 5 个模块组成,总体系统构成框图如图 3.1 所示。 DS1302 时钟模块 DS18B2 温度探测 AT89C52 主控制器 键盘扫描电路 数码显示电路 图 3.1 电子万年历系统构成框图 4 系统硬件电路设计 电子万年历电路原理图见附件一,系统由主控制器 AT89C52、时钟芯片 DS1302、温度传感器 DS18B20 传感器、显示电路及键盘扫描电路组成。 4.1 主控器 AT89C52 ATMEL 公司生产的 AT89C52 单片机采用高性能的静态 80C51 设计,由先进工艺制造,并带有非 易失性 Flsah 程序存储器。它是一种高性能、低功耗的 8 位 CMOS 微处理芯片,市场应用最多。主要 性能特点有: 8KB Flash ROM,可以檫写 1000 次以上,数据保存 10 年。 256 字节内部 RAM。 电源控制模式 ——时钟可停止和恢复; ——空闲模式; ——掉电模式。 6 个中断源。 4 个中断优先级。 4 个 8 位 I/O 口。 全双工增强型 UART。 3 个 16 位定时/计数器,T0、T1(标准 80C51)和增加的 T2(捕获和比较)。 全静态工作方式:0~24MHz。 共 15 页,第 2页
4.2 时钟电路 DS1302 4.2.1. DS1302 的性能特性 实时时钟,可对秒、分、时、日、周、月以及带闰年补偿的年进行计数; 用于高速数据暂存的 31×8 位 RAM; 最少引脚的串行 I/O; 2.5~5.5V 电压工作范围; 2.5V 时耗电小于 300nA; 用于时钟或 RAM 数据读/写的单字节或多字节(脉冲方式)数据传送方式; 简单的 3 线接口; 可选的慢速充电(至 Vcc1)的能力。 DS1302 时钟芯片包括实时时钟/日历和 31 字节的静态 RAM。它经过一个简单的串行接口与微处 理器通信。实时时钟/日历提供秒、分、时、日、周、月和年等信息。对于小于 31 天的月和月末的 日期自动调整,还包括闰年校正的功能。时钟的运行可以采用 24h 或带 AM(上午)/PM(下午)的 12h 格式。采用三线接口与 CPU 进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或 RAM 数据。DS1302 有主电源/后备电源双电源引脚:Vcc1 在单电源与电池供电的系统中提供低电源,并 提供低功率的电池备份;Vcc2 在双电源系统中提供主电源,在这种运用方式中,Vcc1 连接到备份电, 以便在没有主电源的情况下能保存时间信息以及数据。DS1302 由 Vcc1 或 Vcc2 中较大者供电。当 Vcc2 大于 Vcc1+0.2V 时,Vcc2 给 DS1302 供电;当 Vcc2 小于 Vcc 时, DS13026 由 Vcc1 供电。 4.2.2 DS1302 数据操作原理 DS1302 在任何数据传送时必须先初始化,把 RST 脚置为高电平,然后把 8 位地址和命令字装入 移位寄存器,数据在 SCLK 的上升沿被输入。无论是读周期还是写周期,开始 8 位指定 40 个寄存器 中哪个将被访问到。在开始 8 个时钟周期,把命令字节装入移位寄存器之后,另外的时钟周期在读 操作时输出数据,在写操作是写入时写入数据。时钟脉冲的个数在单字节方式下为 8 加 8,在多字 节方式下为 8 加字节数,最大可达 248 字节数。 如果在传送过程中置 RST 脚为低电平,则会终止本次数据传送,并且 I/O 引脚变为高阻态。上 电运行时,在 Vcc 大于等于 2.5V 之前,RST 脚必须保持低电平。只有在 SCLK 为低电平时,才能将 RST 置为高电平。DS1302 的引脚及内部结构图如图 4.1 所示,表 4.1 为各引脚的功能。 DS1302 的控制字如图 4.2 所示。控制字节的最高位(位 7)必须是逻辑 1;如果它为 0,则不能 把数据写入到 DS1302 中。位 6 如果为 0,则表示存取日历时钟数据;为 1 表示存取 RAM 数据。位 5~ 1(A4~A0)指示操作单元的地址。最低有效位(位 0)如为 0,表示要进行写操作;为 1 表示进行 读操作。控制字节总是从最低位开始输入/输出。 为了提高对 32 个地址的寻址能力(地址/命令位 1~5=逻辑 1),可以把时钟/日历或 RAM 寄存器 规定为多字节(burst)方式。位 6 规定时钟或 RAM,而位 0 规定读或写。在时钟/日历寄存器中的 地址 9~31 或 RAM 寄存器中的地址 31 不能寄存数据。在多字节方式中,读或写从地址 0 的位 0 开始。 必须按数据传送的次序写最先的 8 个寄存器。但是,当以多字节方式写 RAM 时,为了传送数据不必 写所有 31 字节。不管是否写了全部 31 字节,所写的每一字节都将传送至 RAM。 共 15 页,第 3页
马培:基于 51 单片机的电子万年历设计 Vcc2 X1 X2 GND 1 2 3 4 8 7 6 5 Vcc1 SCLK I/O RST Vcc1 Vcc2 GND I/O SCLK RST 电源 控制 实时时钟 输入移位 寄存器 DATA BUS 32.768kHz X1 X2 振荡器与 分频器 命令与 控制逻辑 31×8RAM 图 4.1 DS1302 引脚及内部结构 表 4.1 DS1302 引脚功能 引脚号 引脚名称 功 能 1 2,3 4 5 6 7 8 7 1 Vcc2 X1,X2 GND RST I/O SCLK Vcc1 主电源 振荡源,外界 32.768kHz 晶振 地线 复位/片选线 串行数据输入/输出端(双向) 串行数据输入端 后备电池 6 RAM CK 5 4 3 2 1 A4 A3 A2 A1 A0 0 RAM K 图 4.2 DS1302 的控制字 DS1302 共有 12 个寄存器,其中有 7 个寄存器与日历、时钟相关,存放的数据位为 BCD 码形式。 其日历、时间寄存器及其控制字见表 3.2,其中奇数为读操作,偶数为写操作。 时钟暂停:秒寄存器的位 7 定义位时钟暂停位。当它为 1 时,DS1302 停止震荡,进入低功耗的 备份方式。通常在对 DS1302 进行写操作时(如进入时钟调整程序),停止震荡。当它为 0 时,时钟 将开始启动。 AM-PM/12-24[小]时方式:[小]时寄存器的位 7 定义为 12 或 24[小]时方式选择位。它为高电 平时,选择 12[小]时方式。在此方式下,位 5 是 AM/PM 位,此位是高电平时表示 PM 低电平表示 AM。 共 15 页,第 4页
分享到:
收藏