单片机ds1302写了一周还是只能读时间,不能写进时间,跪求各位大师帮小弟我看看!

单片机ds1302写了一周还是只能读时间,不能写进时间,跪求各位大师帮我看看!!

中间还有红外和读取温度湿度数据,主函数就不写了吧?想用红外来改变时间,但是现在连时间初始化都不行,跪求原因!!!

#include "1302.h"
#include "delay.h"

/*****************************************************
函数功能:向1302写一个字节数据
入口参数:x
***************************************************/ 

void Write1302(unsigned char dat)
{
  unsigned char i; 
  SCLK=0;            //拉低SCLK,为脉冲上升沿写入数据做好准备
  delaynus(2);       //稍微等待,使硬件做好准备
  for(i=0;i<8;i++)      //连续写8个二进制位数据
    {
     DATA=dat&0x01;    //取出dat的第0位数据写入1302  低位在前,高位在后
 delaynus(2);       //稍微等待,使硬件做好准备
 SCLK=1;           //上升沿写入数据
 delaynus(2);      //稍微等待,使硬件做好准备
 SCLK=0;           //重新拉低SCLK,形成脉冲
 dat>>=1;          //将dat的各数据位右移1位,准备写入下一个数据位
  }

 }
/*****************************************************
函数功能:根据命令字,向1302写一个字节数据
入口参数:Cmd,储存命令字;dat,储存待写的数据
***************************************************/ 
void WriteSet1302(unsigned char Cmd,unsigned char dat)
 {   
        RST=0;           //禁止数据传递
delaynus(2);     //稍微等待,使硬件做好准备
        SCLK=0;          //确保写数居前SCLK被拉低
delaynus(2);     //稍微等待,使硬件做好准备
    RST=1;           //启动数据传输
    delaynus(2);     //稍微等待,使硬件做好准备
    Write1302(Cmd);  //写入命令字
    Write1302(dat);  //写数据
RST=0;           //禁止数据传递
delaynus(2);     //稍微等待,使硬件做好准备
DATA=1;
    SCLK=1;          //将时钟电平置于高电平状态

 }
/*****************************************************
函数功能:从1302读一个字节数据
入口参数:x
***************************************************/ 
 unsigned char Read1302(void)
 {
    unsigned char i,dat;
delaynus(2);       //稍微等待,使硬件做好准备
for(i=0;i<8;i++)   //连续读8个二进制位数据
 {  dat>>=1;
 if(DATA==1)    //如果读出的数据是1
 dat|=0x80;    //将1取出,写在dat的最高位
 SCLK=1;       //将SCLK置于高电平,为下降沿读出
 delaynus(2);  //稍微等待
 SCLK=0;       //拉低SCLK,形成脉冲下降沿
 delaynus(2);  //稍微等待
  }  
  return dat;        //将读出的数据返回
}  
/*****************************************************
函数功能:根据命令字,从1302读取一个字节数据
入口参数:Cmd
***************************************************/ 
unsigned char  ReadSet1302(unsigned char Cmd)
 {
  unsigned char dat;
  RST=0;                 //拉低RST