基于单片机STC89C516RD+的电子钟设计剖析

上传人:我** 文档编号:114384599 上传时间:2019-11-11 格式:DOCX 页数:13 大小:188.02KB
返回 下载 相关 举报
基于单片机STC89C516RD+的电子钟设计剖析_第1页
第1页 / 共13页
基于单片机STC89C516RD+的电子钟设计剖析_第2页
第2页 / 共13页
基于单片机STC89C516RD+的电子钟设计剖析_第3页
第3页 / 共13页
基于单片机STC89C516RD+的电子钟设计剖析_第4页
第4页 / 共13页
基于单片机STC89C516RD+的电子钟设计剖析_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《基于单片机STC89C516RD+的电子钟设计剖析》由会员分享,可在线阅读,更多相关《基于单片机STC89C516RD+的电子钟设计剖析(13页珍藏版)》请在金锄头文库上搜索。

1、单片机课程设计实验报告 基于STC89C516RD+的电子钟设计 学院:电气与电子工程学院 班级: 姓名: = 学号: 时间: 2015.06 目 录1. 实验内容及要求/012. 课题研究目的和意义及介绍./013. 设计思路及描述/024. 硬件设计./035. 软件设计./066. 实验心得及体会/107. 总结./11一、 实验内容及要求1. 实验内容用STC89C516RD+设计一个用电子屏显示的电子钟,可以显示年、月、日以及时、分、秒,且时间时时刻刻在变化,秒数每秒加一且可以进行分钟进位小时进位。另外该电子钟还可以设置闹钟,闹钟到达指定时刻时便自动进行闹铃,间断响铃持续一分钟后停止

2、,而在其过程中若是按下键盘上的#号键可以将闹钟关闭,不仅如此#号键就是闹钟的总开关,按下一次闹钟关闭,再按一次闹钟开启。对应键盘上的*号键功能为设置闹钟,按下*号键再用键盘输入四位数字如“0909”,9时9分就成为了电子钟的闹铃时间。2. 实验要求了解89C51系列芯片的工作原理和工作方式,使用该种芯片对LCD数字显示屏进行显示控制,实现用单片机的端口控制显示屏,显示时间年月日时分秒,并且能通过按键来设置一个闹钟,并可以控制开启和关闭闹钟。要求选用定时器的工作方式,画出使单片机控制LCD显示屏的电路图,并实现硬件电路,最后用软件编程完成闹钟设置、闹钟提醒、闹钟开关功能。二、 课题研究目的和意义

3、及介绍1. 目的意义1) 通过本次课程设计加深对单片机课程的全面认识复习和掌握,对单片机课程的应用进一步的了解。2) 掌握定时器、外部中断的设置和编程原理。3) 通过此次课程设计能够将单片机软硬件结合起来,对程序进行编辑,校验。4) 该实验通过单片机的定时器/计数器定时和计数原理,设计简单的电子钟系统,拥有精准的时间显示、设置闹钟、开关闹钟,在现实生活中应用广泛,具有现实意义。2. 单片机的简单介绍STC90C516RD+系列单片机是宏晶科技推出的新一代超高速/低功耗的单片机,指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期可任意选择,内部集成MAX810专用复位电路,

4、时钟频率在12MHz以下时,复位脚可直接接地。其主要性能有:1).增强型6 时钟/ 机器周期,12 时钟/ 机器周期 8051 CPU2).工作电压:5.5V - 3.8V(5V单片机)/3.8V - 2.4V(3V 单片机)3).工作频率范围:0-40MHz,相当于普通8051的 080MHz.4).用户应用程序空间 4K/6K/7K/8K/10K/12K/13K/16K/32K/40K/48K/56K/ 61K/字节5).片上集成 1280字节/512/256字节 RAM6).共3个16位定时器/计数器,其中定时器0还可以当成2个8位定时器使用7).外部中断4路,下降沿中断或低电平触发中断

5、,Power Down模式可由外部中断低电平触发中断方式唤醒8).工作温度范围:0-75/-40-+853. 实验仪器集成电路芯片STC90C516RD+,LCD显示屏,PCF8583,ULN2003,有源蜂鸣器,矩阵按键;装有KEIL软件、STC_ISP软件、汉字取模软件的PC一台,能够下载程序的单片机开发板一套。 三、 设计思路及描述 该设备各个模块由STC89C516+链接,LCD显示屏使能端由芯片的P1.0和P1.1引脚控制,时钟计数PCF8583的SCL和SCA分别由P1.4和P1.5控制,89C516+的P0.0到P0.7引脚连接矩阵按键模块的CON10芯片进而控制按键,P1.6P

6、1.7控制蜂鸣器的启动。LCD显示屏STC89C516+PCF8583计数矩阵按键蜂鸣器、LED四、 硬件设计1. LCD显示屏LCD12232中VDD为逻辑电源正,V0为LCD驱动电源,RESET为复位端,E1E2为读写使能端,D0到D7为数据输入输出引脚。2. PCF8583PCF8583是PHILIPS公司制造的带有256x8 bit RAM的8引脚时钟芯片,具有两线串行I2C中线接口,内有振荡上电复位电路,具有计时和中断功能。该芯片1、2脚外接晶振,3脚逻辑正,4脚GND,5脚数据线,6脚时钟线,7脚中断输出,8脚VCC。3. 矩阵按键判断键盘有无按键按下。首先将所有列线均置为低电平,

7、然后检查各行线电平是否都为高,若全为高则无按键按下,否则就有。识别哪个被按下。逐列扫描,即某时刻只让一条列线为低电平,其他全为高,当行列线全为低电平交叉处既是按下的按键。依据公式“键号=行首键号+列号”,计算按下键值的键号,再根据此键号转入相应的处理程序。4. 蜂鸣器 芯片通过P0脚通过74HC574的D触发器和ULN2003的反向放大器控制蜂鸣器的响起和停止。开始五、 软件设计屏幕初始化循环对比不正确扫描键盘对比时间更新时间闹钟开关开 闹钟开关关按下*号键按下#号键响铃对比正确扫描键盘是否有输入?按下#号键无存入中间数组响铃中断未完成有输入完成?完成P(小时)=(new04)+new1Q(分

8、钟)=(new26;t5=(time1&0x1f); /取得月t6=0; / NCt7=time0; / 取得年的基数I2C_Puts( 0xa2,0x01,8,t);5. display_time( )为显示当前时间,括号内写入1使显示屏上一直都有当前时间显示。6. key( )为按键扫描函数,其值为按下键位的键码。7. naozhong( )和set( )是闹钟扫描函数和闹钟设置函数。naozhong( )函数功能就是将当前时间的小时数值和分钟数值与设定的闹钟数值进行比对,若符合则开启蜂鸣器闹钟响铃;set( )函数就是用按键扫描读入四位数字即闹钟时间存入闹钟数组,然后每次闹钟扫描使都将扫描这个时间,闹钟便成功加入了。六、 实验心得体会1. 认真审题,看懂题目的要求,选择适当的课题,不要太简单或者太难。做到既能把课题完成又能锻炼自己的能力。2. 根据课题要求,复习相关的知识,查询相关的资料。3. 根据实验条件,找到适合的方案,找到需要的元器件及工具,准备实验。4. 根据课程设计的要求和自己所要增加的功能写好程序流程图,在程序流程图的基础上,根据芯片的功能写出相应的程序。然后再进行程序调试和相应的修改,以达

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

当前位置:首页 > 高等教育 > 大学课件

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