📄 pcf8563.c
字号:
/*
* Copyright 2005 by Zhongxon Digital Incorporated.
* All rights reserved. Property of Zhongxon Digital Incorporated.
*/
/*
* ======== pcf8563.c ========
* RTC module for the EVMDM642
*/
#include <stdio.h>
#include <csl.h>
#include <csl_i2c.h>
#include "devnum.h"
#include "evmdm642_i2c.h"
#include "pcf8563.h"
void pcf8563_init()
{
Uint8 buf[]={0, /*控制/状态寄存器1*/
0, /*控制/状态寄存器2*/
0, /*秒/VL 寄存器*/
0x55,/*分钟寄存器*/
0x20,/*小时寄存器*/
0x07,/*日寄存器*/
0x02,/*星期寄存器*/
0x06,/*月/世纪寄存器*/
0x05,/*年寄存器*/
0, /*分钟报警寄存器*/
0, /*小时报警寄存器*/
0, /*日报警寄存器*/
0, /*星期报警寄存器*/
0, /*CLKOUT 频率寄存器*/
0x03,/*定时器控制器寄存器*/
0xff /*定时器倒计数数值寄存器*/
};
EVMDM642_IIC_write(EVMDM642_I2C_hI2C,PCF8563_ADDRESS,0x00,buf,16);
}
void set_pcf8563(Uint8 *pbuf)
{
EVMDM642_IIC_write(EVMDM642_I2C_hI2C,PCF8563_ADDRESS,0x00,pbuf,16);
}
void get_pcf8563(Uint8 *pbuf)
{
Uint8 buf[8];
EVMDM642_IIC_read(EVMDM642_I2C_hI2C,PCF8563_ADDRESS,0x02,buf,7);
*pbuf++=buf[0] & 0xff;
*pbuf++=buf[1] & 0x7f;
*pbuf++=buf[2] & 0x3f;
*pbuf++=buf[3] & 0x3f;
*pbuf++=buf[4] & 0x07;
*pbuf++=buf[5] & 0x1f;
*pbuf =buf[6] & 0xff;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -