基于51单片机的精确时钟设计.doc
《基于51单片机的精确时钟设计.doc》由会员分享,可在线阅读,更多相关《基于51单片机的精确时钟设计.doc(25页珍藏版)》请在沃文网上搜索。
1、单片机课程设计 目录目录第一章 绪论31.1 概述31.2 设计目的31.3 设计任务和内容3第二章 总体设计及核心器件简介42.1 总体设计42.2 MCS-51之80C51 4第三章 单元电路模块设计73.1 按键电路 73.2 时钟电路83.3 LED数码管显示电路93.4 复位电路 113.5 总体功能介绍13第四章 软件编程设计14第五章 设计体会及总结24参考文献 2525单片机课程设计 第一章 绪论1.1 概述单片微型计算机简称单片机,又称微控制器,是微型计算机的一个重要分支。单片机是20世纪七十年代中期发展起来的一种大规模集成电路芯片,是集CPU、RAM、ROM、I/O接口和终
2、端系统与同一硅片的器件。20世纪八十年代以来单片机发展迅速各类新产品不断涌现出现许多新产品,出现了许多高性能新型机种现已成为工业控制和各控制领域的支柱产业之一。由于单片机功能功能强、体积小、可靠性好、价格便宜等独特优点因而受到人们的高度重视并取到了一系列的科研成果,成为传统工业技术改造和新产品更新换代的理想机种,并具有广阔的发展前景。本设计运用所学的单片机知识,设计了精确时钟,具有低功耗,保密性好,走时精确等优良特点,具有广阔的市场前景1.2 设计目的加强对单片机和C51语言的认识,充分掌握和理解设计各部分的工作原理、设计过程、 选择芯片器件、模块化编程等多项知识。 (1)用单片机模拟实现具体
3、应用使个人设计系统能够真正使用。(2)把理论知识与实践知识相结合,充分发挥个人能力,并在实践中得到锻炼。(3)提高利用已学的知识分析和解决问题的能力。(4)提高动手实践能力。1.3 设计任务及内容1.3.1设计任务分组按照选定题目的设计任务,设计各种单片机应用系统,设计工作量至少要包含:1. 用MCS-51单片机,12MHz时钟,常规的上电和手动复位电路;2. 3个以上的按键;3. LED或/和数码管或/和LCD显示及其接口;4. 至少2路输入信号,可以是模拟量或数字量。1.3.2 设计内容(1)填写设计任务书(2)进行总体设计,画出原理图(3)用proteus软件画出PCB板(4)用Keil
4、软件编写程序(5)在proteus里模拟并调试程序达到期望功能第二章 总体设计及核心器件简介2.1 总体设计整个设计以MCS-51单片机为核心,由LED数码管显示,控制开关,复位电路等组成。 模块电路如图 LED数码管动态扫描显示模块80C51主控制模 块按键模块 2.2 80C51简介2.2.1 80C51单片机简介80C51是MCS-51系列单片机中的一个子系列,是一族高性能兼容型单片机。其内部资源分配和性能如下;8位CPU;寻址能力2X64K;4KB的内部ROM和128B内部RAM;四个8位I/O接口电路;一个串行全双工异步接口;五个中断源和两个中断优先权;采用CMOS工艺电流小,低功耗
5、。2.2.2 80C51各管脚主要功能简介下图为80C51PCB图: 图2.1 (1)Vss(20脚):接地(2)VCC(40脚): 主电源+5V(3)XTAL1(19脚):接外部晶体的一端。在片内它是振荡电路反相放大器的输入端。在采用外部时钟时,对于HMOS单片机,该端引脚必须接地;对于CHMOS单片机,此引脚作为驱动端。XTAL2(18脚):接外部晶体的另一端。在片内它是一个振荡电路反相放大器的输出端,振荡电路的频率是晶体振荡频率。若需采用外部时钟电路,对于HMOS单片机,该引脚输入外部时钟脉冲;对于CHMOS单片机,此引脚应悬浮。(4) RST(9脚): 单片机刚接上电源时,其内部各寄存
6、器处于随机状态,在该脚输入24个时钟周期宽度以上的高电平将使单片机复位(RESET)(5)PSEN(29脚): 在访问片外程序存储器时,此端输出负脉冲作为存储器读选通信号。CPU在向片外存储器取指令期间,PSEN信号在12个时钟周期中两次生效。不过,在访问片外数据存储器时,这两次有效PSEN信号不出现。PSEN端同样可驱动8个LSTTL负载。我们根据PSEN、ALE和XTAL2输出端是否有信号输出,可以判别80C51是否在工作。(6)ALE/PROG(30脚):在访问片外程序存储器时,此端输出负脉冲作为存储器读选通信号。CPU在向片外存储器取指令期间,PSEN信号在12个时钟周期中两次生效。不
7、过,在访问片外数据存储器时,这两次有效PSEN信号不出现。PSEN端同样可驱动8个LSTTL负载。我们根据PSEN、ALE和XTAL2输出端是否有信号输出,可以判别80C51是否在工作。(7)EA/VPP(31脚):当EA端输入高电平时,CPU从片内程序存储器地址0000单元开始执行程序。当地址超出4KB时,将自动执行片外程序存储器的程序。当EA输入低电平时,CPU仅访问片外程序存储器。在对87C51EPROM编程时,此引脚用于施加编程电压VPP。(8)输入/输出引脚:1)P0.0P0.7 (39脚32脚)2)P1.0P1.7 (01脚08脚)3)P2.0P2.7 (26脚21脚)4)P3.0
8、P3.7 (10脚17脚)单片机课程设计第三章 单元电路模块设计3.1 按键电路的选择与设计连接形式如下:图3.1按键电路本设计中有四个按键,分别实现启动、调时和复位功能。这四个键可以采用中断或是查询的方法来识别。对于开始键,主要功能在于开始走时和实时显示,对复位键采用查询的方式,而对于开始键采用外部中断,调时键采用外部中断和定时中断。按键电路与调时电路中由于均采用了外部中断,所以需要用到P3口的第二功能。P3口引脚的第二功能如下表P3口引脚第二功能表 P3口引脚特殊功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2INT0(外部中断0请求输入端)P3.3INT1(外部中断1
9、请求输入端)P3.4 T0(定时器/计数器0计数脉冲输入端)P3.5 T1(定时器/计数器1计数脉冲输入端)P3.6WR(片外数据存储器写选通信号输出端)P3.7 RD(片内数据存储器读选通信号输出端)3.2 时钟电路的选择与设计单片机的时钟信号用来提供单片机内各种微操作的时间基准,80c51片内设有一个由反向放大器所构成的振荡电路,XTAL1和 XTAL2分别为振荡电路的输入和输出端,80c51单片机的时钟信号通常用两种电路形式得到:内部振荡方式与外部振荡方式。外部方式的时钟很少用,若要用时,只要将XTAL1接地,XTAL2接外部振荡器就行。对外部振荡信号无特殊要求,只要保证脉冲宽度,一般采
10、用频率低于12MHz的方波信号。本设计采用的内部振荡方式,内部振荡方式所得的时钟信号比较稳定,实用电路中使用较多。本设计系统的时钟电路如图3.2所示。只要按照所示电路进行设计连接就能使系统可靠起振并能稳定运行。图中,电容器C1、C2起稳定振荡频率、快速起振的作用,电容值一般为533pF。但在时钟电路的实际应用中一定要注意正确选择其大小,并保证电路的对称性,尽可能匹配,选用正牌的瓷片或云母电容,本设计中采用大小为22pF的电容和12MHz的晶振。图3.2振荡电路3.3 LED数码管显示电路选用的共阴极显示数码管如下: 数码显示管分为共阳极数码管和共阴极数码管两种。共阳极数码管的8个发光二极管的阳
11、极(二极管正端)连接在一起,如图3.3(b),通常,公共阳极接高电平(一般接电源),其它管脚接段驱动电路输出端。当某段驱动电路的输出端为低电平时,则该端所连接的字段导通并点亮,根据发光字段的不同组合可显示出各种数字或字符。此时,要求段驱动电路能吸收额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。共阴极数码管的8个发光二极管的阴极(二极管负端)连接在一起,如图(c),通常,公共阴极接低电平(一般接地),其它管脚接段驱动电路输出端,当某段驱动电路的输出端为高电平时,则该端所连接的字段导通并点亮,根据发光字段的不同组合可显示出各种数字或字符。此时,要求段驱动电路能提供额定的段
12、导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。 图3.3 (a)数码管引脚图 (b)共阳极内部结构图 (c)共阴极内部结构图本设计采用共阴极数码显示管做显示电路,由于采用的是共阴的数码显示管,所以只要数码管的a、b、c、d、e、f、g、h引脚为高电平,那么其对应的二极管就会发光,使数码显示管显示09的编码见表3.1。表3.1 共阴极数码显示管字型代码字型共阴极代码字型共阴极代码03FH56DH106H67DH25BH707H34FH87FH466H96FH3.4 复位电路的选择与设计关于单片机的置位和复位,都是为了把电路初始化到一个确定的状态,一般来说,单片机复位电路作用是把
13、一个例如状态机初始化到空状态,而在单片机内部,复位的时候单片机是把一些寄存器以及存储设备装入厂商预设的一个值,复位是一个很重要的操作方式。但单片机本身是不能自动进行复位的,必须配合相应的外部电路才能实现。当80c51单片机的复位引脚RST(全称RESET)出现2个机器周期以上的高电平时,单片机就完成了复位操作。如果RST持续为高电平,单片机就处于循环复位状态,而无法执行程序。因此要求单片机复位后能脱离复位状态。而本系统选用的是12MHz的晶振,因此一个机器周期为1s,那么复位脉冲宽度最小应为2s。在实际应用系统中,考虑到电源的稳定时间,参数漂移,晶振稳定时间以及复位的可靠性等因素,必须有足够的
14、余量。根据应用的要求,复位操作通常有两种基本形式:上电复位、手动复位。上电复位要求接通电源后,自动实现复位操作。80C51单片机的上电复位POR(Power On Reset)实质上就是上电延时复位,也就是在上电延时期间把单片机锁定在复位状态上。在单片机每次初始加电时,首先投入工作的功能部件是复位电路。复位电路把单片机锁定在复位状态上并且维持一个延时(记作TRST),以便给予电源电压从上升到稳定的一个等待时间;在电源电压稳定之后,再插入一个延时,给予时钟振荡器从起振到稳定的一个等待时间;在单片机开始进入运行状态之前,还要至少推迟2个机器周期的延时。上述一系列的延时,都是利用在单片机RST引脚上
15、外接一个RC支路的充电时间而形成的。典型复位电路如图3.4(a)所示,其中的阻容值是原始手册中提供的。在经历了一系列延时之后,单片机才开始按照时钟源的工作频率,进入到正常的程序运行状态。在电源电压以及振荡器输出信号稳定之后,又等待了一段较长的延时才释放RST信号,使得CPU脱离复位锁定状态;而RST信号一旦被释放,立刻在ALE引脚上就可检测到持续的脉冲信号8。图3.4 上电复位延时电路由于标准80C51的复位逻辑相对简单,复位源只有RST一个(相对新型单片机来说,复位源比较单一),因此各种原因所导致的复位活动以及复位状态的进入,都要依靠在外接引脚RST上施加一定时间宽度的高电平信号来实现。标准
16、80C51不仅复位源比较单一,而且还没有设计内部上电复位的延时功能,因此必须借助于外接阻容支路来增加延时环节,如图3.4(a)所示。其实,外接电阻R还是可以省略的,理由是一些CMOS单片机芯片内部存在一个现成的下拉电阻Rrst。因此,在图3.4(a)基础上,上电复位延时电路还可以精简为图3.4(b)所示的简化电路(其中电容C的容量也相应减小了)。在每次单片机断电之后,须使延时电容C上的电荷立刻放掉,以便为随后可能在很短的时间内再次加电作好准备。否则,在断电后C还没有充分放电的情况下,如果很快又加电,那么RC支路就失去了它应有的延迟功能。因此,在图3.4(a)的基础上添加一个放电二极管D,上电复
17、位延时电路就变成了如图3.4(c)所示的改进电路。也就是说,只有RC支路的充电过程对电路是有用的,放电过程不仅无用,而且会带来潜在的危害。于是附加一个放电二极管D来大力缩短放电持续时间,以便消除隐患。二极管D只有在单片机断电的瞬间(即VCC趋近于0 V,可以看作VCC对地短路)正向导通,平时一直处于反偏截止状态。手动复位要求在电源接通的条件下,在单片机运行期间,如果发生死机,用按钮开关操作使单片机复位。单片机要完成复位,必须向复位端输出并持续两个机器周期以上的高电平,从而实现复位操作。本设计采用上电且开关复位电路,如图3.5所示上电后,由于电容充电,使RST持续一段高电平时间。当单片机已在运行
18、之中时,按下复位键也能使RST持续一段时间的高电平,从而实现上电且开关复位的操作。图3.5 单片机复位电路3.5总体功能介绍及电路原理图。在本设计中,首先打开电源开关后显示2013-06-19-12-00-00-00,按开始键时钟开始计时,实时显示时间,按调时键调时,精确到0.01秒,量程为一万年。系统总电路由以上设计的显示电路,时钟电路,按键电路和复位电路组成,只要将单片机与以上各部分电路合理的连接就组成了系统总电路。系统总电路图如上图所示。80c51单片机为主电路的核心部分,各个电路均和单片机相连接,由单片机统筹和协调各个电路的运行工作。80c51单片机提供了XTAL1和XTAL2两个专用
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 51 单片机 精确 时钟 设计