在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > MSP430非模擬IIC總線控制程序

            MSP430非模擬IIC總線控制程序

            作者: 時間:2016-12-02 來源:網(wǎng)絡(luò) 收藏
            對于MSP430的學(xué)習(xí)經(jīng)歷一個從痛苦到對430很有感情的轉(zhuǎn)變.當(dāng)然開始學(xué)習(xí)的時候那是相當(dāng)惱火.網(wǎng)上也沒有什么很多的相關(guān)資料.就算有資料也是給不全.參考與學(xué)習(xí)都不很方便.經(jīng)過多方面的努力和找書再到對程序的仔細(xì)讀,感到非模擬的總線帶來的方便還是很多的. 下面就是程序和流程圖:



            IIC.h

            void Init_IIC(void);
            void EEPROM_ByteWrite(unsigned char nAddr,unsigned char nVal);
            unsigned char EEPROM_RandomRead(unsigned char nAddr);
            unsigned char EEPROM_CurrentAddressRead(void);
            void EEPROM_AckPolling(void);
            void Init_CLK(void);
            void Init_IIC_Port(void);

            Main.C

            /*******************************************
            IIC for AT24c16 OR AT24CXXX 系列

            只要控制好IICRM IICSTP IICSTT 其硬件會自動完成
            SCL SDA的一系列時序 只要注意各個發(fā)送與接收的控制標(biāo)志位.
            ******************************************/
            #include
            #include "IIC.h"
            volatile unsigned char Data[6];
            void main(void)
            {
            //volatile unsigned char Data[6];

            //停止看門狗
            WDTCTL = WDTPW+WDTHOLD;

            //初始化端口
            Init_IIC_Port();

            //初始化時鐘
            Init_CLK();
            //I2C初始化
            Init_IIC(); //置傳輸方式及控制方式

            //打開中斷
            _EINT();

            //寫入數(shù)據(jù)
            EEPROM_ByteWrite(0x0000,0x12);
            //等待寫操作完成
            EEPROM_AckPolling();
            //寫入數(shù)據(jù)
            EEPROM_ByteWrite(0x0001,0x34);
            //等待寫操作完成
            EEPROM_AckPolling();
            //寫入數(shù)據(jù)
            EEPROM_ByteWrite(0x0002,0x56);
            //等待寫操作完成
            EEPROM_AckPolling();
            //寫入數(shù)據(jù)
            EEPROM_ByteWrite(0x0003,0x78);
            //等待寫操作完成
            EEPROM_AckPolling();
            //寫入數(shù)據(jù)
            EEPROM_ByteWrite(0x0004,0x9A);
            //等待寫操作完成
            EEPROM_AckPolling();
            //寫入數(shù)據(jù)
            EEPROM_ByteWrite(0x0005,0xBC);
            //等待寫操作完成
            EEPROM_AckPolling();

            //讀出數(shù)據(jù),隨機讀
            Data[0] = EEPROM_RandomRead(0x0000); //地址自動加1
            //讀出數(shù)據(jù),當(dāng)前地址讀
            Data[1] = EEPROM_CurrentAddressRead();
            //讀出數(shù)據(jù),當(dāng)前地址讀
            Data[2] = EEPROM_CurrentAddressRead();
            //讀出數(shù)據(jù),當(dāng)前地址讀
            Data[3] = EEPROM_CurrentAddressRead();
            //讀出數(shù)據(jù),當(dāng)前地址讀
            Data[4] = EEPROM_CurrentAddressRead();
            //讀出數(shù)據(jù),當(dāng)前地址讀
            Data[5] = EEPROM_CurrentAddressRead();
            }

            上一頁 1 2 3 下一頁

            評論


            技術(shù)專區(qū)

            關(guān)閉