標(biāo)題: PT2315使用i2c協(xié)議沒有ack應(yīng)答,一直在等,求大神解決 [打印本頁]

作者: 花落誰家丶    時(shí)間: 2017-7-31 14:51
標(biāo)題: PT2315使用i2c協(xié)議沒有ack應(yīng)答,一直在等,求大神解決
PT2315使用i2c協(xié)議沒有ack應(yīng)答,一直在等,明明地址是正確的,但第九位確仍然是高電平,然后程序就一直在等,沒有回應(yīng)了,15地址是0x80
*********************************************************************************************************
*        等待應(yīng)答的程序
*********************************************************************************************************
*/
uint8_t i2c_WaitAck(void)
{
        uint8_t re;
        //SDA=1;
        i2c_Delay();
        //NOP4();
        SCL=1;
        i2c_Delay();
        //NOP4();
        if (SDA==1)
        {
                re = 1;
        }
        else
        {
                re = 0;
        }
        //while(SDA==1)
        SCL=0;
        i2c_Delay();
        re=0;
        return re;
}

uint8_t ee_WriteOneBytes(u8 value){
       
        //uint16_t m;

               
                i2c_Stop()
                i2c_Start();
       
              N_nop;
              N_nop;
              N_nop;
              N_nop;
                        i2c_SendByte(PT2315_Addr);
                        if (i2c_WaitAck() != 0)
                        {
                                goto cmd_fail1;
                        }
                       
                        N_nop;
                        N_nop;
                        N_nop;
                        N_nop;
                  i2c_SendByte(value);
                       
                        N_nop;
                        N_nop;
                        N_nop;
                        N_nop;
       
       
                if (i2c_WaitAck() != 0)
                {
                        goto cmd_fail1;
                }       
       
        i2c_Stop();
        return 1;

cmd_fail1:
        i2c_Stop();
        return 0;
}


作者: yzwzfyz    時(shí)間: 2017-8-1 01:58
你不等,跳過會(huì)怎樣?
作者: 花落誰家丶    時(shí)間: 2017-8-1 10:26
yzwzfyz 發(fā)表于 2017-8-1 01:58
你不等,跳過會(huì)怎樣?

跳過后示波器顯示一直在寫地址,沒有把數(shù)據(jù)寫進(jìn)去
作者: kama2099    時(shí)間: 2017-8-1 10:59
我使用i2c一般都先編個(gè)程序掃描一下地址,因?yàn)閺哪硨毶腺I的好幾次地址標(biāo)注都不對(duì).樓主可以試試.
作者: 神谷子    時(shí)間: 2018-8-5 22:23
樓主解決了嗎?




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1