基于proteus数字电子钟仿真设计.docx

上传人:壹****1 文档编号:556930715 上传时间:2023-04-28 格式:DOCX 页数:18 大小:223.91KB
返回 下载 相关 举报
基于proteus数字电子钟仿真设计.docx_第1页
第1页 / 共18页
基于proteus数字电子钟仿真设计.docx_第2页
第2页 / 共18页
基于proteus数字电子钟仿真设计.docx_第3页
第3页 / 共18页
基于proteus数字电子钟仿真设计.docx_第4页
第4页 / 共18页
基于proteus数字电子钟仿真设计.docx_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《基于proteus数字电子钟仿真设计.docx》由会员分享,可在线阅读,更多相关《基于proteus数字电子钟仿真设计.docx(18页珍藏版)》请在金锄头文库上搜索。

1、鉴于proteus数字电子钟仿真设计成绩课程论文题目: 鉴于 Proteus 的数字电子钟的设计与仿真课程名称:单片机系统设计与Proteus仿真学生姓名:马珂学生学号:系别:专业:年级:任课教师:1305010323电子工程学院通讯工程13级徐锋电子工程学院2021 年5 月目录一、设计目的与要求.二、设计内容与方案拟订.三、设计步骤.3331硬件电路设计31.1. 硬件电路构成框图31.2. 各单元电路及工作原理41.3. 绘制原理图51.4. 元件清单列表62. 程序设计62.1 程序流程62.2 汇编程序7四、调试与仿真12五、心得领会14六、参照文件 :14鉴于 Proteus 的数

2、字电子钟的设计与仿真一、设计目的与要求设计目的 : 经过课程设计, 培育学生运用已学知识解决实质问题的能力、 查阅资料的能力、自学能力和独立剖析问题、解决问题的能力和能经过独立思虑。设计要求 : 设计一个时、分可调的数字电子钟、开机显示“9-58-00 。二、设计内容与方案拟订拥有校时功能,按键控制电路此中时键、分键两个键分别控制时、分时间的调整。按分键分加 1;准时键时加 1。以 AT89C51单片机进行实现秒、分、时上的正常显示和进位,此中显示功能由单片机控制共阴极数码管来实现,数码管进行动向显示。三、设计步骤1 、硬件电路设计1.1. 硬件电路构成框图电源晶振电路显示电路AT89C52复

3、位电路按键控制电路1.2. 各单元电路及工作原理 1晶振电路单片机的时钟产生方法有两种 : 内部时钟方式和外面时钟方式。 本系统中 AT89C51单片机采纳内部时钟方式。采纳外接晶体和电容构成的并联谐振回路。其电路图以下: 2键盘控制电路键盘可实现对时间的校正,用两个按键来实现。准时键来调理小时的时间,按分键来调理分针的时间。其电路连结图以下: 3显示电路 ?LED显示器是此刻最常用的显示器之一发光二极管LED分段式显示器由7 条线段围成 8 字型,每一段包括一个发光二极管。外加正向电压时二极管导通,发出清楚的光。只需按规律控制各发光段亮、灭,就能够显示各样字形或符号。显示电路显示模块需要及时

4、显示目前的时间 , 即时、分、秒,所以需要 6 个数码管,采纳动向显示方式显示时间,其硬件连结方式以以下图所示。1.3. 绘制原理图其计时周期为 24 小时,显示满刻度为23 时 59 分 59 秒,此外还有校时功能。整个设计图由晶振电路、复位电路、 AT89C51单片机、键盘控制电路构成。显示电路将“时、“分、“秒经过七段显示器显示出来,6 个数码管的段选接到单片机的P0 口,位选接到单片机的 P2 口。数码管依据数码管动向显示的工作原理工作。把准时器准不时间设为50ms,那么计数溢出 20 次即得时钟计时最小单位秒,而 20 次计数可用软件方法实现, 每累计 60 秒进 1 分,每累计 6

5、0 分钟,进 1 小时。时采纳 24 进制计时器,可实现对一天 24 小时的累计。校时电路时用来对“时 、“分显示数字进行校正换整,时分秒三个控制键分别接单片机的 p3.1 、 p3.0 进行控 制 。 按一 下分 键秒单元 就 加 1 , 按一 下时 键分 就加 1。1.4. 元件清单列表单片机AT89C51*1电解电容CAP-ELEC 10uF*1瓷片电容CAP 22pF*2电阻RES*10晶振*1数码管7SEG-MPX8-CA-BLUE*1三极管NPN*8按钮BUTTON*3上位排阻RESPACK-8*12. 程序设计2.1 程序程序数字电子钟采纳内部硬件准时器来进行准时, 计时最小单位

6、 sec100 为 10ms。假定 sec100 每计满 100 次时,表示已经计时 1s,那么 sec100 清零且 sec 加 1。假如 sec 等于 60,应将 sec 清零,同时 min 加 1。假如 min 等于 60,应将 min 清零,同时 hour 加 1。假如 hour 大于 23时,应将 hour 清零。经过剖析可知,程序中可分别由 inc_sec() 、inc_min() 、inc_hour()这是三个函数负责秒、分、时的计时。Sec100 的计时由 Timer0() 中止函数来实现。按钮 K1(INT0) 和 K1(INT1) 为调时、调分控制按键。这两个按钮信号的输入

7、采纳外面中断方式来实现。假定产生外面中止时,经过调用inc_hour()或 inc_min() 函数来实现调时或调分操作。编写显示函数display()时,应试虑小时数小于10 时,应障蔽时的十位数,使其不显示。2.2 汇编程序c 语言编写的程序以下:#include#define uchar unsigned char#define unit unsigned intsbitk1=P32;sbitk2=P33;uchar tab=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E,0x

8、BF;uchar dis_buff8;uchar sec100,sec,min,hour;void delay(unit k)unit m,n;for(m=0;mk;m+)for(n=0;n9)P2=0x01;elseP2=0X00;P0=tabdis_buff7;delay(2);voiddisp_data(void)dis_buff7=hour/10;dis_buff6=hour%10;dis_buff5=16;dis_buff4=min/10;dis_buff3=min%10;dis_buff2=16;dis_buff1=sec/10;dis_buff0=sec%10;void inc_hour(void)hour+;if(hour23)hour=0;void inc_min(void)min+;if(min59)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号