5、控制寄存器(写保护寄存器):该寄存器的地址(命令字)与定义(各位内容)详见上表。在控制寄存器各位内容中,位7是写保护位,该位为0时允许对时钟/日历寄存器或片内RAM进行写操作;该位为1时禁止对时钟/日历寄存器或片内RAM进行写操作。实际应用中,在对DSl302进行写操作语句之前一定要先有writEDAta(Ox8e,OxO0);语句,以允许对DSl302进行写操作。写入完毕可用writedata(Ox8e,Ox80);语句,以禁止对DS1302进行写操作。
6、绢流充电寄存器:后备电源是主电源掉电时,DS1302内部数据不丢失的重要保证,对后备电源必须进行绢流充电。
该寄存器的地址(命令字)与定义(各位内容)详见上表。绢流充电部分的基本组成如下图示。绢流充电寄存器的位7一位4规定为1010,其它模式禁止充电。DS1302上电时,绢流充电被禁止。位3、位2用于选择在VCC2与VCC1之间连接一个二极管还是两个二极管。如果位3、位2为01,表示选择一个二极管:如果位3、位2为10,表示选择两个二极管;如果为00或11,充电也被禁止,与位7一位4无关。位1、位0用于选择连接在VCC2与VCCI之间的电阻,详见表20如果位1、位0为00,充电也被禁止,与位7一位4无关。二极管和电阻的选择应根据后备电池所需的最大充电电流决定。本例中+5V系统电源加到DSl302VCC2((7)脚),DSl302VCCl((8)脚)接后备电池,绢流充电器工作时在VCC2和VCC1之间接一个二极管和电阻R2,则最大充电电流计算方法如下:
Imax=(5.OV-二极管压降)/R2≈(5.OV-0.7V)/4kΩ)≈1.1mA,
下表为绢流充电寄存器电阻器的选择
设置后备电池充电电流为1.1mA的C程序语句为:writedata(Ox90,Oxa6);
7、时钟暂停:秒寄存器的位7定义为时钟暂停位。当此位设置为1时,时钟振荡器停止;当此位设置为0时,时钟振荡器启动。在当前时间调校程序的开始部分应有writedata(Ox80,Ox80);语句,让时钟振荡器停振;在当前时间调校程序的结束部分应有writedata(Ox80,OxOO);语句,让时钟振荡器启振,以保证时间准确。
8、片内静态RAM:片内静态RAM的地址(命令字)与说明详见表3。本例中只用了RAMO、RAM1分别存储断电时间小时、分钟,它们的写入C程序分别为writedata(0xcO,adjwhk);(BCD码格式断电时间小时存于RAMO)、writedata(Oxc2,adjwmk);(BCD码格式断电时间分钟存于RAMI)。读出C程序分别为readdata(Oxc1);(从RAMO中读取晚上断电时间小时)、readdata(Oxc3);(从RAMI中读取晚上断电时间分钟)。
下表为DSl302内部RAM
9、多字节传送方式:当命令字节为BF或BE时为时钟/日历多字节传送方式,此时可一次性顺序读写(从地址0的位0开始]除绢流充电寄存器外的所有寄存器内容。注意:在时钟/日历多字节传送方式下,如果控制寄存器的位7设置为1,则没有数据会传送到8个时钟/日历寄存器(包括控制寄存器)的任何一个0另外,写保护位也不能在多字节传送方式下写入。当命令字节为FF或FE时为RAM多字节传送方式,此时可一次性顺序读写所有的31个RAM字节。本例需读写的数据内容较少,故没有采用多字节传送方式。
本文关键字:控制器 元器件特点及应用,元器件介绍 - 元器件特点及应用
上一篇:JFET特性确定的简单电路