4# phking 插入空操作不就等于延时吗?
DS1302_WriteByte(uchar dat)
{
uchar i;
for(i=0;i<8;i++)
//传输8位数据
{
SCLK0=0;
delay_Nus(1);
dat>>=1;
//取最低位先传输
SDA=CY;
//通过CY位把数据发送出去
delay_Nus(1);
SCLK0=1;
delay_Nus(1);
}
}
DS1302_ReadByte()
{
uchar i,dat=0;
for(i=0;i<8;i++)
{
SCLK0=0;
delay_Nus(1);
dat>>=1;
if(SDA==1)
dat|=0x80;
SCLK0=1;
delay_Nus(3);
}
return dat;
}
|