电路设计,软件开发,专业项目团队承接电子产品开发!


ISPRO下载型编程器
火爆销售中

RS232/TTL转换器
全IC串口窃电

RS232/TTL转换线
全IC串口窃电

ByteBlasterMV Cable
CPLD/FPGA并口下载线

ByteBlaster II Cable ISPRO下载型编程器
支持S51/AVR/PIC
超级51开发板套件
前卫实用超值

PC/MCU/CPLD
三合一学习套件

全新万年历方案
AVR单片机开发板
 

Min51单片机仿真机
迷你型

ARM7开发板
仅售260元!
 

RS-232/RS-485双向接口电平转换器  

51单片机升级STM32
火爆销售中
MPLAB-ICD2
火爆销售中
LED51开发板
玩具又名图文显示棒

面板模块/开发板
经济危机明智决择

       

GSM MODEM GSM猫

SMS短信模块 工业级/全自动
火爆销售中

大功率数传电台

高速数传电台

您当前位置:电子技术资料 -> 外围驱动 -> 时钟 ->

祝您阅读愉快!

ISPRO下载型编程器

RS232 TO TTL转换器
↑↑本文相关产品介绍↑↑

PCF8563 I2C 实时时钟日历芯片驱动程序


类别:技术文章
来源:未知
作者:未知
关键字:PCF8563
加入日期:2010-8-3

//PCF8563 I2C 实时时钟日历芯片驱动程序
//中国电子网 www.EC66.com
void GetPCF8563(uchar firsttype,uchar count,uchar *buff)
{
uchar i;
I2CStart();
I2CSendByte(0xa2);
WaitAck();//) {lcd_main1();lcd_main2();write3('f');write3('a');write3
('i');write3('l');while(1);}
I2CSendByte(firsttype);
WaitAck();
I2CStart();
I2CSendByte(0xa3);
WaitAck();
for(i=0;i<count;i++)
{
buff[i]=I2CReceiveByte();
if(i!=count-1) SendAck();
}
SendNotAck();
I2CStop();
SomeNOP();
}
void GetPCF8563_d(uchar firsttype,uchar buff)
{
I2CStart();
I2CSendByte(0xa2);
WaitAck();//) {lcd_main1();lcd_main2();write3('f');write3('a');write3
('i');write3('l');while(1);}
I2CSendByte(firsttype);
WaitAck();
I2CStart();
I2CSendByte(0xa3);
WaitAck();
buff=I2CReceiveByte();
SendNotAck();
I2CStop();
SomeNOP();
}
void SetPCF8563(uchar timetype,uchar value)
{
I2CStart();
I2CSendByte(0xa2);
WaitAck();
I2CSendByte(timetype);
WaitAck();
I2CSendByte(value);
WaitAck();
I2CStop();
SomeNOP();
}
void wrtorom(uchar address,uchar num,uchar Data[]) //24c08 write data
{
uchar i=0;
uchar *Pdata;
Pdata=Data;
I2CStart();
I2CSendByte(0xa0);
WaitAck();
I2CSendByte(address);
WaitAck();
for(i=0;i<num;i++)
{
I2CSendByte(*(Pdata+i));
WaitAck();
}
I2CStop();
}
void rdfromrom(uchar address,uchar num,uchar Data[]) //24c08 read control
{
uchar i;
uchar *Pdata;
Pdata=Data;
for(i=0;i<num;i++)
{
I2CStart();
I2CSendByte(0xa0);
WaitAck();//) {lcd_main1();lcd_main2();write3('f');write3('a');write3
('i');write3('l');while(1);}
I2CSendByte(address+i);
WaitAck();
I2CStart();
I2CSendByte(0xa1);
WaitAck();
*(Pdata+i)=I2CReceiveByte();
SendNotAck();
I2CStop();
SomeNOP();
}
}


您可能还会关注的相关技术资料:

中国电子网
www.EC66.com
QQ:34740080 EMAIL:iloveaoe@163.com
最佳浏览:1024*768
Copyright (C) 2001-2010 EC66.COM All Rights Reserved
Aoe/帝国 制作维护
粤ICP备18061901号