产品信息搜索 资料下载搜索
  
LCD驱动芯片
LED驱动
升压芯片
草坪灯IC
烟雾报警器IC
降压芯片
开关电源IC
上海贝岭系列
HT1621应用实例
合泰(Holtek)单片机
100mA降压稳压HT75XX
250mA降压稳压HT73XX
300mA (LDO) CMD73XX
300mA降压稳压HT72XX
30mA降压稳压HT71XX
合泰电压检测HT70XX
100mA(LDO)CMD75XX
时钟芯片
电压检测复位芯片
充电器IC
IC Buy网
军工IC网
18show
千禧网100
电子元器件工厂采购网
中采网
电源网
中国国防电子网
English website
上海图一实业(深圳)有限公司
google
新浪
电子查询网
世界电子元器件
电子元器件交易网

首页 >>> 产品目录 >>> 时钟芯片 >>> HT1381
产品[实时时钟芯片HT1381、HT1380读写c程序]资料
如果您对该产品感兴趣的话,可以
产品名称: 实时时钟芯片HT1381、HT1380读写c程序
产品型号: 针对HT1380
产品展商: 上海图一实业有限公司
简单介绍
此HT1381、HT1380程序经过了实验,并成功应用,更多HT1381、HT1380相关资料请浏览www.ic108.com.cn
实时时钟芯片HT1381、HT1380读写c程序的详细介绍

源码下载:http://www.ic108.com.cn/upload/20073171848252166011.txt

#include <w78e58b.h>
#include "ht1380.h"
#include "intrins.h"

#define uchar unsigned char

/********************************************************************
*
* 名称: v_RTInputByte
* 说明:
* 功能: 往HT1381写入1Byte数据
* 调用:
* 输入: ucDa 写入的数据
* 返回值: 无
***********************************************************************/
void v_RTInputByte(uchar ucDa)
{
ACC= ucDa;
T_IO=ACC0;T_CLK=1;delay();T_CLK=0;delay();
T_IO=ACC1;T_CLK=1;delay();T_CLK=0;delay();
T_IO=ACC2;T_CLK=1;delay();T_CLK=0;delay();
T_IO=ACC3;T_CLK=1;delay();T_CLK=0;delay();
T_IO=ACC4;T_CLK=1;delay();T_CLK=0;delay();
T_IO=ACC5;T_CLK=1;delay();T_CLK=0;delay();
T_IO=ACC6;T_CLK=1;delay();T_CLK=0;delay();
T_IO=ACC7;T_CLK=1;delay();T_CLK=0;delay();
}
/********************************************************************
*
* 名称: uchar uc_RTOutputByte
* 说明:
* 功能: 从HT1381读取1Byte数据
* 调用:
* 输入:
* 返回值: ACC
***********************************************************************/
uchar uc_RTOutputByte(void)
{
T_IO=1;
ACC0=T_IO;
T_CLK=1;delay();T_CLK=0;delay();ACC1=T_IO;
T_CLK=1;delay();T_CLK=0;delay();ACC2=T_IO;
T_CLK=1;delay();T_CLK=0;delay();ACC3=T_IO;
T_CLK=1;delay();T_CLK=0;delay();ACC4=T_IO;
T_CLK=1;delay();T_CLK=0;delay();ACC5=T_IO;
T_CLK=1;delay();T_CLK=0;delay();ACC6=T_IO;
T_CLK=1;delay();T_CLK=0;delay();ACC7=T_IO;
return(ACC);
}
/********************************************************************
*
* 名称: v_W1381
* 说明: 先写地址,后写命令/数据
* 功能: 往HT1381写入数据
* 调用: v_RTInputByte()
* 输入: ucAddr: HT1381地址, ucDa: 要写的数据
* 返回值: 无
***********************************************************************/
void v_W1381(uchar ucAddr, uchar ucDa)
{
T_RST = 0;
T_CLK = 0;
T_RST = 1;
v_RTInputByte(ucAddr); /* 地址,命令 */
v_RTInputByte(ucDa); /* 写1Byte数据*/
T_CLK = 1;
T_RST =0;
}
/********************************************************************
*
* 名称: uc_R1381
* 说明: 先写地址,后读命令/数据
* 功能: 读取HT1381某地址的数据
* 调用: v_RTInputByte() , uc_RTOutputByte()
* 输入: ucAddr: HT1381地址
* 返回值: ucDa :读取的数据
***********************************************************************/
uchar uc_R1381(uchar ucAddr)
{
uchar ucDa;
T_RST = 0;
T_CLK = 0;
T_RST = 1;
v_RTInputByte(ucAddr); /* 地址,命令 */
ucDa = uc_RTOutputByte(); /* 读1Byte数据 */
T_CLK = 1;
T_RST =0;
return(ucDa);
}


/********************************************************************
*
* 名称: v_Set1381
* 说明:
* 功能: 设置初始时间
* 调用: v_W1381()
* 输入: pSecDa: 初始时间地址。初始时间格式为: 秒 分 时 日 月 星期 年
* 7Byte (BCD码) 1B 1B 1B 1B 1B 1B 1B
* 返回值: 无
***********************************************************************/
void v_Set1381(uchar *pSecDa)
{
uchar i;
uchar ucAddr = 0x80;
v_W1381(0x8e,0x00); /* 控制命令,WP=0,写操作?*/
for(i =7;i>0;i--)
{
v_W1381(ucAddr,*pSecDa); /* 秒 分 时 日 月 星期 年 */

pSecDa++;
ucAddr +=2;
}
v_W1381(0x8e,0x80); /* 控制命令,WP=1,写保护?*/
}
/********************************************************************
*
* 名称: v_Get1381
* 说明:
* 功能: 读取HT1381当前时间
* 调用: uc_R1381()
* 输入: ucCurtime: 保存当前时间地址。当前时间格式为: 秒 分 时 日 月 星期 年
* 7Byte (BCD码) 1B 1B 1B 1B 1B 1B 1B
* 返回值: 无
***********************************************************************/
void v_Get1381(uchar *ucCurtime)
{
uchar i;
uchar ucAddr = 0x81;
for (i=0;i<7;i++)
{
*ucCurtime = uc_R1381(ucAddr);/*格式为: 秒 分 时 日 月 星期 年 */
ucCurtime ++;
ucAddr += 2;
}
}

void delay()
{
_nop_();
_nop_();

}



#ifndef HT1380_h
#define HT1380_h

#define uchar unsigned char

//define HT1380
#define T_CLK P13
#define T_IO P12
#define T_RST P10



sbit ACC0=ACC^0;
sbit ACC1=ACC^1;
sbit ACC2=ACC^2;
sbit ACC3=ACC^3;
sbit ACC4=ACC^4;
sbit ACC5=ACC^5;
sbit ACC6=ACC^6;
sbit ACC7=ACC^7;

/********************************************************************
*
* 名称: v_RTInputByte
* 说明:
* 功能: 往HT1381写入1Byte数据
* 调用:
* 输入: ucDa 写入的数据
* 返回值: 无
***********************************************************************/
void v_RTInputByte(uchar ucDa);

/********************************************************************
*
* 名称: uchar uc_RTOutputByte
* 说明:
* 功能: 从HT1381读取1Byte数据
* 调用:
* 输入:
* 返回值: ACC
***********************************************************************/
uchar uc_RTOutputByte(void);

/********************************************************************
*
* 名称: v_W1381
* 说明: 先写地址,后写命令/数据
* 功能: 往HT1381写入数据
* 调用: v_RTInputByte()
* 输入: ucAddr: HT1381地址, ucDa: 要写的数据
* 返回值: 无
***********************************************************************/
void v_W1381(uchar ucAddr, uchar ucDa);

/********************************************************************
*
* 名称: uc_R1381
* 说明: 先写地址,后读命令/数据
* 功能: 读取HT1381某地址的数据
* 调用: v_RTInputByte() , uc_RTOutputByte()
* 输入: ucAddr: HT1381地址
* 返回值: ucDa :读取的数据
***********************************************************************/
uchar uc_R1381(uchar ucAddr);

/********************************************************************
*
* 名称: v_Set1381
* 说明:
* 功能: 设置初始时间
* 调用: v_W1381()
* 输入: pSecDa: 初始时间地址。初始时间格式为: 秒 分 时 日 月 星期 年
* 7Byte (BCD码) 1B 1B 1B 1B 1B 1B 1B
* 返回值: 无
***********************************************************************/
void v_Set1381(uchar *pSecDa);

/********************************************************************
*
* 名称: v_Get1381
* 说明:
* 功能: 读取HT1381当前时间
* 调用: uc_R1381()
* 输入: ucCurtime: 保存当前时间地址。当前时间格式为: 秒 分 时 日 月 星期 年
* 7Byte (BCD码) 1B 1B 1B 1B 1B 1B 1B
* 返回值: 无
***********************************************************************/
void v_Get1381(uchar *ucCurtime);

void delay();


#endif
 台湾合泰(Holtek)中国区技术支持电话,上海盛扬:021-64855560,深圳盛扬: 0755-83465589,北京盛扬: 010-66410030 成都盛扬:028-66536590

产品留言


相关产品
串行时钟芯片HT1380 与 HT1381 HT1380、HT1381
时钟芯片HT1381 HT1381
实时时钟芯片HT1381、HT1380读写c程序 针对HT1380
上海图一实业有限公司
联系电话:021-65173783,65619492  传真电话:021-65366771
联系地址:上海市宝山区逸仙路1238弄逸仙华庭6号301-401室      邮 编:200439   粤ICP备08118721号   网站管理入口
 
主营产品:HT1621  HT1622  HT7130  时钟芯片HT1381  水族箱  烟雾报警器