标题: 关于I2C的应答问题 [打印本页]

作者: tian880828    时间: 2013-6-17 21:07
标题: 关于I2C的应答问题
请教高手关于I2C发送完1字节数据或地址后怎么接收应答信号,下面是我的程序,但是没有收到应答,为什么?
void write(uchar a)
{
        uchar i;
        ack=0;
        while(!ack)
        {
                scl=0;
                delayus(3);
                for(i=0;i<8;i++)
                {
                        if(a&0x80==0x80)
                                sda=1;
                        else
                                sda=0;
                        delayus(1);
                        scl=1;
                        delayus(3);
                        a=a<<1;
                        scl=0;
                        delayus(3);
                }
                sda=1;
                delayus(2);
                scl=1;
                delayus(3);               
                if(sda)
                        ack=0;
                else
                        ack=1;

                scl=0;
                delayus(3);
        }


delayus()是2us一次的





欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1