rm新时代官网平台入口

    1. <center id="zkiya"></center>

    2. 公司新聞
      首頁(yè) / 資訊 / 公司新聞

      如何做一個(gè)超低功耗 MCU I2C

      更新時(shí)間   2021-01-12 16:45:08 深圳市克里雅半導(dǎo)體有限公司 閱讀

      I2C(或稱(chēng)為I2C,集成電路總線)是一種兩線制通信形式,主要用來(lái)在短距離、電路板間的應(yīng)用中,實(shí)現(xiàn)微控制器與外設(shè)IC之間的低速通信。由于其采用范圍很廣,所以學(xué)習(xí)使用I2C與MSP MCU之間的通信已經(jīng)在幫助工程師開(kāi)發(fā)應(yīng)用方面變得十分必要。通過(guò)使用一個(gè)超低功耗MSP MCU來(lái)訪問(wèn)和控制IC器件,這份指南提供了理解I2C協(xié)議并執(zhí)行這一協(xié)議所需的工具與資源。

      器件術(shù)語(yǔ)

      驅(qū)動(dòng)SCL時(shí)鐘線路的器件被稱(chēng)為主器件,而對(duì)其進(jìn)行響應(yīng)的器件被稱(chēng)為從器件。在大多數(shù)應(yīng)用中,MSP MCU為主器件,而外設(shè)IC為從器件,雖然有時(shí)候MSP器件是其它MCU或處理器的從器件。

      物理總線

      I2C總線由兩條線路組成,SCL和SDA。SCL是用來(lái)將所有數(shù)據(jù)傳輸同步的時(shí)鐘線路,而SDA是實(shí)際的數(shù)據(jù)線路。還需要第三條線路,即普通接地,不過(guò)通常不被提及。由于兩條線路都是“開(kāi)漏”驅(qū)動(dòng)器,它們都需要到電源線路的上拉電阻,這樣的話,輸出在無(wú)運(yùn)行期間保持在高電平。對(duì)于MSP MCU應(yīng)用來(lái)說(shuō),電源電壓應(yīng)該與MSP MCU的Vcc相匹配。傳統(tǒng)上,上拉電阻器的值為4.7k?,不過(guò)這個(gè)值的范圍可以在少于1k?到10k?之間,取決于所使用的從器件。要獲得正確的上拉電阻值,請(qǐng)參考器件數(shù)據(jù)表。多個(gè)從器件可以共用一條I2C總線,單個(gè)上拉電阻器

      I2C軟件協(xié)議

      不論何種應(yīng)用,每個(gè)支持I2C器件都需要遵守針對(duì)全部I2C器件所定義的共同軟件協(xié)議,其一般結(jié)構(gòu)始終保持不變。通信從啟動(dòng)序列開(kāi)始,并在一個(gè)停止序列中結(jié)束,兩個(gè)序列之間有一個(gè)8位數(shù)據(jù)傳輸序列。啟動(dòng)位之后是從地址,通常為7位(雖然很少情況下也使用10位尋址)。這7個(gè)數(shù)據(jù)位被放置在一個(gè)字節(jié)的上7位,而LSB(最低有效位)被用來(lái)存儲(chǔ)讀/寫(xiě) (R/W) 位。這個(gè)位讓從器件知道是對(duì)其進(jìn)行寫(xiě)入操作(位值為0),還是讀取操作(位值為1)。對(duì)一個(gè)寫(xiě)入操作,操作序列如下:

      發(fā)送啟動(dòng)序列

      發(fā)送從地址,其中R/W位為低電平

      發(fā)送寄存器數(shù)

      發(fā)送數(shù)據(jù)字節(jié)

      發(fā)送停止序列

      讀取操作序列與寫(xiě)入操作十分相似,除了它不發(fā)送數(shù)據(jù)字節(jié),而是重新發(fā)送啟動(dòng)序列(被稱(chēng)為一個(gè)重復(fù)啟動(dòng))和從地址(不過(guò)此時(shí),對(duì)于讀取操作來(lái)說(shuō),R/W位為高電平),這樣的話,它可以接收數(shù)據(jù),而不是發(fā)送數(shù)據(jù)。這個(gè)操作在主器件發(fā)出典型停止序列后結(jié)束。下面是讀取操作序列:

      發(fā)送啟動(dòng)序列

      發(fā)送從地址,其中R/W位為低電平

      發(fā)送寄存器數(shù)

      再次發(fā)出啟動(dòng)序列(重復(fù)啟動(dòng))

      發(fā)出從地址,其中R/W位為高電平

      讀取數(shù)據(jù)字節(jié)

      發(fā)出停止序列

      MSP MCU通信外設(shè)

      為了實(shí)現(xiàn)串行通信,MSP器件上有可能提供4種不同的外設(shè)。其中只有一個(gè)外設(shè)會(huì)因器件的不同而不同。根據(jù)在MSP MCU上實(shí)現(xiàn)I2C通信的難易程度(從最難到最容易),將這些使用的外設(shè)列出如下:

      UART:通用同步/異步接收器/發(fā)射器。這是最早出現(xiàn)的通信形式,并且存在于大多數(shù)MSP430F1xx MCU上。它不支持I2C,因此必須使用一個(gè)基于軟件的位響應(yīng) (bit-bang) 解決方案來(lái)與I2C器件實(shí)現(xiàn)通信。

      USI:通用串行接口。另外一個(gè)更加簡(jiǎn)單的通信形式,用于MSP430G2xx系列內(nèi)的某些組件等成本有效或空間受限器件。器件上沒(méi)有I2C狀態(tài)機(jī),必須在軟件中實(shí)現(xiàn)。通常情況下,通過(guò)使用單獨(dú)的函數(shù)來(lái)實(shí)現(xiàn)。

      USCI:通用串行接口。一個(gè)針對(duì)ISR和標(biāo)志用法進(jìn)行優(yōu)化的標(biāo)準(zhǔn)通信外設(shè)。這個(gè)外設(shè)常見(jiàn)于MSP430F5xx/F6xx系列中,其中包括一個(gè)基于硬件的I2C狀態(tài)機(jī),因此運(yùn)行所需要的代碼更少。

      eUSCI:增強(qiáng)型通用串行通信接口。MSP器件上提供的最先進(jìn)通信外設(shè),它改進(jìn)了現(xiàn)有USCI功能,并且包含于所有MSP430FRxx (FRAM) MCU中。

      當(dāng)考慮使用一個(gè)具有I2C應(yīng)用的MSP器件時(shí),用戶(hù)應(yīng)該明白,代碼結(jié)構(gòu)會(huì)隨著特定MSP系列器件上存在的外設(shè)而變化。每個(gè)變量包括必須考慮在內(nèi)的不同寄存器、ISR和函數(shù)。還需要澄清的一點(diǎn)是,并不是所有的器件系列都使用同樣的外設(shè)(USCI和eUSCI存在于MSP430F5xx/6xx中,USI和USCI存在于MSP430G2xx系列中,等等),這一點(diǎn)在用戶(hù)參考系列用戶(hù)指南時(shí)會(huì)感到很困惑。因此,需要注意的一點(diǎn)是,在開(kāi)始應(yīng)用開(kāi)發(fā)時(shí),要根據(jù)實(shí)際情況來(lái)查看正確的材料,并選擇合適的示例代碼。德州儀器 (TI) 提供針對(duì)USI、USCI和eUSCI通信的基本I2C代碼示例;這些代碼示例可以在工具&軟件->軟件->示例 (Tools & software -> Software -> Examples) 下的MSP系列器件產(chǎn)品頁(yè)面內(nèi)找到(提供ZIP格式的文件,需要注意的是,這些軟件包只包含與特定器件上存在的外設(shè)相關(guān)的代碼示例)。對(duì)于那些使用USART,或者不包含一個(gè)通信外設(shè)的器件,我們?cè)谏鐓^(qū)技術(shù)支持內(nèi)提供在線I2C位響應(yīng)解決方案。不論是否使用外設(shè),始終需要上拉電阻器來(lái)實(shí)現(xiàn)I2C通信。某些MSP器件具有內(nèi)部上拉電阻器,不過(guò)不建議使用這些電阻器,因?yàn)閹讉€(gè)從器件需要特定的、無(wú)法在內(nèi)部滿足的電阻值。




      陳小姐:

      客戶(hù)服務(wù)熱線

      0755-23488804

      在線客服
      亚洲国产精品无码专区,成人妻中文字幕久久久久一区二区三区在线
      rm新时代官网平台入口
      1. <center id="zkiya"></center>

        1. <center id="zkiya"></center>

        2. RM新时代APP官网网址 RM新时代还能玩多久 RM新时代平台网址 新时代游戏官方网站 rm新世界