




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、单片机原理课程设计课题名称:用数码管显示实时日历时钟的设计专业班级:电子信息工程学生学号:学生姓名:指导教师:设计时间: 2011 年 12 月 26 日 -2011 年 12 月 30 日目录 TOC o 1-5 h z 摘要 2设计任务和要求 2方案论证 2系统硬件设计 3元器件清单Proteus 仿真图3分电路图及原理说明 .1 主控部分 (单片机 MCS-51).2 计时部分(实时时钟芯片DS1302) .3 显示部分(共阳极数码管) .4 调时部分(按键) TOC o 1-5 h z 系统软件设计 7程序流程图 7程序源代码 8心得体会 13参考文献 14结束语15基于DS1302的
2、数码管显示数字钟设计 摘要本次课程设计的是使用专门的时钟芯片DS1302在数码管上显示的数字电子钟,并能通过按键对其进行调时和校准。 DS1302 是一种高性能、低功耗、带RAM 的实时时钟芯片,它能够对时,分,秒进行精确计时,它与单片机的接口使用同步串行通信, 仅用 3 条线与之相连接,就可以实现MCS-5俾片机对其进行读写操作,把读出的时间数据送到数码 管上显示。程序运行时,数码管将从当前时间开始显示,通过调节 K1键和K2键可以分 别对小时和分钟进行调整,调整后,时钟以新的时间为起点继续刷新显示。关键字:MCS-51单片机、DS1302数码管,按键,动态扫描,调时,校准;1 设计任务和要
3、求应用MCS-51单片机设计单片机实现数字钟(LED显示小时:分:秒)电路;选用八位LED数码显示,实时显示时、分、秒,采用按键式实现时钟对表和快慢调 整;硬件设计部分,根据设计的任务选定合适的单片机,根据控制对象设计接口电路。设计的单元电路必须有工作原理, 器件的作用 , 分析和计算过程;软件设计部分,根据电路工作过程,画出软件流程图,根据流程图编写相应的程序,进行调试并打印程序清单;原理图设计部分,根据所确定的设计电路,利用 Protel 工具软件绘制电路原理图、 PCB图、提供元器件清单。 2 方案论证 实现数字电子钟的设计有以下两种基本方案, 现就两种基本方案的优劣进行具体论证,从而说
4、明选择方案二的理由。方案一:直接用单片机的内部定时器来实现时间。该方案以MCS-51单片机为主控芯片,以MCS-51的内部定时器产生的1s中断作为时钟的驱动,然后再通过8个74LS245 缓冲器驱动 8 个独立的数码管来组成数字钟电路。 该电路由于数码管和缓冲器的数目较多,所以在连线方面比较复杂,而且用到的分压电阻也比较多。但是此方案最大的缺点在于单片机89C51产生的1s中断存在误差,如果工作时间长的话,数字时钟显示的时 间将会出现严重的偏差,不够精确。方案二:使用串行接口时钟芯片 DS1302a计时钟电路。该设计方案以 MCS-5仰片 机为主控芯片,以串行时钟芯片 DS1302为核心计时芯
5、片,然后再通过一个 74LS245缓 冲器驱动两组数码管组 (每个数码管组由四个数码管连在一起组成) 组成数字时钟电路。更重要的是,DS1302寸钟芯片的加入大大提高了数字钟时间的准确性,而且该电路在断电后不丢失时间和数据信息时也使得该方案的研究与提升更具有开发的意义。3系统硬件设计3.1元件清单元件序号型号或主要参数数量封装元件序号型号或主要参数数量封装Ri100Q1U1AT89C511DIP40R21kQ1U274S151DIP14RP11KQ1SIP9U4DS13021DIP8Ci22pF3U374LS2451DIP20C4104uF1Y1CRYSTAL1STAL3DSSM41C5642
6、数码管*4丫2CRYSTAL1STAL2K按键43.2Proteus 仿真图图3 proteus仿真图分电路图及原理说明本次设计的硬件电路由主控部分(单片机MCS-51卜计时部分(实时时钟芯片DS1302、显示部分(数码管)、调时部分(按键)4个部分组成。各部分之间相互协作, 构成一个统一的有机整体,实现数字时钟的计时功能。现就各部分的硬件电路设计作出 如下论述:主控部分(单片机MCS-51)MCS-5俾片机作为主控芯片,控制整个电路的运行。具外围电路主要有两部分:复 位电路和晶体振荡器。复位电路的功能是:系统上电时提供复位信号,直至系统电源稳定后,撤消复位信 号。为可靠起见,电源稳定后还要经
7、一定的延时才撤销复位信号,以防电源开关或电源 插头分-合过程中引起的抖动而影响复位。该设计采用含有二极管的复位电路,复位电 路可以有效的解决电源毛刺和电源缓慢下降(电池电压不足)等引起的问题,在电源电 压瞬间下降时可以使电容迅速放电,一定宽度的电源毛刺也可令系统可靠复位。晶体振荡电路:MCS-5律片机中有一个用于构成内部振荡器的高增益反相放大器, 引脚XTAL和XTAL分别为该反向放大器的输入端和输出端。 这个反向放大器与作为反馈 元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器。外接石英晶体(或陶瓷谐振器)及电容C1、C28在放大器的反馈回路中构成并联振荡电路。对外接电容 C1、C2S然没有
8、 十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程度及温度稳定性。如果使用石英晶体,电容应该使用30pF 10pF。电路图 如下:图4主控部分电路图计时部分(实时时钟芯片 DS1302时钟芯片DS1302与外围电路的连接:与MCS-51单片机的接口是由3条线来完成的, MCS-5俾片机的P1.0与时钟芯片的数据传输端I/O相连,P1.1用来作为DS1302俞入 时钟SCLK空制端,P1.2控制DS1302的复位/&入端 RST DS1302的X1和X2管脚外接标 DS1302的复位弓加却通过把RST输入驱动置高电平来启动所有的数据传送。 RST输入有
9、两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器; 其次,RST 提供了终止单字节或多字节数据的传送手段。 当RST为高电平时,所有的数据传送被初始化,允许对据传送,并且电平。只有在DS1302进行操作。如果在传送过程中置 RST为低电平,则会终止此次数I/O引脚变为高阻态。上电运行时,在 Vcc2.5V之前,RST必须保持低SCL低电平时,才能将RST置为高电平0图5计时部分电路图显示部分(共阳极数码管)A B C D E 二 G17 4 2 115A B C D.E5I- Ga b c d e f g pDS1 a b c d e f g pDS2dd三 U39jr1-
10、C DIR八段数码显示管有两种,一种是共阳数码管,其内部是由八个阳极相连接的发光二 极管组成;另一种是共阴数码管,其内部是由八个阴极相连接的发光二极管组成。二者 原理不同但功能相同。本设计的时间显示选用 6个共阴八段数码管LER其外形和内部结 构如图10所示:图10 八段共阴数码管LED调时部分(按键)按键电路有K1,K2K3三个按键和一个74S15组成,只有其中任意一个按键按下,电 路都会通过74S15向单片机INT0引脚发送一次中断请求信号。按键 K1用来调整小时, 按键K2用来调整分钟,按键K3用来结束调时,数字开始继续走表。1 2 P32图7按键电路4系统软件设计4.1程序流程图外部中
11、断按键调嚏调用ds1302时间函数.刷新数码管 显示.图8主程序流程图图9写DS130藐程图图10读DS130疏程图4.2源程序#include#define uchar unsigned char#define uint unsigned int#define write_datasbit sda=P1A1;/ds1302的数据线sbit clk=P1A0; /ds1302的时钟线sbit rst=P1A2;/ds1302的复位线sbit k1=PW5;/调时sbit k2=P1A6;/调分sbit k3=P1A7;/开始走秒uchar code duan_code=0 xc0,0 xf9,
12、0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8,0 x80,0 x90;/ 共阳数码管段码表uchar display_code=显示格式,中间两个横杠数码管位选所读取的日期和时间调节标志延时函数ms级0 x00,0 x00,0 xbf,0 x00,0 x00,0 xbf,0 x00,0 x00;/uchar bit_code=0 x01,0 x02,0 x04,0 x08,0 x10,0 x20,0 x40,0 x80;/ TOC o 1-5 h z uchar current_time7;/char adjust_flag=0;/void delayms(uint
13、x)/uchar i;while(x-) for(i=0;i+;i120);写一个字节函数void write_byte(uchar x)/uchar i;for(i=0;i=1;读一个字节函数uchar read_byte(void)/uchar i,b,t;for(i=0;i=1;t=sda;b|=t7;clk=1;clk=0;return b/16*10+b%16;uchar read_data(uchar addr) /uchar dat;rst=0;clk=0;rst=1;write_byte(addr);dat=read_byte();clk=1;rst=0;return dat;
14、void write_data(uchar addr,uchar dat) /clk=0;rst=1;write_byte(addr);write_byte(dat);clk=0;rst=0;void set_1302()/读取数据函数写入控制字和输入函数设置 ds1302 函数write_data(0 x8e,0 x00);/关闭写保初始化分初始化时打开写保ds1302读取的时间数中断函数小时调整正在调整分钟调整正在调整确定将调整后的时间写入护。write_data(0 x82,(current_time1/104)|(current_time1%10);/ write_data(0 x84
15、,(current_time2/104)|(current_time2%10);/ write_data(0 x8e,0 x80);/护。void gettime()/单片机从据current_time0=read_data(0 x81);current_time1=read_data(0 x83);current_time2=read_data(0 x85); TOC o 1-5 h z void int0() interrupt 0/if(k1=0)/adjust_flag=1;/current_time2=(current_time2+1)%24;elseif(k2=0)/adjust_
16、flag=1;/current_time1=(current_time1+1)%60;elseif(k3=0)/set_1302();/ds1302adjust_flag=0;/结束调整,时间继续正常显示void main()uchar i;IE=0X81;/while(1)if(adjust_flag=0)/主函数开总中断,同时开外部定时器0 中断小时为的十位 小时位的个位 分钟位的十位 分钟为的个位 秒位的十位 秒位的个位 对数码管进行动态扫描gettime(); /扫描按键,当按键没有被按下时,单片机从ds1302读取时间数据display_code0=duan_codecurrent_
17、time2/10;/ display_code1=duan_codecurrent_time2%10;/ display_code3=duan_codecurrent_time1/10;/ display_code4=duan_codecurrent_time1%10;/ display_code6=duan_codecurrent_time0/10;/ display_code7=duan_codecurrent_time0%10;/ for(i=0;i8;i+)/P2=bit_codei;P0=display_codei;delayms(5);5 心得体会通过本次设计,使我们对单片机的了解
18、有了更加深一步,我发现只有动手做才会孰能技巧,还有对材料的整理和理解。这次设计运用到的知识很多方面,尤其是单片机,像AT89C51引脚多,硬件内部线路接通,所以用起来很方便,还有 ds1302芯片与单片机之间的连接,以及如入使用 ds1302 芯片。当然也要对这些元器件作相应调查。主要就是电路原理图,还有对引脚的作用熟悉。对于软件方面则是灵活运用单片机有关的程序语言,还有很多扩展功能,由于知识匮乏,但是理论知识还是比较详细的。我们最大的成功之处是在这整个过程,动脑寻求解决一个一个问题的办法,对程序是不断思索,务必写出很简单的程序来,使得电子时钟能做成功!清华大学出版社电子工业出版社电子工业出版社单片机原理及其接口技术 (第二版)新概念51单片机C语言教程单片机C语言程序设计实训100例- 15 -7 结束语本设计利用单
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 辽宁城市建设职业技术学院《Python程序开发课程设计》2023-2024学年第二学期期末试卷
- 吉林大学《机车车辆检测技术》2023-2024学年第二学期期末试卷
- 商洛学院《生物医药知识产权》2023-2024学年第一学期期末试卷
- 红河学院《信息技术与教育》2023-2024学年第二学期期末试卷
- 赣南科技学院《高级英语写作(1)》2023-2024学年第二学期期末试卷
- 山东菏泽市曹县2025年初三第二次五校联考英语试题含答案
- 荣成市2025届五下数学期末考试模拟试题含答案
- 辽宁师范大学海华学院《劳动通论》2023-2024学年第二学期期末试卷
- 梧州学院《热质交换原理与设备》2023-2024学年第一学期期末试卷
- 2024-2025学年河南省三门峡市渑池县第二高级中学高二下学期第一次月考(3月)数学试卷(含答案)
- 《酒店概论》考试复习参考题库(含答案)
- 版式设计网格课件
- 消防安全检查表(车间)
- 产品报价单(5篇)
- 大飞机C919:追梦五十载,“破茧化蝶”
- 品牌视觉形象设计智慧树知到答案章节测试2023年天津科技大学
- 高考语文复习-议论文结尾写作之深化主旨 练习
- 汉语词汇与文化课件
- 浅析公路桥梁施工中高性能混凝土的应用
- 新概念英语第三册Lesson8 课件
- DBJ∕T 13-196-2014 水泥净浆材料配合比设计与试验规程
评论
0/150
提交评论