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

📄 pcf8563.c

📁 I时钟芯片的驱动程序
💻 C
字号:
/**************************************************************
 *文件名:PCF8563.c
 *描述:提供8563的底层驱动。
 *日期:2004/12/31
 *************************************************************/
#define   PCF8563_C
#include "config.h"
/*************************************************************
 *函数性质:公共
 *入口:无
 *出口:无
 *功能:启动8563时钟
 *************************************************************/
void StartClock(void)
{
	SCS = 0x03;	
	I2C_Init();
	I2C_Start();
	I2C_Write(WRITE_ADDR);
	I2C_GetAck();
	I2C_Write(CTRL_STU1);
	I2C_GetAck();
	I2C_Write(START_CLOCK);
	I2C_GetAck();
	I2C_Stop();	
}

/**************************************************************
 *函数性质:公共
 *入口:用于保存时钟参数的结构指针Time_T
 *出口:无
 *功能:读时钟
 **************************************************************/
void ReadClock(TIME_T *Time_T)
{
	I2C_Start();
	I2C_Write(WRITE_ADDR);
	I2C_GetAck();
	I2C_Write(SEC_REG);
	I2C_GetAck();
	I2C_Start();
	I2C_Write(READ_ADDR);
	I2C_GetAck();

    Beep(20);
    Time_T->ucSec = (I2C_Read() & 0x7f);
    
	I2C_PutAck(0);		
	Time_T->ucMin = (I2C_Read() & 0x7f);
	I2C_PutAck(0);	
	Time_T->ucHour = (I2C_Read() & 0x3f);
	I2C_PutAck(0);	
	Time_T->ucDay = (I2C_Read() & 0x3f);
	I2C_PutAck(0);	
	Time_T->ucWeek = (I2C_Read() & 0x07);
	I2C_PutAck(0);	
	Time_T->ucMonth = (I2C_Read() & 0x1f);
	I2C_PutAck(0);	
	Time_T->ucYear = I2C_Read();
	
	I2C_PutAck(1);
	I2C_Stop();

}


/*************************************************************
 *函数性质:公共
 *入口:用于写入的时钟参数结构指针Time_T
 *出口:无
 *功能:修改时钟。
 **************************************************************/
void WriteClock(TIME_T *Time_T)
{
	I2C_Start();
	I2C_Write(WRITE_ADDR);
	I2C_GetAck();
	I2C_Write(SEC_REG);
	I2C_GetAck();
	I2C_Write(Time_T->ucSec);
	I2C_GetAck();
	I2C_Write(Time_T->ucMin);
	I2C_GetAck();
	I2C_Write(Time_T->ucHour);
	I2C_GetAck();
	I2C_Write(Time_T->ucDay);
	I2C_GetAck();
	I2C_Write(Time_T->ucWeek);
	I2C_GetAck();
	I2C_Write(Time_T->ucMonth);
	I2C_GetAck();
	I2C_Write(Time_T->ucYear);
	I2C_GetAck();
	I2C_Stop();
}

⌨️ 快捷键说明

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