日本a√视频在线,久久青青亚洲国产,亚洲一区欧美二区,免费g片在线观看网站

        <style id="k3y6c"><u id="k3y6c"></u></style>
        <s id="k3y6c"></s>
        <mark id="k3y6c"></mark>
          
          

          <mark id="k3y6c"></mark>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于嵌入式Linux的ARM/DSP多機I2C通信

          基于嵌入式Linux的ARM/DSP多機I2C通信

          作者: 時間:2012-05-08 來源:網(wǎng)絡 收藏


          2 軟件設計
          運行操作系統(tǒng)的微控制器作為主控制器,在數(shù)據(jù)管理及多任務調(diào)度等方面有顯著優(yōu)勢,可以很好地組織外圍器件采集的數(shù)據(jù);主要實現(xiàn)對系統(tǒng)的整體控制,并通過總線設備驅(qū)動程序控制總線模塊,通過主機尋址實現(xiàn)向總線上掛載的下層的數(shù)據(jù)收發(fā)。為保證數(shù)據(jù)的實時性,F(xiàn)28015通過中斷響應的方式實現(xiàn)數(shù)據(jù)接收和發(fā)送。
          2.1 9平臺的總線驅(qū)動設計
          2.1.1 I2C總線讀寫時序
          ARM9微控制器作為主機向從機寫數(shù)據(jù),首先向從機發(fā)送啟動信號,然后發(fā)送7位從機地址和1位寫標志位,再等待從機的應答信號。在收到應答信號后,主機發(fā)送數(shù)據(jù)給從機,再次等待應答信號。當主機收到應答信號之后再次發(fā)送數(shù)據(jù)。之后,主機等待從機的應答信號,如此直到數(shù)據(jù)發(fā)送完成,主機發(fā)送停止信號。I2C總線寫數(shù)據(jù)幀格式如圖3所示。

          本文引用地址:http://yuyingmama.com.cn/article/149119.htm

          c.jpg


          主模式下讀數(shù)據(jù),是指每次從指定的位置讀取一個或多個字節(jié)數(shù)據(jù)。主機首先向從機發(fā)送啟動信號,然后發(fā)送7位從機地址和1位讀標志位,等待從機應答。當收到從機的應答信號后,主機準備接收從機發(fā)送的數(shù)據(jù),接收完成后發(fā)送一個應答信號,如此直到數(shù)據(jù)接收完成,主機發(fā)送一個停止信號。圖4為I2C總線讀數(shù)據(jù)幀格式。

          d.jpg


          2.1.2 下I2C總線驅(qū)動程序概述
          Linux系統(tǒng)的I2C總線驅(qū)動采用體系化結構設計,包括I2C總線適配器驅(qū)動和I2C總線設備驅(qū)動。總線驅(qū)動實現(xiàn)對I2C總線適配器(S3C2440的I2C總線模塊)的控制,設備驅(qū)動實現(xiàn)對具體設備(F28015的I2C總線模塊)的讀寫控制。圖5為總體驅(qū)動框架,可以分為三個層次:

          e.jpg


          ①I2C框架。內(nèi)核中i2c.h和i2c-core.c為I2C總線框架的主體,提供了核心數(shù)據(jù)結構的定義、I2C總線適配器驅(qū)動和設備驅(qū)動的注冊、注銷管理、I2C總線方法上層的、與具體適配器無關的代碼、檢測設備地址的上層代碼等。i2c-dev.c用于創(chuàng)建I2C總線適配器的設備節(jié)點,提供I2C總線設備訪問方法等。
          ②I2C總線適配器驅(qū)動。定義描述具體I2C總線適配器的數(shù)據(jù)結構,實現(xiàn)在具體I2C總線適配器上的I2C總線通信方法。
          ③I2C總線設備驅(qū)動。定義描述具體設備的數(shù)據(jù)結構,借助I2C總線框架的相關函數(shù)實現(xiàn)設備的注冊,并為用戶提供上層應用程序編程接口。
          Linux的I2C總線驅(qū)動框架中的主要數(shù)據(jù)結構包括:i2c_driver、i2c_client、i2c_adapter和i2c_algorithm,它們被定義在內(nèi)核中的i2c.h頭文件中。i2c_adapter對應于物理上的一個適配器,而i2c_algorithm對應一套通信方法,用來為適配器提供通信函數(shù)。i2c_algori thm中的關鍵函數(shù)master_xfei()用于產(chǎn)生I2C總線訪問周期需要的信號,以i2c_msg(即I2C總線消息)為單位。該結構體原型如下:
          f.jpg
          i2c_driver對應一套驅(qū)動方法,是用于輔助作用的數(shù)據(jù)結構。i2c_client對應于真實的物理設備,每個I2C總線設備都需要一個i2c_clie nt來描述。i2c_adapter和i2c_client的關系與I2C總線硬件體系中適配器和設備關系一致,即i2c_client依附于i2c_adapter。

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

          linux相關文章:linux教程




          評論


          相關推薦

          技術專區(qū)

          關閉