ImageVerifierCode 换一换
格式:DOCX , 页数:9 ,大小:45.76KB ,
资源ID:6991318      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6991318.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(单片机的实时时钟.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

单片机的实时时钟.docx

1、单片机的实时时钟微处理器原理与接口课程设计设计题目:单片机的实时时钟学 院:年 级:专 业:姓 名:学 号:指导教师: 年 月 日课程设计题目 11.1 设计目标 11.1.1 使用电路 11.1.2 总体思路图 41.1.3 三级标题 41.1.4 三级标题 41.1.5 三级标题 41.2 单元电路设计 41.2.1 时钟 41.2.2 复位电路 41.2.3 控制电路 41.2.4 显示电路 51.2.5 三级标题 51.3 软件设计 51.3.1 程序设计思路 51.3.2 流程图 51.3.3 源程序 51.3.4 三级标题 51.3.5 三级标题 51.4 元器件介绍 51.4.1

2、 AT89C51 61.4.2 6位7段共阳极显示数码管 61.4.3 三级标题 61.4.4 三级标题 61.4.5 三级标题 61.5 设计原理 61.5.1 电路仿真 61.5.2 三级标题 61.5.3 三级标题 71.5.4 三级标题 71.5.5 三级标题 错误!未定义书签。1.1设计目标1实现最基本的计时功能,显示时、分、秒,可以通过按键设置时间。要求:时钟计时精确,按键操作不影响计时。2.具备秒表计时功能。要求:记时精度达到100ms,计时支持启动、暂停、继续和停止操作。3.具备整点响铃提示功能。要求:整点闹铃五短一长,闹钟响铃时可以按键清楚响铃。4.具备日期显示和调整功能。1

3、.1.1本设计使用89C51芯片作为控制芯片,复位电路和时钟电路构成单片机最小系统。利用P0口8个引脚接上拉电阻,驱动LCD液晶显示时钟。1.1.21.2单元设计电路本设计主要分为时钟电路模块,复位电路模块,显示模块和控制模块。设计方案如下:1.2.1 89C51单片机的时钟信号通常用内部振荡方法得到,在引脚XTAL1和XTAL2外接晶体振荡器(简称晶振)或陶瓷谐振器,就构成了内部振荡方法。由于单片机内部有一个高增益反相放大器,当外接晶振后就构成了自激振荡器并产生振荡时钟脉冲。晶振通常选择6MHz、12MHz、24MHz。本设计采用12MHz晶振。图中电容C1、C2起到稳固振荡频率、快速起振的

4、作用。电容值一般为530pF。本设计选用33pF电容。1.2.2复位操作完成电路的初始化,使单片机从一种确定的状态开始运行。 由上图可知,控制模块实际上就是单片机的最小系统。本设计采用常用的上电且开关复位电路。上电后,由于电容的充电,使RST持续一段高电平时间。当单片机已在运行中时,按下复位键也能使RST持续一段时间的高电平,从而实现上电且开关复位的操作。此处C3电容取10uF,R2=K。1.2.31.3源程序#include#include#include#define uchar unsigned char#define uint unsigned int #define Ord8279

5、XBYTE0xCFE9#define Dat8279 XBYTE0XCFE8uchar code SEG=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00;uchar code keyval=0xC1,0xC2,0xC3,0xC6,0xC7,0xC8,0xC0,0xC9;uchar year=15,month=12,day=7,hour=0,minute=0,second=0,num=0;sbit P1_0=P10;void Init_timer0(void) TMOD=0x10; TL0=0xaf; TH0=0x3c;void In

6、it8279(void) Ord8279=0x10; Ord8279=0xD1; while(Ord8279 & 0x80); Dat8279=0x34; uchar Readkey(void) uchar i,j; if(Ord8279 & 0x07) Ord8279=0x40; i=Dat8279; j=0; while(i != keyvalj) j+; if(j5) return 0; return (j+1); return 0;void check(void) uchar key=0; key=Readkey(); switch(key) case 1: year+=1;break

7、; case 2: month+=1;break; case 3: day+=1;break; case 4: hour+=1;break; case 5: minute+=1;break; case 6: second+=1;break; void Disp(uchar a,uchar b,uchar c) uchar ge,shi; ge=a%10; shi=a%100/10; XBYTE0xCFE9=0x80; XBYTE0xCFE9=0x81; Dat8279=SEGshi; XBYTE0xCFE9=0x82; Dat8279=SEGge; ge=b%10; shi=b%100/10;

8、 XBYTE0xCFE9=0x83; Dat8279=SEGshi; XBYTE0xCFE9=0x84; Dat8279=SEGge; ge=c%10; shi=c%100/10; XBYTE0xCFE9=0x85; Dat8279=SEGshi; XBYTE0xCFE9=0x86; Dat8279=SEGge; int main() ET0=1; EA=1; TR0=1; Init_timer0(); Init8279(); while(1) check(); if(second=20 | second=19 | second=39 | second=40 | second=58 | sec

9、ond=59) Disp(year,month,day); else Disp(hour,minute,second); return 0;void InterruptTimer0() interrupt 1 num+; if(10=num) num=0; second+; if(60=second) second=0; minute+; P1_0=1; if(60=minute) minute=0; hour+; P1_0=0; if(24=hour) hour=0; day+; if(30=day) day=1; month+; if(12=month) month=1; year+; e

10、lse ; 1.4元器件介绍1.4.1AT89C51:AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压,高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2

11、051是它的一种精简版本。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。1.4.2六位是同时显示六位阿拉伯数字,而每一个数字又是七段码显示的;七段是指一个数码显示的阿拉伯数字是由七位二进制数控制的,共阳是指相应的二进制为1时不亮,为0时亮。在实验中显示器的作用是显示时间。 1.5 设计原理设计程序分为主程序,中断程序和各种功能程序。主程序要完成系统的初始化,接受键值并根据键号实现不同的功能,以及判断闹铃时间是否到,如果时间到,则启动响铃。中断服务程序包括定时计数器0和定时计数器1的中断服务程序,定时计数器0的中断程序实现20ms定时,并每中断20次就修改当前的时,分,秒值,定时计数器1的中断服务程序实现响铃功能和控制响铃一段时间后停止响铃。1.5.1KeiL C51是美国KeLl Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势。因而易学易用。KeiL提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境uVision将这些部分组合在一起。运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1