新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > PIC單片機之I2C(從模式)

        PIC單片機之I2C(從模式)

        作者: 時間:2013-05-30 來源:網絡 收藏

        while(PIR1bits.SSP1IF == 0)

        {

        timercounter--;

        if(timercounter==0)

        {

        return;

        }

        }//waiting for ~ACK

        SSP1IF = 0;

        if(SSP1CON2bits.ACKSTAT == 1)

        {

        return ; //NOACK

        }

        else

        {

        i2c_counter++;//ACK

        }

        }

        SSP1IF = 0;

        }

        }

        void i2c_salve_interrupt_rx()//master writer

        {

        unsigned char rx_status;

        unsigned char Temp;

        unsigned int timercounter;

        rx_status=false;

        Temp=SSP1STAT;

        Temp = 0x2D;

        if(Temp==0x09)//Write operation,last byte was an address,buffer is full

        {

        SSP1IF = 0;

        i2c_address = SSP1BUF;

        timercounter=while_delay;

        while(PIR1bits.SSP1IF == 0)

        {

        timercounter--;

        if(timercounter==0)

        {

        return ;

        }

        }//waiting for send ~ACK

        SSP1IF = 0;

        word_address = SSP1BUF;

        return ;

        }

        if(Temp==0x29)//Write operation,last byte was data,buffer is full

        {

        SSP1IF=0;

        Register[word_address]=SSP1BUF;

        word_address++;

        if(word_address>=RX_BUF_LEN)

        {

        word_address=0;

        }

        }

        }

        單片機相關文章:單片機教程


        單片機相關文章:單片機視頻教程


        單片機相關文章:單片機工作原理



        上一頁 1 2 3 下一頁

        關鍵詞: PIC單片機 I2C 從模式

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 无棣县| 石城县| 成都市| 莱芜市| 宣武区| 来安县| 连云港市| 凌源市| 西青区| 大埔县| 嵊州市| 彭阳县| 吉水县| 丘北县| 涞水县| 瑞安市| 衡南县| 高陵县| 盘锦市| 柳河县| 宁津县| 睢宁县| 枣强县| 西乌珠穆沁旗| 清水河县| 遂川县| 二连浩特市| 介休市| 霸州市| 新津县| 宿州市| 罗城| 玉林市| 青冈县| 白水县| 阜宁县| 台江县| 阳城县| 铜梁县| 恭城| 阿拉善右旗|