lxren 发表于 2015-8-21 10:36:56

关于AVR TWI接口,请教!

请教各位,按照规格书的流程编写IIC程序的时候,第一句就遇到问题。
如下:启动START信号,返回的TWSR状态不对,加调试信息发现if语句执行了,也就是TWSR不等于START(0x80);
排查了好几天,一个搞不定,不知道要从哪里去排查,还请高手指点下!
        TWCR = (1<<TWSTA)|TW_ACT;                        //启动start信号
        while(!(TWCR & (1<<TWINT)));                        //等待TWINT置位
        if((TWSR & 0xf8)!=START)
                {PORTC_Bit6=0;
                return TW_FAIL;}

thomascao 发表于 2015-8-24 12:45:44

#define I2CStart()   (TWCR=(1<<TWINT)|(1<<TWSTA)|(1<<TWEN))        //发送开始信号

lxren 发表于 2015-8-26 16:24:57

thomascao 发表于 2015-8-24 12:45
#define I2CStart()   (TWCR=(1

谢谢你!
通过测试IIC的时序,后面解决了。
页: [1]
查看完整版本: 关于AVR TWI接口,请教!