基于DS1302的时钟设计

上传人:ji****72 文档编号:27018927 上传时间:2018-01-05 格式:DOC 页数:16 大小:568KB
返回 下载 相关 举报
基于DS1302的时钟设计_第1页
第1页 / 共16页
基于DS1302的时钟设计_第2页
第2页 / 共16页
基于DS1302的时钟设计_第3页
第3页 / 共16页
基于DS1302的时钟设计_第4页
第4页 / 共16页
基于DS1302的时钟设计_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《基于DS1302的时钟设计》由会员分享,可在线阅读,更多相关《基于DS1302的时钟设计(16页珍藏版)》请在金锄头文库上搜索。

1、一 STC89C52 单片机/摘抄于网络STC89C52RC 单片机是宏晶科技推出的新一代高速、低功耗、超强抗干扰的单片机,指令代码完全兼容传统 8051 单片机,12 时钟、机器周期和 6 时钟、机器周期可以任意选择。主要特性如下: 增强型 8051 单片机,6 时钟、机器周期和 12 时钟、机器周期可以任意选择,指令代码完全兼容传统 8051 单片机。 工作电压:5.5V3.3V 工作频率范围:044MHz。 用户应用程序空间为 8K 字节 片上集成 512 字节 RAM 通用 I/O 口 32 个,复位后为:P1/P2/P3/P4 是准双向口/弱上位,P0口是漏极开路输出,作为总线扩展用

2、时,不用加上拉电阻,作为 I/O口用时,需加上拉电阻。 ISP(在系统可编程)/IAP(再应用可编程) ,无需专用编程器,无需专用仿真器,可通过串口(RXD/P3.0,TXD/P3.1 )直接下载用户程序,数秒即可完成一片。 具有 EEPROM 功能 具有看门狗功能 共 3 个 16 位定时器/计数器。及定时器 T0、T1、T2 外部中断 4 路,下降沿中断或低电平触发电路,Power Down 模式可由外部中断低电平触发中断方式唤醒 通用异步串行口(UART),还可用定时器实现多个 UART 工作温度范围:-40+85 度(工业级)/075 度(商业级) PDIP 封装图 1-1 引脚图(1

3、) STC89C52 单片机资源表一 STC89C52 主要功能主要功能特性兼容 MCS51 指令系统 8K 可反复擦写 Flash ROM32 个双向 I/O 口 256x8bit 内部 RAM3 个 16 位可编程定时/计数器中断 时钟频率 0-24MHz2 个串行中断 可编程 UART 串行通道2 个外部中断源 共 6 个中断源2 个读写中断口线 3 级加密位低功耗空闲和掉电模式 软件设置睡眠和唤醒功能(2)复位信号及其产生RST 引脚是复位信号的输入端。复位信号是高电平有效,其有效时间应持续 24 个振荡周期(即二个机器周期)以上。若使用颇率为 12MHz 的晶振,则复位信号持续时间应

4、超过 4us 才能完成复位操作。复位电路如图所示图 1-2 复位电路(4)时钟电路STC89C52 内部有一个用于构成振荡器的高增益反相放大器, 引脚 RXD 和TXD 分别是此放大器的输入端和输出端。时钟可以由内部方式产生或外部方式产生。内部方式的时钟电路如图所示,在 RXD 和 TXD 引脚上外接定时元件,内部振荡器就产生自激振荡。定时元件通常采用石英晶体和电容组成的并联谐振回路。晶体振荡频率可以在 1.212MHz 之间选择,电容值在 530pF 之间选择,电容值的大小可对频率起微调的作用。图 1-3 内部时钟方式电路二MAX232/摘抄于网络芯片是专门为电脑的 RS-232 标准串口设

5、计的单电源电平转换芯片,使用+5v单电源供电。 图 2-1 MAX232 引脚图引脚介绍: 第一部分是电荷泵电路。由 1、2、3、4、5、6 脚和 4 只电容构成。功能是产生+12v 和-12v 两个电源,提供给 RS-232 串口电平的需要。 第二部分是数据转换通道。由 7、8、9、10、11、12、13、14 脚构成两个数据通道。其中 13 脚(R1IN) 、12 脚(R1OUT) 、11 脚(T1IN) 、14 脚(T1OUT)为第一数据通道;8 脚(R2IN) 、9 脚(R2OUT) 、10 脚(T2IN) 、7 脚(T2OUT)为第二数据通道;TTL/CMOS 数据从 T1IN、T2

6、IN 输入转换成 RS-232 数据从T1OUT、T2OUT 送到电脑 DB9 插头;DB9 插头的 RS-232 数据从 R1IN、R2IN 输入转换成 TTL/CMOS 数据后从 R1OUT、R2OUT 输出。 第三部分是供电。15 脚 GND、16 脚 VCC(+5v) 。 主要特点: 1、符合所有的 RS-232C 技术标准 2、只需要单一 +5V 电源供电 3、片载电荷泵具有升压、电压极性反转能力,能够产生+10V 和-10V 电压 V+、V- 4、功耗低,典型供电电流 5mA 5、内部集成 2 个 RS-232C 驱动器 6、内部集成两个 RS-232C 接收器下图为 MX232

7、双串口的连接图,可以分别接单片机的串行通信口或者实验板的其它串行通信接口,保证了能正常的下载调试程序,设计单片机与 PC 间通信接口电路7、程序下载口芯片及电路:STC89C52 单片机支持 SPI 技术,可以通过 3 根线进行在线下载。MAX232 是下载口电路的核心芯片,它完成计算机与单片机电平一致的转换。其电路如图所示:图 2-2 程序下载口电路三时钟电路 DS1302/摘抄与网络31 DS1302 控制字的介绍表 3-1 DS1302 控制字的介绍7 6 5 4 3 2 1 01 RAM/CK A4 A3 A2 A1 A0 RD/W控制字的最高有效位(位 7)必须是逻辑 1,如果它为

8、0,则不能把数据写入到 DS1302 中。位 6:如果为 0,则表示存取日历时钟数据,为 1 表示存取 RAM 数据: 位 5 至位 1 (A4A0):指示操作单元的地址;位 0(最低有效位):如为 0,表示要进行写操作,为 1 表示进行读操作。读数据:读数据时在紧跟 8 位的控制宇指令后的下一个 SCLK 脉冲的下降沿,读出 DS1302 的数据,读出的数据是从最低位到最高位。写数据:控制字总是从最低位开始输出。在控制字指令输入后的下一个 SCLK 时钟的上升沿时数据被写入 DS1302,数据输入也是从最低位(0 位)开始。位 0(最低有效位):为 1 表示进行读操作。如为 0,表示要进行写

9、操作,控制字后 SCLK 下降沿读数据 SCLK 上升沿写数据。32 DS1302 的数据输入和输出控制(1)复位以及时钟控制:所有的数据传输在 R5T 置一时进行(反复强调),RST 输入信号有两种功能:首先,RST 接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST 提供终止单字节或多字节数据的传送手段。当 RST 为高电平时,所有的数据传送被初始化,允许对 DS1302 进行操作。如果在传送过程中 RST 置为低电平,则会终止此次数据传送,I/O 引脚变为高阻态。上电运行时,在 Vcc=2. 5V 之前,RST 必须保持低电平。只有在 SCLK 为低电平时,才能将 RST 为高

10、电平。I/O 为串行数据输入输出端(双向),后面有详细说明。SCLK 始终是输入端。(2)数据输入:经过 8 个时钟周期的控制字节的输入,一个字节的输入将在下 8 个时钟周期的上升沿完成,数据传输从字节最低位开始。(3)数据输出:经过 8 个时钟周期的控制读指令的输入,控制指令串行输入后,一个字节的数据将在下个 8 个时钟周期的下降沿被输出,注意第一位输出是在最后一位控制指令所在脉冲的下降沿被输出,要求 RST 保持位高电平。33 DS1302 单字节读写时序介绍 图 3-1 DS1302 单字节读写时序介绍DS1302 的数据读写是通过 I/O 串行进行的。当进行一次读写操作时最少得读写两个

11、字节,第一个字节是控制字节,就是一个命令,告诉 DS 1302 是读还是写操作,是对 RAM 还是对 CLOK 寄存器操作,以及操作的址。第二个字节就是要读或写的数据了。我们先看单字节写:在进行操作之前先得将 CE(也可说是RST)置高电平,然后单片机将控制字的位 0 放到 I/O 上,当 I/O 的数据稳定后,将 SCLK 置高电平,DS130 检测到 SCLK 的上升沿后就将 I/O 上的数据读取,然后单片机将 SCLK 置为低电平,再将控制字的位 1 放到 I/D 上,如此反复,将一个字节控制字的 8 个位传给 DS1302。接下来就是传一个字节的数据给 DS1302,当传完数据后,单片

12、机将 CE 置为低电平,操作结束。单字节读操作的一开始写控制字的过程和上面的单字节写操作是一样,但是单字节读操作在写控制字的最后一个位,SCLK 还在高电平时,DS1302 就将数据放到 I/O 上,单片机将 SCLK 置为低电平后数据锁存,单机机就可以读取 I/O 上的数据。如此反复,将一个字节的数据读入单片机。读与写操作的不同就在一于,写操作是在 SCLK 低电平时单片机将数据放到 IO 上,当 SCLK 上升沿时,DS1302 读取。而读操作是在 SCLK 高电平时 DS1302 放数据到 IO 上,将 SCLI置为低电平后,单片机就可从 IO 上读取数据。34 DS1302 操作指令介

13、绍表 3-2 DS1302 操作指令介绍命令字 各位内容寄存器名 写操作读操作取值范围7 6 5 4 3 2 1 0秒寄存器80H 81H 0059 CH 10SEC SEC分寄存器82H 83H 0059 0 10MIN MIN时寄存器84H 85H 0112 或002312/24 0 10 HR HR日寄存器86H 87H 0128,29,30, 310 0 10 DATE DATE月寄存器88H 89H 0112 0 0 0 10M MONTMONTHH周寄存器8AH 8BH 0107 0 0 0 0 0 DAY年寄存器8CH 8DH 0099 10YEAR YEAR操作说明:(1)首先

14、要通过 8EH 将写保护去掉,将日期,时间的初值写时各个寄存器。(2)然后就可以对 80H, 82H. 84H, 86H, 88H. 8AH, 8CH 进行初值的写入。同时也通过秒寄存器将位 7 的 CH 值改成 0,这样 DS1302 就开始走时运了。(3)将写保护寄存器再写为 80H,防止误改写寄存器的值。(4)不断读取 80H 一 8CH 的值,将它们格式化后显示到 1602LCD 液晶上四1602 液晶/51 单片机 C 语言教程摘抄本实验使用的 1602 液晶为 5V 电压驱动,带背光,可显示两行,每行 16 个字符,不能显示汉字,内置含 128 个字符的 ASCII 字符库,只有并

15、行接口,无串行接口。41 接口信号说明表 4-1 引脚说明编号 符号 引脚说明 编号 符号 引脚说明1 Vss 电源地 9 D2 数据口2 VDD 电源正极 10 D3 数据口3 VO 液晶显示对比度调节端 11 D4 数据口4 RS 数据/命令选择端(H/L) 12 D5 数据口5 R/W 读写选择端(H/L) 13 D6 数据口6 E 使能信号 14 D7 数据口7 D0 数据口 15 BLA 背光电源正极8 DI 数据口 16 BLK 背光电源负极4.2 主要技术参数表 4-2 1602 液晶主要技术参数显示容量 162 个字符芯片工作电压 4.55.5V工作电流 2.0mA(5.0V)

16、模块最佳工作电压 5.0V字符尺寸 2.954.35(WH)mm4.3 基本操作时序读状态 输入:RS=L,R/ =H,E=HW输出:D0D7=状态字。读数据 输入:RS=H,R/ =H,E=H W输出:无。写指令 输入:RS=L,R/ =L,:D0D7=指令码,E=高脉冲W输出:D0D7=数据。写数据 输入:RS=H,R/ =L,:D0D7=数据,E=高脉冲W输出:无。4.4 状态字说明表 4-3 状态字说明ST7D7ST6D6ST5D5ST4D4ST3D3ST2D2ST1D1ST0D0STA0STA6 当前地址指针的数值STA7 读/写操作使能 1禁止;0允许注意:原则上每次对控制器进行读/写操作之前,都必须进行读/写检测,确保STA7 为 0。实际上,由于单片机的操作速度慢于液晶控制器的反应速度,因此可以不进行读/写检测,或只进行简短的延时即可。 4.5

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

当前位置:首页 > 行业资料 > 其它行业文档

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