⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pcf8563.c

📁 这个是一个带有IC卡
💻 C
字号:
#include "config.h"

#include "i2cint.h"

#define __SRC

#include"PCF8563.h"

#undef __SRC


#define   ADDR_PCF8563    0xA2




/*********************************************************
函数名: WriteTimeToPCF8563
功能:向8563写入时间
参数:
pData[0]:秒
pData[1]:分
pData[2]:时
pData[3]:日
pData[4]:周
pData[5]:月
pData[6]:年
*********************************************************/
void WriteTimeToPCF8563(uint8 * pData)
{
	uint8 tmpbuf[9];
	uint8 i;
	uint8 ex_iic_addr;
	ex_iic_addr=0;
	for(i=0;i<7;i++)
	{
		tmpbuf[i+2]=(*(pData+i));
	}
	
	tmpbuf[0]=0x00;		//设置PFC8563的状态寄存器1
	tmpbuf[1]=0x1f;		//设置PFC8563的状态寄存器2
	
	ISendStr(ADDR_PCF8563,ex_iic_addr,tmpbuf,9);
	//ISendStr(ADDR_PCF8563,ex_iic_addr,tmpbuf,9);
	//4个参数分别为:器件地址,器件子地址,缓冲区起始地址	
}
/*********************************************************
函数名: ReadTimeFromPCF8563
功能:从8563读出数据
参数:
pData[0]:秒
pData[1]:分
pData[2]:时
pData[3]:日
pData[4]:周
pData[5]:月
pData[6]:年
*********************************************************/
void ReadTimeFromPCF8563(uint8 * pData)
{
	uint8  tmpbuf[9];
	uint8   ex_addr_iic_pcf8563,i;	
	ex_addr_iic_pcf8563=2;//从第2单元地址开始读取数据
	//I2cRead(ADDR_PCF8563,tmpbuf,&ex_addr_iic_pcf8563,1,7);
	IRcvStr(ADDR_PCF8563, ex_addr_iic_pcf8563, tmpbuf, 7);
	for(i=0;i<7;i++)
	{
		(*(pData+i))=tmpbuf[i];
	}
	
}
/*****************************************************
	函数名:ChangePCF8563_BCD_to_HEX
	功能:
	pData[0]:秒
	pData[1]:分
	pData[2]:时
	pData[3]:日
	pData[4]:周
	pData[5]:月
	pData[6]:年
*******************************************************/
void ChangePCF8563_BCD_to_HEX(uint8 * pData)			//转换的长度固定为7个字节
{
	uint8 i;
	pData[0]=pData[0]&0x7f;//秒
	pData[1]=pData[1]&0x7f;//分	
	pData[2]=pData[2]&0x3f;//时	
	pData[3]=pData[3]&0x3f;//日	
	pData[4]=pData[4]&0x07;//周	
	pData[5]=pData[5]&0x1f;//月	
	pData[6]=pData[6]&0xff;//年
	
	for(i=0;i<7;i++)
	{
		pData[i]=(pData[i]/16*10)+(pData[i]%16);
	}	
}
void ChangeHEX_to_PCF8563_BCD(uint8 * pData)	
{
	uint8 i;
	for(i=0;i<7;i++)
	{
		pData[i]=(pData[i]/10*16)+(pData[i]%10);
	}	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -