为什么时钟芯片时间会走不准
用89S52芯片+时钟芯片(I2C接口)+LCD做时钟显示,为什么几个小时(6小时左右)后时间就不准了呢?请各位高手指点迷津。。。。。。
I2C读写程序如下:
read_data:
clr c
mov i2c_rdata,#00 ;
mov r7,#8
lop1: setb vsda ;
nop
nop ;
setb vscl
nop
nop ;
nop ;
nop ;
nop ;
mov c,vsda
mov a,i2c_rdata
rlc a
mov i2c_rdata,a
clr vscl ;
nop ;
djnz r7,lop1
ret
写字节
wr_byte:
mov r7,#8
clr c
mov a,i2c_wdata
rlc a
wlp: jnb cy,wr00
setb vsda
ajmp wp1
wr00: clr vsda
wp1: nop
nop ;
nop ;
setb vscl
nop
nop
nop
nop
nop
nop ;
nop ;
clr vscl
nop
rlc a
djnz r7,wlp
ret
发表时间:2008年5月11日12:33:27