- 1、本文档共28页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第一章 设计要求
要求:
利用89c51单片机设计万年历,通过LED显示器显示年.月.日.时.分.秒,通过键盘较正时间,能自动计算闰年等。
1.走时准确,可显示年.月.日和时.分.秒;
2.可调整公历年.月.日和时.分.秒。
第二章 单片机系统简介
系统原理图
1. 89c51工作原理
89c51是一种带4K字节闪烁可编程可擦除只读存储器的低电压、高性能CMOS8位微处理器,俗称单片机。89c2051是一种带2K。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令计划输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的89c51是一种高效微控制器,89c2051是它的一种精简版本。89c单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
(1)主要特性
与MCS-51兼容
4K字节可编程闪烁存储器
寿命:1000写/擦循环
数据保留时间:10年
全静态工作:OHz-24MHz
三级程序存储器锁定
128*8位内部RAM
32可编程I/O线
2个16位定时器/计数器
5个中断源
可编程串行通道
低功耗的闲置和掉电模式
片内振荡器和时钟电路
(2)管脚说明
AT89C51
AT89C51共有40个引脚,引脚的排列顺序为从靠芯片的缺口左边那列逆时针数起,依次为1、2、3、4.。。。。。40,其中芯片的1引脚上有一个凹点。在单片机的40个引脚中,电源引脚2根,外接晶体振荡器引脚2根,控制引脚4根以及4组8位可编程I/O引脚32根。
1)、主电源引脚(2根)
Vcc:电源输入,接+5V电源
GND:接地线
2)、外接晶振引脚(2根)
XTAL1:片内晶振电路的输入端
XTAL2:片内晶振电路的输出端
3)、控制引脚(4根)
RST/VPP:复位引脚,引脚上出现2个机器周期的高电频将使单片机复位
ALE/PROG:地址锁存允许信号
EA/VPP:程序存储器的内外部选通,接地电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令
4)、可编程输入/输出引脚(32根)
AT89C51单片机有4组8位可编程I/O口,分别为P0、P1、P2、P3口,每个口有8位(8根引脚),共32根、每一根引脚都可以编程,比如用来控制电机、交通灯等,开发产品就是利用这些可编程引脚来实现我们想要的功能。
P0口:8位双向I/O口线,名称为P0.0~P0.7
P1口:8位准双向I/O口线,名称为P1.0~P1.7
P2口:8位准双向I/O口线,名称为P2.0~P2.7
P3口:8位准双向I/O口线,名称为P3.0~P3.7
2.DS1302的工作原理
(1)时钟芯片DS1302的工作原理:
DS1302是DALLS公司推出的涓流充电时钟芯片,内含一个实时时钟/日历和31字节静态RAM,可以通过串行接口与单片机进行通信。实时时钟/日历电路提供秒、分、时、日、星期、月、年的信息,每个月的天数和闰年的天数可自动调整,时钟操作可通过AM/PM标志位决定采用24或12小时时间格式。DS1302与单片机之间能简单地采用同步串行的方式进行通信吗,仅需三根I/O线:复位(RST)、I/O数据线、串行时钟(SCLK)。时钟/RAM的读/写时数据以一字节或多达31字节的字符组方式通信。DS1302工作时功耗很低,保持数据和时钟信息时,功耗小于1mw
DS1302工作时为了对任何数据传送进行初始化,需要将复位引脚(RST)置位高电平且将8位地址和命令信息装入移位寄存器。数据在时钟(SCLK)的上升沿串行输入,前8位指令访问地址,命令装入移位寄存器后,在之后的时钟周期,读操作时输出数据,写操作时输出数据。时钟脉冲的个数在单字节方式下为8+8(8位地址+8位数据),再多字节方式下为8加最多可达248的数据。
(2)DS1302的控制字节
DS1302控制字节的高有效位(位7)必须是逻辑1,如果它为0;则不能把数据写入DS1302中,位6如果为0,则表示存取日历时钟数据,位1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,位1表示要进行读操作,控制字节总是从最低位开始输出。
(3)数据输入输出(I/O)
在控制指令输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入从低位即位0开始。、同样,在紧跟8位控制指令字后的下一个SCLK脉冲的下降沿读出DS1302的数据,读出数据时从低位0到高位7。
(4)DS1302的寄存器和控制器
对DS1302的操作就是对其内部寄存器的操作,DS1302有12个寄存器,其中有七个寄存器与日历、时钟相关,存放的数据位为BCD码形式。此外,DS1
文档评论(0)