for(i=0;i<8;i++)与for(i=1;i<9;i++)同样是循环8次,这两个句语有区别??
/*单片机编程用到ds1302这块芯片。。其中有一个函数是这样的。*/void ds1302_writeByte(uchar dat) //实时时钟写入一字节(内部函数){ uchar i; ACC = dat; for(i = 1; i < 9; i++) //相当于汇编中的 RRC /*奇怪的是:这两个语句都是循环8次嘛,应该没区别才对啊。为什么我换了 */for(i = 0; i < 8; i++)这一句,,程序就有问题了。。 *很烦,这个问题困扰了我很久,想不到是这两个句语造成的。。。。 */ //for(i = 0; i < 8; i++) { ds1302_sclk = 0; ds1302_io = ACC0; //写,上升沿之前数据必须有效,写入数据 ds1302_sclk = 1; ACC >>= 1; } }