基于AT89S51单片机的扩展时钟系统设计文档格式.docx
- 文档编号:15797665
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:18
- 大小:523.11KB
基于AT89S51单片机的扩展时钟系统设计文档格式.docx
《基于AT89S51单片机的扩展时钟系统设计文档格式.docx》由会员分享,可在线阅读,更多相关《基于AT89S51单片机的扩展时钟系统设计文档格式.docx(18页珍藏版)》请在冰豆网上搜索。
AT89S51microcontroller;
TimeclockDS12887;
LCD1602
1引言
数字时钟已经成为人们日常生活中必不可少的必需品,广泛应用于个人家庭以及办公室公共场所,给人们的生活、学习、工作、娱乐带来了极大地方便。
由于数字集成电路技术的发展和采用了新进的石英技术,是数字钟具有走时准确、性能稳定、携带方便等优点。
它还用于计时、自动报时等各个领域。
尽管目前市场上已有现成的数字集成电路芯片出售,价格便宜,使用也方便,但鉴于单片机的定时器功能也可以完成数字中电路的设计,因此进行数字钟的设计是必要的。
在这里我将以学过的比较零散的电路知识有机的、系统的结合起来用于实际,来培养我们的综合分析和设计电路,写程序、调试电路的能力。
文中详细论述了以89S51单片机位核心,应用新型时钟芯片DS12887的数字时钟设计原理以及使用的各种芯片的介绍,阐明了本实例所使用的设计方案、详细的电路图以及程序代码。
2总体设计
本次设计的题目是单片机控制时钟芯片DS12887的时分秒定时系统设计,可以正常的显示年、月、日、时、分、秒。
程序第一次运行后,初始化时间显示为00:
00:
00,即6位数码管显示为00.00.00。
通过键盘[MON]设定小时为00,通过键盘[LAST]设定分钟为34,通过键盘[NEXT]设定秒为52,为00:
34:
52.两分钟后即在00..52时关掉电源,等待2分钟后再打开电源,这时时间应为00.36.52,
本设计总体大致分为两部分:
硬件部分、软件部分。
硬件部分包括:
89S51单片机、DS12887时钟芯片、1602LCD液晶显示器。
主要由89S51单片机、实时时钟芯片电路、液晶显示输出电路、键盘输入电路组成等几大部分组成。
软件部分包括了主程序模块,DS12C887模块,LCD1602模块,按键控制模块。
本设计是以89S51单片机为核心,结合新型实时时钟芯片DS12887,并利用液晶LCD1602显示的数字时钟。
在液晶上显示、时、分、秒等信息。
因为DS12887本身的特点,本设计还具有掉电后继续计时的功能。
另外,它的计时周期为24小时,采用24小时制的计时方式,显示满刻度为23时59分59秒,这也是DS12887的计时范围。
本设计的数字时钟,可以通过按键来设置时间,也可以通过按键来设置闹钟的时间,不过与设置正常时间相比,仅限于设置时、分、秒。
每按一次按键,蜂鸣器就会发出很短的滴声,当达到设定的时间时,数字时钟会也发出声音,来提醒使用者时间到了。
以上是本设计的大致功能和简介。
总设计如图1所示
图1接线图
3系统硬件组成
3.1芯片的选择
经多种单片机性能的分析及现有实验设备的限制,在本设计中单片机芯片采用了AT89S51单片机芯片。
AT89S51是美国ATMEL公司生产的低功耗,高性能CMOS8位单片机片内含4Kbytes的可系统编程的Flash只读程序储存器。
器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准80C51指令系统及引脚。
它集Flash程序存储器既可在线编程也可用传统方法进行编程既通用8位微处理器于单片机芯片中,ATMEL公司的功能强大,低价位AT89S51单片机可提供许多高性价比的应用场合,可灵活应用于各种控制领域。
3.2AT89S51单片机的硬件组成
AT89S51是一个低功耗,高性能CMOS8位单片机,片内含4kBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及89S51引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,AT89S51在众多嵌入式控制应用系统中得到广泛应用。
如图2所示
(1)8位微处理器(CPU);
(2)数据存储器(128BRAM);
(3)程序存储器(4KBFlashROM);
(4)4个8位可编程并行I/O口;
(5)1个全双工的异步串行口;
(6)2个可编程的16位定时器/计数器;
(7)1个看门狗定时器;
(8)中断系统具有5个中断源、5个中断向量;
(9)特殊功能寄存器(SFR)26个。
图2AT89S51引脚图
AT89S51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
AT89S51是一种带K字节闪烁可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除1000次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89S51是一种高效微控制器,AT89S1是它的一种精简版本。
AT89S51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
3.3电源及时钟引脚
3.3.1电源引脚
(1)VCC(40脚):
+5V电源。
(2)VSS(20脚):
数字地。
3.3.2时钟引脚
(1)XTAL1(19脚):
片内振荡器反相放大器和时钟发生器电路输入端。
用片内振荡器时,该脚接外部石英晶体和微调电容。
外接时钟源时,该脚接外部时钟振荡器的信号。
(2)XTAL2(18脚):
片内振荡器反相放大器的输出端。
当使用片内振荡器,该脚连接外部石英晶体和微调电容。
当使用外部时钟源时,本脚悬空。
3.3.3并行I/O口
(1)P0口:
8位,漏极开路的双向I/O口
当外扩存储器及I/O接口芯片时,P0口作为低8位地址总线及数据总线的分时复用端口。
P0口也可用作通用的I/O口,需加上拉电阻,这时为准双向口。
作为通用I/O输入,应先向端口写入1。
可驱动8个LS型TTL负载。
(2)P1口:
8位,准双向I/O口,具有内部上拉电阻。
准双向I/O口,作为通用I/O输入时,应先向端口锁存器写1。
P1口可驱动4个LS型TTL负载。
P1.5/MOSI、P1.6/MISO和P1.7/SCK
可用于对片内Flash存储器串行编程和校验,它们分别是串行数据输入、输出和移位脉冲引脚。
(3)P2口:
当AT89S51扩展外部存储器及I/O口时,P2口作为高8位地址总线用,输出高8位地址。
P2口也可作为普通的I/O口使用。
当作为通用I/O输入时,应先向端口输出锁存器写1。
P2口可驱动4个LS型TTL负载。
(4)P3口:
可作为通用的I/O口使用。
作为通用I/O输入,应先向端口输出锁存器写入1。
可驱动4个LS型TTL负载。
P3口还可提供第二功能。
第二功能定义见图3-3,应熟记。
综上所述,P0口可作为总线口,为双向口。
作为通用的I/O口使用时,为准双向口,这时需加上拉电阻。
P1口、P2口、P3口均为准双向口。
P3口如图3,
图3P3口引脚图
3.4时钟芯片DS12887
DS12887是美国DALLAS半导体公司最新推出的8位串行接口并自带RAM的实时日历时钟芯片,内部有14个时钟控制寄存器,包括10个时标寄存器,4个状态寄存器和114bit作掉电保护用的低功耗RAM。
CPU通过读DS12887的内部时标寄存器得到当前的时间和日历,也可通过选择二进制或BCD码初始化芯片的10个时标寄存器,其4个状态寄存器用来控制和指出DS12887的当前工作状态,114bit非易失性静态RAM可在掉电时保存一些重要数据。
DS12887功能强大,应用广泛。
DS12887引脚分布图和存储器分布图:
图4引脚分布图和存储器分布
通过对寄存器A、B、C、D的编程可以控制DS12887的工作方式:
寄存器A
当UIP位为0时指示更新在244μS内不会发生;
当DV2DV1DV0其为010时,打开晶振,并允许时钟开始计时;
RS3RS2RS1RS0用于选择周期中断或输出方波的频率,当其分别为0111、1000、1001、1011、1100、1101、当其分别为0111、1000、1001、1011、1100、1101、1110、1111时,对应频率为512Hz、256Hz、128Hz、64Hz、32Hz、16Hz、8Hz、4Hz、2Hz。
SET位为0时,每秒计数一次,置1后,更新转换被禁止;
当PIE、AIE、UIE位为1时,分别允许周期中断、报警中断和时钟数据更新结束中断,为0时,禁止中断产生;
SQWE位为1时,按以寄存器A中由RS3RS2RS1RS0选定的频率从SQW引脚输出方波,为0时,SQW为低电平;
当DM为1时选用二进制数据格式,反之为BCD数据格式;
12/24位为1时,指定24小时时间格式,否则为12小时时间格式;
DSE为1时允许夏时制发生。
寄存器C的内容是周期中断标志位PF、报警中断标志位AF、更新结束中断标志位UF和中断请求标志位IRQF,它们之间的关系为IRQF=PF*PIE+AF*AIE+UF*UIE,只要IRQF为1,/IRQ引脚输出就保持低电平,读寄存器C将清除所有标志器C的内容是周期中断标志位PF、报警中断标志位AF、更新结束中断标志位UF和中断请求标志位IRQF,它们之间的关系为IRQF=PF*PIE+AF*AIE+UF*UIE,只要IRQF为1,/IRQ引脚输出就保持低电平,读寄存器C将清除所有标志。
寄存器D中仅D7有定义,读时应若寄存器D中仅D7有定义,读时应总为1,若为0则说明内部锂电池已耗尽。
为防止锂电池在芯片装入系统前被耗尽,DS12887在出厂时先关掉了其内部的晶振,编程时必须首先给寄存器A的DV2DV1DV0位写入010以打开晶振,然后,读寄存器D以检查内部锂电池是否有效;
接着根据需要对寄存器A、B进行设置。
当需要修改日历时钟时,必须
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 AT89S51 单片机 扩展 时钟 系统 设计