我的单片机的电子万年历设计_第1页
我的单片机的电子万年历设计_第2页
我的单片机的电子万年历设计_第3页
我的单片机的电子万年历设计_第4页
我的单片机的电子万年历设计_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

1、 毕业设计报告电子万年历的设计 系 部: 电 气 工 程 系 专 业: 电气工程及其自动化 班 级: 电 气 自 动 化093 姓 名: 马 皖 宁 学 号: 0 9 0 2 0 5 3 3 10 指导老师: 严 惠2012.3目录第一章 引言4 背景5第二章 设计方案 6 2.1方案设计6 前言6 (1)控制部分的方案6 (2)显示部分的方案6 (3)系统基本方案7 2.2单片机原理8 2.3 LED显示数码管8第三章 计算部分9 3.1 主要单元电路的器件9 (1)单片机主控制模块10 (2)时钟电路模块10 3.2 其他模块器件11 74LS16412 CON812 (3)其他元器件12

2、第四章 结构设计部分13 4.1 显示部分设计13 (1)万年历优化算法14 4.2 实现时钟,日历显示设计14 (1)DS1302的寄存器14 (2)DS1302实现显示时间的软硬件15 (3)DS1302与CUP的连接15 4.3 整体设计16 4.4 系统软件设计17 (1)程序流程框图18第五章 实验测试总结21第六章 结论22第七章 谢词24参考文献24第一章 引 言随着微电子技术的高速发展,单片机在国民经济的个人领域得到了广泛的运用。单片机以体积小、功能全、性价比高等诸多优点,在工业控制、家用电器、通信设备、信息处理、尖端武器等各种测控领域的应用中独占鳌头,单片机开发技术已成为电子

3、信息、电气、通信、自动化、机电一体化等专业技术人员必须掌握的技术。而电子万年历作为电子类小设计不仅是市场上的宠儿,也是是单片机实验中一个很常用的题目。因为它的有很好的开放性和可发挥性,因此对作者的要求比较高,不仅考察了对单片机的掌握能力更加强调了对单片机扩展的应用。而且在操作的设计上要力求简洁,功能上尽量齐全,显示界面也要出色。数字显示的日历钟已经越来越流行,特别是适合在家庭居室、办公室、大厅、会议室、车站和广场等使用,壁挂式LED数码管显示的日历钟逐渐受到人们的欢迎。LED数字显示的日历钟显示清晰直观、走时准确、可以进行夜视,并且还可以扩展出多种功能。 所以,电子万年历无论作为比赛题目还是练

4、习题目都是很有价值。背 景我觉得无论什么样的小设计都需要有一些背景,更是人类的需要才能创造,下面的一段文字是我自己摘取的背景。单片机自1976年由Intel公司推出MCS-48开始,迄今已有二十多年了。由于单片机集成度高、功能强、可靠性高、体积小、功耗地、使用方便、价格低廉等一系列优点,目前已经渗入到人们工作和生活的方方面面,几乎“无处不在,无所不为”。单片机的应用领域已从面向工业控制、通讯、交通、智能仪表等迅速发展到家用消费产品、办公自动化、汽车电子、PC机外围以及网络通讯等广大领域。单片机有两种基本结构形式:一种是在通用微型计算机中广泛采用的,将程序存储器和数据存储器合用一个存储器空间的结

5、构,称为普林斯顿结构。另一种是将程序存储器和数据存储器截然分开,分别寻址的结构,一般需要较大的程序存储器,目前的单片机以采用程序存储器和数据存储器截然分开的结构为多。本次讨论的单片机多功能定时器的核心是目前应用极为广泛的51系列单片机,配置了外围设备,构成了一个可编程的计时定时系统,具有体积小,可靠性高,功能强等特点。不仅能满足所需要求而且还有很多功能可供开发,有着广泛的应用领域。20世纪80年代中期以后,Intel公司以专利转让的形式把8051内核技术转让给许多半导体芯片生产厂家,如ATMEL、PHILIPS、ANALOG、DEVICES、DALLAS等。这些厂家生产的芯片是MCS-51系列

6、的兼容产品,准确地说是与MCS-51指令系统兼容的单片机。这些兼容机与8051的系统结构(主要是指令系统)相同,采用CMOS工艺,因而,常用80C51系列来称呼所有具有8051指令系统的单片机,它们对8051单片机一般都作了一些扩充,更有特点。其功能和市场竞争力更强,不该把它们直接称呼为MCS-51系列单片机,因为MCS只是Intel公司专用的单片机系列型号。MCS-51系列及80C51单片机有多种品种。它们的引脚及指令系统相互兼容,主要在内部结构上有些区别。目前使用的MCS-51系列单片机及其兼容产品通常分成以下几类:基本型、增强型、低功耗型、专用型、超8位型、片内闪烁存储器型。第二章 设计

7、方案前 言在设计之前我有看过一些资料和文献,毕竟条条大路通罗马,我想一样东西的设计不可能就一条路子,有很多方法可以选择,材料可以选择,所以我在选择上开始有点迷茫,所以看了下材料的对比和说明,以下是我在网上查阅资料后在选择上的一个论述,经过比较选择出比较适合的。更加节约、性能更好、成本更低。同时在如今的时代设计不仅要好,更要环保、节约,所以在考虑到这些因素的情况下我做了个小比较这样看的比较清楚。21方案设计(1).控制部分的方案 在经过网上查阅我用凌阳16位单片机设计。凌阳16位单片机有丰富的中断源和时基,方便本实验的设计。它的准确度相当高,并且C语言和汇编兼容的编程环境也很方便来实现一些递归调

8、用。I/O口功能也比较强大,方便使用。用凌阳16位单片机做控制器最有特色的就是它的可编程音频处理,可完成语音的录制播放和识别。这些都方便对设计进行扩展,使设计更加完善。成本也相对低一些。(2).显示部分的方案在经过网上查阅我用液晶显示,采用8段数码管既经济实惠,在效果上也可以加入语音报时功能,操作比较液晶显示来说虽然略显繁琐,但总体也还可以做到比较人性化。所以,使用LED数码管显示。(3).系统基本方案1.单片机芯片的方案:在经过网上查阅我用AT89S52,片内ROM全都采用Flash ROM;能以3V的超低压工作;同时也与MCS-51系列单片机完全该芯片内部存储器为8KB ROM 存储空间,

9、同样具有89C51的功能,且具有在线编程可擦除技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成损坏。2. 显示模块方案在经过网上查阅我采用LED数码管动态扫描,LED数码管价格适中,对于显示数字最合适,而且采用动态扫描法与单片机连接时,占用的单片机口线少。3时钟芯片的方案在经过网上查阅我采用DS1302时钟芯片实现时钟,DS1302芯片是一种高性能的时钟芯片,可自动对秒、分、时、日、周、月、年以及闰年补偿的年进行计数,而且精度高,位的RAM做为数据暂存区,工作电压2.5V5.5V范围内,2.5V时耗电小于300nA.2.2

10、 单片机原理单片机就是简化的微型计算机。CPU中本身自带存储器ROM和RAM。CPU片内也有总线。IC(集成电路)技术是将电路通过特殊工艺做在一块硅基片上封装成芯片,比如CPU,片外存储器等等。 将单片机CPU,晶振,存储器,地址锁存器,逻辑门,七段译码器(显示器),按钮,扩展芯片,接口等通过PCB工艺做在环氧树脂板上。这样才是一个完整的单片的微型计算机。 2.3 LED显示数码管常见的LED显示具有清晰明亮的特点。是显示接口也是绝大多数单片机应用系统必备的部件之一。发光二极管组成的显示器是单片机应用产品中最常用的廉价输出设备。它由若干个发光二极管按一定的规律排列而成。当某一个发光二极管导通时

11、,相应的一个点或一笔画被点亮,控制不同组合的二极管导通,就能显出各种字符。1. 显示器的结构常用的7段显示器的结构如图所示,发光二极管的阳极连在一起的称为共阳极显示器,阴极连在一起的成为共阴显示器。1位显示器由8个发光二极管组成,其中7个发光二极管ag控制7个笔画的亮或暗,另一个控制一个小数点的亮和暗,这种笔画的七段显示器能显示的字符较少,字符的形状有些失真,但是控简单,使用方便。第三章计算部分3.1 主要单元电路的器件(1)单片机主控制模块关于单片机AT89S52的一些简单介绍:AT89S52单片机为40引脚双列直插芯片,有四个I/O口P0,P1,P2,P3, MCS-51单片机共有4个8位

12、的I/O口(P0、P1、P2、P3),每一条I/O线都能独立地作输出或输入。如图所示。1内部结构按功能分为8部分:CUP,程序存储器,数据存储器,时钟电路,串行口,并行I/O口,中断系统,定时/计数器。2.引脚定义及功能1).电源及时钟引脚Vcc:接+5V 电源Vss:接地XTAL1和XTAL2:时钟引脚,外接晶体引线端。当使用芯片内部时钟时,此两引脚端用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。2).控制引脚RST/Vpq:RST是复位信号输入端,Vpd是备用电源输入端。当RST输入端保持2个机器周期以上高电平时,单片机完成复位初始化操作。当主电源Vcc发生故障而突

13、然下降到一定低电压或断电时,第2功能Vpd将为片内RAM提供电源以保护片内RAM中的信息不丢失。ALE/PROG:地址锁存允许信号输入端。在存取外存储器时,用于锁存低8位地址信号。当单片机正常工作后,ALE端就周期性地以时钟振荡频率的1/6固定频率向外输出正脉冲信号。此引脚的第2功能PROG是对片内带有4K字节EPROM的8751固外程序时,作为编程脉冲输入端。PSEN:程序存储器允许输出端。当片外程序存储器的读选通信号,低电平有效。CPU从外部程序存储器取指令时,PSEN信号会自动产生负脉冲,作为外部程序存储器的选通信号。EA/Vpp:程序存储器地址允许输入端。当EA为高电平时,CPU执行片

14、内程序存储器指令,但当PC中的值超过0FFFH时,将自动转向执行片外程序存储器指令;当EA为低电平时,CPU只执行片外程序存储器指令。3).I/O口引脚P0.0P0.7:P0口8位双向I/O口;P1.0P1.7:P1口8位准双向I/O口;P2.0P2.7:P2口8位准双向I/O口;P3.0P3.7:P3口8位准双向I/O口。3片外总线结构分为三部分:数据总线 Data Bus(DB),地址总线 Address Bus (AB),控制总线 Control Bus(CB).(2)时钟电路模块关于DS1302的一些简单介绍和分析:1. DS1302的结构及工作原理 DS1302 是美国DALLAS公

15、司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31×8的用于临时性存放数据的RAM寄存器。DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后背电源双电源引脚,同时提供了对后背电源进行涓细电流充电的能力。2. 引脚功能及结构 图1所示出DS1302 的引脚排列,其中Vcc1 为后备电源,VCC2 为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。D

16、S1302 由Vcc1 或Vcc2 两者中的较大者供电。当Vcc2 大于Vcc10.2V 时,Vcc2 给DS1302供电。当Vcc2 小于Vcc1 时,DS1302 由Vcc1 供电。X1 和X2 是振荡源,外接32.768kHz 晶振。RST 是复位/片选线,通过把RST 输入驱动置高电平来启动所有的数据传送。RST 输入有两种功能:首先,RST 接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST 提供终止单字节或多字节数据的传送手段。当RST 为高电平时,所有的数据传送被初始化,允许对DS1302 进行操作。如果在传送过程中RST 置为低电平,则会终止此次数据传送,I/O 引脚

17、变为高阻态。上电运行时,在Vcc2.5V 之前,RST 必须保持低电平。只有在SCLK 为低电平时,才能将RST 置为高电平。I/O 为串行数据输入输出端(双向),后面有详细说明。SCLK 始终是输入端。3. 数据输入输出(I/O)在控制指令字输入后的下一个SCLK 时钟的上升沿时,数据被写入DS1302,数据输入从低位即位0 开始。同样,在紧跟8 位的控制指令字后的下一个SCLK 脉冲的下降沿读出DS1302 的数据,读出数据时从低位0 位到高位7。3.2其他模块器件(1) 74LS164它是个串入并出的8位移位寄存器,它常用于单片机系统中,下面解释一下这个元件的基本知识:74LS164引脚

18、图74LS164_内部功能图74LS164_逻辑符合表串行输入带锁存 时钟输入,串行输入带缓冲 异步清除 最高时钟频率可高达36Mhz 功耗:10mW/bit 74系列工作温度: 0°C to 70°C Vcc最高电压:7V 输入最高电压:7V 高电平:0.4mA 低电平:8mA(2)CON8它是一个排插符号 ,也就是一个插座,可以通过一个插头将89C51的P0口引到外面的有关电路作扩展用,也可以作为备用。(3)其他元器件电阻,电容,发光二极管,三极管若干。第四章 结构设计部分4.1 显示部分设计基本显示原理:时钟开始显示为0时0分0秒,也就是数码管显示000000,然后每

19、秒秒位加1 ,到9后,10秒位加1,秒位回0。10秒位到5后,即59秒 ,分钟加1,10秒位回0。依次类推,时钟最大的显示值为23小时59分59秒。这里只要确定了1秒的定时时间, 其他位均以此为基准往上累加。 同时时钟达到最大值的时候天数也增加一位,知道显示了7后再变为1,同时阴历和阳历的天数也加1,根据不同的月份显示的天数阳历有28,29,30,31天,阴历就要经过计算得到,到了12个月后,年数自动增加1,以此类推,显示万年历的现实。另外,连接方式总电路图上可以看到,下图为显示部分的电路图。显示部分电路图(1)万年历优化算法阳历算法阳历的算法比较简单,每个月的总的天数相对来说是固定的。只有2

20、月份,在闰年是29天,在非闰年是28天。每个月的日历排法主要是确定每个月第一天是星期几。我们知道1901年1月1日是星期二,星期的变化是7天一个周期,比如说要计算1901年2月1日是星期几,可以这样推算:从1901年1月1日到1901年2月1日总共经过了31天(从表1可 看出),31对7取模是3:i901年1月1日是星期二,加三后,是星期五。因此1901年2月1日是星期五。同理,可以推算出从19012100年任何一天是星期几。表1月份123456789101112闰年312931303130313130313031非闰年312831303130313130313031由于阴历算法比较复杂,在此

21、我就没有过多余去查阅和设计了,而且阴历使用的并不是太多,所以在这只使用阳历的算法。这也是设计的缺陷。4.2 实现时钟,日历显示设计DS1302可以对年、月、日、周日、时、分、秒进行计时,且具有闰年补偿等多种功能.(1) DS1302 的寄存器DS1302 有12 个寄存器,其中有7 个寄存器与日历、时钟相关,存放的数据位为BCD 码形式,其日历、时间寄存器及其控制字见表1。此外,DS1302 还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM 相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器内容。 DS1302 与RAM 相关的寄存器分为两类:一类是单个R

22、AM 单元,共31 个,每个单元组态为一个8 位的字节,其命令控制字为C0HFDH,其中奇数为读操作,偶数为写操作;另一类为突发方式下的RAM 寄存器,此方式下可一次性读写所有的RAM 的31 个字节,命令控制字为FEH(写)、FFH(读)。(2) DS1302 实时显示时间的软硬件DS1302 与CPU 的连接需要三条线,即SCLK(7)、I/O(6)、RST(5)。图3 示出DS1302 与89C2051 的连接图,其中,时钟的显示用LCD。(3) DS1302 与CPU 的连接实际上,在调试程序时可以不加电容器,只是选择晶振时,不同的晶振,误差也较大。另外,还可以在上面的电路中加入DS1

23、8B20,同时显示实时温度。只要占用CPU 一个口线即可。 LCD 还可以换成LED。示模块LCM101, WDT时钟发生器及两种频率的蜂鸣器驱动电路,并有内置显示RAM,可显示任意字段笔划,具有34 线串行接口,可与任何单片机、IC 接口。功耗低,显示状态时电流为2A(典型值),省电模式时小于1A,工作电压为2.4V3.3V,显示清晰。4.3整体设计实现过程:由串行的时钟芯片DS1302,送给单片机,单片机处理后输出。而74LS164将串行信号变成并行信号,每个164对应LED七段码,三个164对应三行LED数码管。单片机P2.6-P2.0连接七个三极管作列驱动,共七列数码管,(实际有两行是

24、六列)行列扫描共同形成万年历。其整个过程,如原理图所示。4.4系统软件设计(1)程序流程框图 图-C 时间调整程序流程图第五章 实验测试总结经过实验测试,从硬件、软件方面的实验结果来看,确实有出现过不少问题,从对硬件的焊接,及制作上来说,这一点就是比较大的挑战,材料并不多所以对于每一步的操作要求都要能认真细致的去完成。在接线上也要防止短路等问题。而对于LED数码管的接入还有片DS1302时钟芯等问题,都有遇到一些困难,不过在经常资料察看和多次尝试情况下,可以比较好的解决这一问题。在软件上面,我并不是太精通,所以在编写起来比较吃力和困难,同时有很多编写的错误导致无法运行,或者顺序上处问题,更有不

25、懂不会的程序。不过借助网络还是能比较好的进行修改。无论如何我觉得测试是必须的这不仅可以找出在设计上的问题和缺陷,也可以让自己在重新复习一下自己的设计东西和用到的知识点,同时提高了设计能力与对电路的分析能力,同时在软件的编程方面得到更高的提高,对编程能力得到加强。也是对所学的知识得到很大的提高与巩固。第六章 结论经过将近一个多月的不断努力,毕业设计总算能有个圆满的完成了。这一个多月来可以说是困难多麻烦多事情多,真正体会到设计者的痛苦与困难所在了。真的是眼高手低呀!但是从中我觉得我学到了很多很多的东西,不仅巩固了以前所学的理论知识,而且通过自主学习学到了许多课本上甚至课堂上没有讲过的东西。我觉得自

26、己付出了多少努力就收获了多少知识。通过这次课程设计,我更加深刻体会到理论与实践相结合的重要性,同事也需要更多的决心和毅力才行,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从实践中得出结论。从而提高自己的动手能力和独立解决和思考问题的能力。让自己对知识的认识层次更高一层。我觉得这次的毕业设计是培养我们综合运用所学知识,发现,提出,分析和解决实际问题,锻炼了我们的实践能力,是对我们实际工作能力的具体训练和考察过程。在如今的社会随着科学技术发展的日新月异,单片机已经发展成为当今计算机应用中空前活跃的领域,在生活中可以说是无处不在。因此作为21世纪的大学生来说掌握单片机的开发技术是

27、十分重要的。回顾此次毕业设计,至今还有很多的感触和难忘的画面。由于基础知识没打扎实,在设计过程中遇到了很多麻烦,可以说是困难重重,一路走来不知道碰了多少块大石头。毕竟第一次接触一个大的毕业设计,对于没有经验的我来说根本无从下手。刚开始耗费了好多时间,非常的迷茫不知道要怎么写开题报告,不知道要怎么设计硬件电路,更不懂得如何软件设计。同时在此次设计过程中发现了很多自己的不足之处,能力的缺陷,为此我烦恼了不少时间,也抱怨过。同时对于以前所学的知识理解得不过深刻,掌握得不够牢固,比如说对单片机汇编语言掌握的不够好。另外,这次的设计还让我更进一步的认识了关于AT89S52等芯片的引脚功能以及使用方法,使我学会了应用不同的芯片来配合完成整个设计的操作。在做硬件电路的这段时间里,从思考设计到对电路的调试经过了许多困难。同样在对软件进行设计时,也可为一路坎坷。但是通过软硬件的不断撞墙,不断思考解决问题的过程中,我学会了很多东西,同时对单片机也有了更深的认识。在做毕业设计的时候,很需要耐心和对事物的细心,很多时候一个简单的问题一个简单的疏忽就会导致整个电路的崩溃,只有不断检查不断调试,才能真正完成一个设计的制作。只有不断的发现问题解决问题,才能从问题中改变自己,提升自己对单片机的能力。在电路焊接时虽然没什么大问题,但从中也知道了焊接在整个作品中的重要性,电路工程量大,不能心急

温馨提示

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

评论

0/150

提交评论