毕业论文:基于at89c51单片机和ds1302时钟芯片电子万年历设计内容摘要:

可以 控制 LED 显示。 LED 显示寄存器由内部 8 8 静态 RAM 构成 ,操作者可直接对位寄存器 进行个别寻址 , 以刷新和保持数据 , 只要 V +超过 2 V(一般为+ 5V)。 控制寄存器包括 : 译码模式 , 显示亮度调节 , 扫描限制 (选择扫描位数 ),关断和显示测试寄存器。 MAX7219 的驱动程序首先必须对 5 个控制寄存器初始设置即初始化 , 各控制寄存器设置含义如下 :译码模式选择寄存器 (地址= F9H)。 MAX7219 有两种译码方式 :B 译码方式和不译码方式。 当选择不译码时 , 8 个数据为分别一一对应 7 个段和小数点位。 B 译码方式是BCD 译码 ,直接送数据就可以显示。 实际应用中可以按位设置选择 B 译码或是不译码方式。 扫描限制寄存器 : 地址= FBH。 用于设置显示的 LED 个数 ( 1 ~8 ) , 比如当设置为 0xX4 时 ,LED 0~5 显示。 亮度调节寄存器 : 地址= FAH。 共有 16 级选择 ,用于 LED 显示亮度的强弱设置。 关断模式寄存器 :地址= FCH。 有两种模式选择 :一种是关断状态模式 (D0 = 0)。 一种是正常操作状态 (D0 = 1),通常选择正常操作状态。 13 显示测试寄存器 :地址= FFH。 有两种选择用于设置 LED 是测试状态还是正常操作状态 :当在测试状态时 (D0 = 1)各位全应亮 ,一般选择正常操作状态( D0 = 0)。 表 MAX7219 引脚功能 ( 1) 显示电路 显示部分采用普通的共 阴 数码管显示,采用动态扫描,以减少硬件 路。 年月日时分秒星期共需要 17 位数码显示, 考虑到一次扫描 17 位数码 管显示时会出现闪烁情况, 故采用动态扫描,可将数码管数量减少至 9 14 位,也就是两个四位一体八段 LED 显示数码管和一个一位 LED 数码管设计时数码管 同时扫描, 显示时采用串 行口输出段码,用 MAX7219 驱动数码管。 图 MAX7219主要引脚 键盘在单片机系统中是一个很重要的部件。 为了输入数据、查询和控制系统的工作状态,都要用到键盘,键盘是人工干预计算机的主要手段。 键盘可分为编码和非编码键盘两种。 编码键盘采用硬件线线路来实现键盘编码,每按下一个键,键盘能自动生成按键代码,键数较多,而且还具有去抖动功能。 这种键盘使用方便,但硬件较复杂, PC 机所用的键盘就属于这种。 非编码键盘仅提供按键开关工作状态,其他工作由软件完成,这 种键盘键数较少,硬件简单,一般在单片机应用系统中广泛使用。 此处主要介绍该类非编码键盘及其与 MCS— 51 型单片机的接口。 ( 1) . DS1302工作方式简介 及 数据操作原理 DS1302可以对年、月、日、星期、时、分、秒进行计时 , 且具有闰年补偿功能 , 工作电压宽达 ~。 采用三线接口与 CPU进行同步通信 , 并可采用突发方式一次传送多个字节的时钟信号或 RAM数据。 15 DS1302内部有一个 33x8的用于临时性存放数据的 RAM寄存器。 DS1302是的 DS1202升级产品 , 与 DS1202兼容 , 但增加了主电源 /后背电源双电源引脚 , 同时提供了对后背电源进行涓细电流充电的能力。 DS1302时钟芯片包括实时时钟 /日历和 31字节的静态 RAM。 它经过一个简单的串行接口与微处理器通信。 实时时钟 /日历提供秒、分、时、日、周、月和年等信息。 对于小于 31 天的月和月末的日期自动进行调整,还包括闰年校正的功能。 时钟的运行可以采用 24小 时或带AM/PM的 12 小时格式。 采用三线接口与 CPU 进行同步通信,并可采用突发方式一次传送多字节的时钟信号或 RAM数据。 DS1302有主电源 /后备电源双电源引脚: Vcc1在单电源与电池供电的系统中提供低电源,并提供低功率的电磁备份; Vcc1 在双电池系统中提供主电源。 在这种运行方式中, Vcc1里连接到后备电源,以便在没有主电源的情况下能保存时间信息以及数据。 DS1302由 Vcc1或Vcc2 中较打大者供电。 当 Vcc2>( Vcc1+) 时, Vcc2给 DS1302供电;当 Vcc2< Vcc1时, DS1302由 Vcc1供电。 图 S1302 DS1302在任何数据传送时必须先初始化,把 RST 脚置为高电平,然后把 8位地址和命令字 装入移位寄存器,数据在 SCLK 的上升沿被访 16 问到。 在开始 8 个时钟周期,把命令字节装入移位寄存器后,另外的时钟周期在读操作时输出数据,在写操作时写入数据。 时钟脉冲的个数在单字节方式下为 8+8,在多字节方式下为 8+字节数,最大可达 248字节数。 如果在传送过程中置 RST 脚为低电平,则会终止本次数据传送,并且 I/O 引脚变为高阻态。 上电运行时,在 Vcc≥ 之前, RST脚必须保持低电平。 只有在 SCLK 为低电平时,才能将 RST 置为高电平。 DS1302 的控制字如图所示。 控制字节的最高有效位(位 7)必须是逻辑 1,如果它 为 0,则不能把数据写入到 DS1302中。 位 6如果为 0,则表示存取日历时钟数据;为 1则表示存取 RAM 数据。 位 5~ 1( A4~A0)指示操作单元的地址。 最低有效位(位 0)如果为 0,则表示药进行写操作;为 1表示进行读操作。 控制字节总是从最低位开始输入 /输出。 为了提高对 32 个地址寻址能力(地址 /命令位 1~ 5=逻辑 1) ,可以把时钟 /日历或 RAM 寄存器规定为多字节( burst)方式。 位 6 规定时钟或 RAM,而位 0 规定读或写。 在时钟 /日历寄存器中的地址 9~ 31或 RAM 寄存器中的地址 31 不能存储数据。 在多字节方式下,读或写从地址 0 的位 0开始。 必须按数据传送的次序写最先的 8 个寄存器。 但是,当以多字节方式写 RAM 时,为了传送数据不必写所有的 31 字节,不管是否谢了全部 31 字节,所写的每一字节都将传送至 RAM。 DS1302共有 12 个寄存器,其中有 7个寄存器与日历、时钟相关,存放的数据位为 BCD 码形式。 其日历、时间寄存器及其控制字如下表 17 所示,其中奇数为读操作,偶数为写操作。 表 DS1302控制字 时钟暂停:秒寄存器的位 7 定义位时钟暂停位。 当它为 1 时,DS1302停止振荡,进入低功耗 的备份方式,通常在对 DS130。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。