找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3361|回復(fù): 4
打印 上一主題 下一主題
收起左側(cè)

PT2315使用i2c協(xié)議沒有ack應(yīng)答,一直在等,求大神解決

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:222026 發(fā)表于 2017-7-31 14:51 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
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;
}

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:123289 發(fā)表于 2017-8-1 01:58 | 只看該作者
你不等,跳過會(huì)怎樣?
回復(fù)

使用道具 舉報(bào)

板凳
ID:222026 發(fā)表于 2017-8-1 10:26 | 只看該作者
yzwzfyz 發(fā)表于 2017-8-1 01:58
你不等,跳過會(huì)怎樣?

跳過后示波器顯示一直在寫地址,沒有把數(shù)據(jù)寫進(jìn)去
回復(fù)

使用道具 舉報(bào)

地板
ID:223751 發(fā)表于 2017-8-1 10:59 | 只看該作者
我使用i2c一般都先編個(gè)程序掃描一下地址,因?yàn)閺哪硨毶腺I的好幾次地址標(biāo)注都不對.樓主可以試試.
回復(fù)

使用道具 舉報(bào)

5#
ID:383245 發(fā)表于 2018-8-5 22:23 | 只看該作者
樓主解決了嗎?
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表