我也遇到過,將ds1302的讀函數(shù)改成這樣就可以正常同時顯示了
unsigned char DS1302_ReadData(unsigned char addr){
unsigned char i,reval=0,temp;
CE = 0;
SCLK = 0;
CE = 1;
// 寫寄存器地址
for(i=0;i<8;i++){
SCLK = 0;
SDIO = addr & 0x01;
addr >>= 1;
SCLK = 1; // 上升沿讀入數(shù)據(jù)
}
// 讀數(shù)據(jù)
for(i=0;i<8;i++){
SCLK = 1;
SCLK = 0;
temp = SDIO;
reval = (temp<<7) | (reval>>1); // 下降沿讀出數(shù)據(jù)
}
CE = 0;
SCLK = 1;
SDIO = 0;
SDIO = 1;
CE = 1;
reval = reval/16*10+(reval%16);
return reval;
} |