![点击分享此内容可以赚币 分享](/master/images/share_but.png)
简易万年历的设计-学位论文.doc
《简易万年历的设计-学位论文.doc》由会员分享,可在线阅读,更多相关《简易万年历的设计-学位论文.doc(44页珍藏版)》请在咨信网上搜索。
1、漳州师范学院 简易万年历的设计 系 别: 物理与电子信息工程系 专 业: 电子信息科学与技术 2013年 6月 目录1. 设计任务51.1 设计任务51.2 设计要求62.设计方案62.1设计思路62.2方案比较与论证62.2.1 数码管显示模块62.2.2 温度传感器的选择62.2.3 时钟计时的选择72.3系统结构框图73.各功能模块设计83.1显示模块原理83.2 参数计算93.3 独立式按键模块93.4 时钟模块103.4.1 DS1302特性介绍103.4.2 DS1302引脚介绍103.4.3 DS1302有关日历、时间的寄存器103.4.4 DS1302控制字介绍113.4.5
2、DS1302单字节读写时序介绍113.4.6 DS1302操作指令介绍123.4.7 DS1302与单片机接口电路133.5 温测模块133.5.1 单总线介绍133.5.2 DS18B20特性介绍133.5.3 DS18B20管脚介绍143.5.4 DS18B20内部结构143.5.5 DS18B20温度转化示例143.5.6 DS18B20时序介绍153.5.7 DS18B20操作步骤163.5.8 DS18B20与单片机的接口电路173.6 总系统原理图174.软件设计184.1 I/O口分配184.2 按键扫描185.流程图195.1主程序流程图195.2 work0模块流程图195.
3、3 work1模块流程图205.4 work2模块流程图205.5 获取温度子程序流程图215.6 按键扫描225.7 中断服务子程序225.8 显示方式1225.9 初始化DS1302子程序流图235.10 温显模块子程序流图245.11 读取时间模块子程序流图246.程序代码256.1 主程序部分256.2 包含文件部分336.3 包含文件部分357.调试要点437.1 硬件调试437.2 软件调试437.3 结果分析及设计工作总结438.参考文献及附件438.1 参考文献438.2 元器件清单448.3 PCB版图448.4 实物图 正面458.5 实物图 背面45摘要:单片机就是微控制
4、器,是面向应用对象设计、突出控制功能的芯片。单片机接上晶振、复位电路和相应的接口电路,装载软件后就可以构成单片机应用系统。将它嵌入到形形色色的应用系统中,就构成了众多产品、设备的智能化核心。本设计就是应用单片机强大的控制功能制作而成的电子万年历,该电子万年历包括两大功能:可显示年、月、日、时、分;实时监测环境温度(具有超低温的报警功能,且报警的上下限值可由用户自定义设置),。关键字:单片机,DS18B20,DS1302,共阳数码管. 1. 设计任务1.1 设计任务 利用单片机、时钟芯片DS1302、温度传感器DS18B20、数码管等 实现日期、时间、温度的显示,即一个简单的万年历。1.2 设计
5、要求1. 通过DS1302计时,时间可调并在数码管上显示出来。2. 通过DS18B20检测当前环境温度,精读为0.5。3. 具有超温报警功能2.设计方案2.1设计思路本设计由DS18B20作为温度检测的核心,检测一次当前温度所耗费的时间大约在100ms750ms之间,随着检测精度的增加,耗费时间在方位内逐渐增加,所以利用软件延时的方法来实现温检,并且具有超温和低温的报警功能,其温度报警的上下限值可根据用户喜好进行更改;时钟部分使用专用计时芯片DS1302,可精确显示年、月、日、时、分、秒;2.2方案比较与论证2.2.1 数码管显示模块方案一:单片机输出数据经译码芯片CD4511进行译码后直接驱
6、动数码管,数码管公共端接9012三极管扩流,并通过单片机I/O口控制三极管的选通,实现动态显示。方案二:有单片机的I/O口直接驱动数码管的段码,数码管的公共端接9012三极管,通过灌电流的方式点亮数码管,也需通过单片机I/O口控制三极管的选通,实现动态显示。由于所需I/O口由AT98S52可直接提供,无须因为I/O口不够而用CD4511来节省I/O口,方案二又较方案一更容易实惠,所以,我选择方案二。2.2.2 温度传感器的选择 方案一:采用热敏电阻作为检测温度的核心元件,由于热敏电阻会随温度变化而变化,进而其阻值发生变化,再经555振荡器变化的脉冲数传递给单片机进行处理。 方案二:采用数字式的
7、集成温度传感器DS18B20作为温度检测的核心元件,由其检测并直接输出数字温度信号给单片机进行处理。 对于方案一,采用热敏电阻作为温度检测元件,有价格便宜,元件易购的优点,但热敏电阻对温度的细微变化不太敏感,并且由于热敏电阻的R-T关系的非线性,其自身电阻对温度的变化存在较大误差,而且在人体所处环境温度变化过程中难以检测到小的温度变化。但作为本次设计虽已能满足基本要求,但为了更深入的学习,所以放弃该方案。 对于方案二,由于数字式集成温度传感器DS18B20的高度集成化,大大降低了外接放大转化等电路的误差因数,温度误差变得很小,并且由于其检测温度的原理与热敏电阻检测的原理有着本质的不同,使得其温
8、度分辨力极高。温度值在器件内部转化成数字量直接输出,简化了系统程序设计,又由于该温度传感器采用先进的单总线技术,与单片机的接口变得非常简洁,抗干扰能力强,虽然芯片原理复杂,但是可以对时序的理解更深入一步,所以选择此方案。2.2.3 时钟计时的选择 方案一:AT89S52单片机内部带有定时/计数功能,此定时功能是通过对外部晶振的脉冲进行计数,从而达到计时功能,只要使用11.0592的晶振就能实现零误差的计时,因此可以利用此功能实现计时,但因为只有单一的计时功能要实现“万年历”的功能需要较复杂的程序,而且如果单片机掉电无法继续进行计时,所以使用不便。方案二:DS1302是美国DALLAS公司推出的
9、一种高性能、低功耗的实时时钟芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据。实时时钟可提供秒、分、时、日、星期、月和年,一个月小与31天时可以自动调整,且具有闰年补偿功能。工作电压宽达2.55.5V。采用双电源供电(主电源和备用电源),可设置备用电源充电方式,提供了对后备电源进行涓细电流充电的能力。利用单片机强大的控制功能就可实现实时计时的功能,而且消耗的系统资源少,程序简单。综合上述两种方案,宜采用方案二实现实时计时功能。2.3系统结构框图 AT89S52单片机在模式键、设置键的控制下,由P0口输出数据,通 过P2.0
10、 、P2.1、P2.2、P2.3进行选通,用数码管显示信息。 系统框图:AT89S52键盘18B20DS1302晶振数码管蜂鸣器LED电源 图2-3系统总框图3.各功能模块设计 3.1显示模块原理 由单片机(AT89S52)的引脚P0口输出温度、时间等数据信息,通过片选信号P2.0 、P2.1、P2.2、P2.3就可在相应的数码管进行显示。当位选信号P2.0为低电平时,P1口送出数据也为低电平就点亮数码管,电流灌进单片机。多位LED显示,为了简化电路,降低成本,将所有位的段选线并联在一起,由一个8位I/O口控制。而共阳极公共端分别接一个9012,由相应的I/O口线控制9012,实现各位数码管的
11、分时选通。段选码,位选码每送入一次后延时5MS,因人的视觉暂留时间为0.1S(100MS),所以每位显示的时间不能超过20MS,并保持延时一段时间,以造成视觉暂留效果,给人看上去每个数码管总在亮。电路如(图3-1)所示。 由于采用的是共阳极数码管,所以要让段码点亮需把I/O口置0,例如:段码a到h对应的I/O口是P0.0到P0.7,则要让数码管显示0到9对应的16进值如图3-2所示图3-1显示电路hgfedcba16进制0110000000XC0H1111110010XF9H2101001000XA4H3101100000XB0H4100110010X99H5100100100X92H6100
12、000100X82H7111110000XF8H8100000000X80H9100100000X90Hc110001100XC6H-101111110XBFHL110001110XC7HH100010010X89H图3-2码表3.2 参数计算 由于I/O口高电平约等于5V,使用灌电流的方式驱动数码管,故选用PNP型三极管9012;数码管能正常工作的段电流为3mA-10 mA,压降为1.7V,三极管发射极和集电极的压降为0.3V,因此限流电阻的压 降为3.0V, 所以选用限流电阻的阻值R=470欧.3.3 独立式按键模块 独立式按键是直接用I/O口线构成的单个按键电路,其特点是每个按键单独占用
13、一根I/O口线,每个按键的工作不会影响其它I/O口线的状态。独立式按键的典型应用如(图3-3)所示。 独立式按键电路配置灵活,软件结构简单,但每个按键必须占用一根I/O口线,因此,在按键较多时,I/O口线浪费较大,但本设计只用到四个按键,顾采用独立式按键电路。图3-3独立式按键电路3.4 时钟模块DS1302通过三根口线实现与单片机的通信,因DS1302功耗很小,即使电源掉电后通过3V的纽扣电池仍能维持DS1302精确走时。3.4.1 DS1302特性介绍 DS1302是美国DALLAS公司推出的一种高性能、低功耗的实时时钟芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行通信,并可
14、采用突发方式一次传送多个字节的时钟信号和RAM数据。实时时钟可提供秒、分、时、日、星期、月和年,一个月小与31天时可以自动调整,且具有闰年补偿功能。工作电压宽达2.55.5V。采用双电源供电(主电源和备用电源),可设置备用电源充电方式,提供了对后备电源进行涓细电流充电的能力。3.4.2 DS1302引脚介绍 各引脚的功能为: 1、Vcc2:5V电源。当Vcc2Vcc1+0.2V时,由Vcc2向DS1302供电, 当Vcc2 Vcc1时,由Vcc1向DS1302供电。 2和3、X1、X2 是外接晶振脚 (32.768KHZ的晶振) 4、地(GND) 5、CE/RST:复位脚 6、I/O:数据输入
15、输出口; 7、SCLK:串行时钟,输入; 8、Vcc1:备用电池端;3.4.3 DS1302有关日历、时间的寄存器 寄存器的说明如下:1、秒寄存器(81h、80h)的位7定义为时钟暂停标志(CH)。当初始上电时该位置为1,时钟振荡器停止,DS1302处于低功耗状态;只有将秒寄存器的该位置改写为0时,时钟才能开始运行。2、小时寄存器(85h、84h)的位7用于定义DS1302是运行于12小时模式还是24小时模式。当为高时,选择12小时模式。在12小时模式时,位5是 ,当为1时,表示PM。在24小时模式时,位5是第二个10小时位3、控制寄存器(8Fh、8Eh)的位7是写保护位(WP),其它7位均置
16、为0。在对任何的时钟和RAM的写操作之前,WP位必须为0。当WP位为1时,写保护位防止对任一寄存器的写操作。也就是说在电路上电的初始态WP是1,这时是不能改写上面任何一个时间寄存器的,只有首先将WP改写为0,才能进行其它寄存器的写操作。 3.4.4 DS1302控制字介绍位7:必须是逻辑1,如果它为0,则不能把数据写入到DS1302中。位6:如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1(A4A0):指示操作单元的地址;位0(最低有效位):为0,表示要进行写操作,为1表示进行读操作。读数据: 读数据时在紧跟8位的控制字指令后的下一个SCLK脉冲的下降沿,读出DS1302的
17、数据,读出的数据是从最低位到最高位。写数据: 控制字总是从最低位开始输出。在控制字指令输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入也是从最低位(0位)开始。位0(最低有效位):为1表示进行读操作。 如为0,表示要进行写操作,控制字后SCLK 下降沿 读数据SCLK上升沿写数据。3.4.5 DS1302单字节读写时序介绍 DS1302的数据读写是通过I/O串行进行的。当进行一次读写操作时最少得读写两个字节,第一个字节是控制字节,就是一个命令,告诉DS1302是读还是写操作,是对RAM还是对CLOK寄存器操作,以及操作的址。第二个字节就是要读或写的数据了。 单字节写:在进
18、行操作之前先得将CE(也可说是RST)置高电平,然后单片机将控制字的位0放到I/O上,当I/O的数据稳定后,将SCLK置高电平,DS1302检测到SCLK的上升沿后就将I/O上的数据读取,然后单片机将SCLK置为低电平,再将控制字的位1放到I/O上,如此反复,将一个字节控制字的8个位传给DS1302。接下来就是传一个字节的数据给DS1302,当传完数据后,单片机将CE置为低电平,操作结束。 单字节读操作的一开始写控制字的过程和上面的单字节写操作是一样,但是单字节读操作在写控制字的最后一个位,SCLK还在高电平时,DS1302就将数据放到I/O上,单片机将SCLK置为低电平后数据锁存, 单机机就
19、可以读取I/O上的数据。如此反复,将一个字节的数据读入单片机。 读与写操作的不同就在于,写操作是在SCLK低电平时单片机将数据放到IO上,当SCLK上升沿时,DS1302读取。而读操作是在SCLK高电平时DS1302放数据到IO上,将SCLK置为低电平后,单片机就可从IO上读取数据。3.4.6 DS1302操作指令介绍操作说明:1 首先要通过8EH将写保护去掉,将日期,时间的初值写时各个寄器。 2 然后就可以对80H、82H、84H、86H、88H、8AH、8CH进行初值的写入。同时也通过秒寄存器将位7的CH值改成0,这样DS1302就开始走时了。3 将写保护寄存器再写为80H,防止误改写寄存
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 简易 万年历 设计 学位 论文
![提示](https://www.zixin.com.cn/images/bang_tan.gif)
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【胜****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【胜****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。