单片机课程设计说明书秒表ds资料.doc
文本预览下载声明
唐 山 学 院
单片微机原理与应用课 程 设 计
题 目 数字电子钟
系 (部) 机电工程系
班 级 11测控2班
姓 名 孟凡涛
学 号 4110107216
指导教师 田红霞 王墨琦
2014 年 2 月 24 日至 3 月 7 日 共 2 周
2014年 3 月 7 日
目 录
1 引 言 1
2 核心芯片简介 2
2.1 DS1302简介 2
2.1.1 DS1302引脚功能与内部结构 2
2.1.2 DS1302的控制字 3
2.1.3 DS1302的复位引脚 3
2.1.4 DS1302的数据输入输出 4
2.1.5 DS1302的寄存器 4
2.2 AT89C52简介 4
2.2.1 AT89C52芯片的引脚及特点 5
2.2.2 AT89S51的主要性能参数: 7
2.3 74LS245简介 8
3 方案设计与论证 9
4 软硬件设计 10
4.1 硬件电路设计 10
4.1.1 单片机AT89C52外围电路设计 10
4.1.2 DS1302与单片机的接口设计 11
4.1.3 显示设计 11
4.2 软件实现 12
4.2.1 程序流程 12
4.2.2 DS1302流程 12
5 结 论 14
6 参 考 文 献 15
7 附 录 16
附录一:设计电路仿真图: 16
附录二:源程序 16
附录三:DS1302.H 25
1 引 言
从古代的滴漏更鼓到近代的机械钟,从电子表到目前的数字时钟,为了准确的测量和记录时间,人们一直在努力改进着计时工具。钟表的数字化,大力推动了计时的精确性和可靠性。在单片机构成的装置中,实时时钟是必不可少的部件。目前常用的实时时钟,很多采用单片机的中断服务来实现,这种方式一方面需要采用计数器,占用硬件资源,另一方面需要设置中断、查询等,同样耗费单机的资源,而且某些测控系统可能不允许对后背电源进行涓细电流充电的能力DS1302引脚功能与内部结构
DS1302的引脚功能如表,及内部结构如图1所示 A4 A3 A2 A1 A0 RD
W 图2 DS1302控制字节的含义
控制字节的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入到DS1302中位6如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;位至位1指示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出。在控制指令字输入后的下一个SCLK时钟的上升沿时数据被写入DS1302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个SCLK脉冲的下降沿读出DS1302的数据,读出数据时从低位0位至高位7,数据读写时序图
图3 数据读写时序
2.1.5 DS1302的寄存器
DS1302共有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式。其日历、时间寄存器及其控制字见表2。此外,DS1302还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器的内容。 DS1302与RAM相关的寄存器分为两类,一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0H--FDH,其中奇数为读操作,偶数为写操作;再一类为突发方式下的RAM寄存器,此方式下可一次性读写所有的RAM的31个字节,命令控制字为FEH(写)、FFH(读)。
表2 DS1302的日历、时钟寄存器及其控制字
寄存器名 命令字 取值范围 各位内容 写操作 读操作 7 6 5 4 3 2 1 0 秒寄存器 80H 81H 00--59 CH 10SEC SEC 3 时寄存器 84H 85H 01-12或00-23 12/24 0 10 HR HR 日寄存器 86H 87H 01-28,29,30,31 0 0 10DATE DATE 月寄存器 88H 89H 01--12 0 0 0 10M MONTH 周寄存器 8AH 8BH 01--07 0 0 0 0 0 DAY 年寄存器 8CH 8DH 00--99 10YEAR YEAR 2.2 AT89C52简介
AT89C52
显示全部