单片机电子时钟设计.docx
《单片机电子时钟设计.docx》由会员分享,可在线阅读,更多相关《单片机电子时钟设计.docx(15页珍藏版)》请在冰豆网上搜索。
单片机电子时钟设计
日历时钟的设计与调试
本课程设计是以单片机AT89S52为基础,设计一个24小时制的数字时钟,具有显示年月日时分秒星期和闹铃的功能。
使用了单片机板上的液晶显示器,矩阵式键盘,蜂鸣器,等器件,通过软件设计,并根据软件设计正确连线,对实验进行仿真。
通过不断地修改与调试,基本上达到了实验要求,实现了初始化时间的显示,能够通过按键调节时间的显示,并成功处理了闰年的麻烦,具有定时功能。
课题简介
一、设计任务
1.设计键盘(8个或16个键)、显示(用6个或8个LED数码管)部分的硬件电路;
2.利用MCS-51内部定时器定时,编程实现年、月、日、时、分、秒的显示,显示格式为:
年月日:
11-12-15
时分秒:
08-12-35
也可自行设定显示格式,两部分可按键切换显示;
3.能按键调整日期、时间的数值;
4.可设定时间报警,报警的时间至少有2个,报警时应有报警指示;
5.设计系统所用的电源电路。
二、设计要求
首先进行预设计,根据设计的任务要求,先确定设计的硬件电路方案,然后进行硬件电路的初步设计,在计算机上画出硬件电路图,在教师的指导下进行修正硬件电路图,并对所涉及的参数进行计算。
在确定硬件的基础上,要进行软件的总体设计,包括软件主流程的设计以及各子程序的设计,同时,要写出详细的操作说明,如各路温度报警值的调整方法以及显示窗口的切换等,以配合软件的设计。
然后进入硬件的调试及编程工作,设计组内的同学可根据任务分工,有调试硬件各功能模块的,如键盘子程序、显示子程序等,有进行整体程序编制的,各模块的编制过程中要注意资源的衔接,最好采用伪定义的方式采用单片机的片内RAM资源。
最后进入联机调试,联机调试的原则也要采用分步走的原则,各个功能模块要逐步套入,通过一个再增加一项功能,从而达到设计的总体要求,不要上来编制个最大的程序,最后无法查找错误!
设计方案
总设计原理框图
硬件设计
STC89C52单片机介绍
STC89C52单片机是由深圳宏晶公司代理销售的一款MCU,是由美国设计生产的一种低电压、高性能CMOS8位单片机,片内含8kbytes的可反复写的FlashROM和128bytes的RAM,2个16位定时计数器。
STC89C52单片机内部主要包括累加器ACC(有时也简称为A)、程序状态字PSW、地址指示器DPTR、只读存
储器ROM、随机存取存储器RAM、寄存器、并行I/O接口P0~P3、定时器/计数器、串行I/O接口以及定时控制
逻辑电路等。
这些部件通过内部总线联接起来,构成一个完整的微型计算机。
其管脚图如图所示。
STC89C52单片机管脚结构图
VCC:
电源。
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,
被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,
P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管
脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉
的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将
输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下表所示:
口管脚备选功能
P3.0RXD(串行输入口)
P3.1TXD(串行输出口)
P3.2/INT0(外部中断0)
P3.3/INT1(外部中断1)
P3.4T0(记时器0外部输入)
P3.5T1(记时器1外部输入)
P3.6/WR(外部数据存储器写选通)
P3.7/RD(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,
此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个
ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起
作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但
在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程
期间,此引脚也用于施加12V编程电源(VPP)。
上电按键复位电路
晶振电路
下载电路
液晶显示电路
蜂鸣器电路
外接电源电路
软件设计
流程图
总流图:
设计总结
参考文献
[1]公茂法黄鹤松杨学蔚单片机原理与实践,北京航天航空大学出版社2009
[2]谢自美.电子线路设计·实验·测试[M].武汉:
华中理工大学出版社,1992.
[3]何立民.单片机应用系统设计[M].北京:
北京航空航天大学出版社,1993.
[4]楼然笛.单片机开发[M].北京:
人民邮电出版社,1994.
[5]刘湘涛.江世明.单片机原理与应用[M].北京:
电子工业出版社,2006.
附录一:
原理总图
附录二:
程序清单