《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 業界動態 > I2C總線在多機通信中的應用

I2C總線在多機通信中的應用

2008-09-23
作者:唐紅文, 陳少平

  摘 要: 介紹了I2C總線的結構、工作原理、數據傳輸方式,討論了基于I2C總線的多機通信" title="多機通信">多機通信軟硬件設計" title="軟硬件設計">軟硬件設計,實現了程控交換多機通信調度指揮系統。
  關鍵詞: I2C總線 多機通信 軟硬件設計


  I2C(Inter Integrated Circuit)總線是Philips公司開發的一種雙向兩線多主機總線,它能方便地實現芯片間的數據傳輸與控制。通過兩線緩沖接口和內部控制與狀態寄存器,可方便地完成多機間的非主從通信或主從通信。基于I2C總線的多機通信電路結構簡單、程序編寫方便,易于實現系統軟硬件的模塊化和標準化。
  本文給出了基于I2C總線的多機通信調度指揮系統方案,討論了系統的軟硬件設計。
1 系統硬件設計
  本調度指揮系統由主機和調度操作臺兩部分組成,工作原理如圖1所示,兩者間通過RS422總線實現較長距離的數據傳送" title="數據傳送">數據傳送。主機和操作臺內部均采用分散多處理器控制,處理器間采用I2C總線進行數據通信。


  主機內部采用分散控制方式,整個交換系統被分割成多個用戶子系統及1個通信子系統,每個子系統由一個CPU處理單元負責128個用戶的呼叫控制和管理,多個子系統之間通過I2C組成一個無主通信總線" title="通信總線">通信總線進行信息交互(如呼叫處理信息、維護信息等),構成一個完整的交換系統。
  調度操作臺由操作臺控制CPU、顯示屏及多個用戶鍵板構成,支持128~1024個操作按鍵和256~2048個LED指示燈,每個操作按鍵可縮位一組電話號碼對應主機內的一個電話用戶,雙燈組合指示該電話用戶狀態,并支持LCD中文顯示。操作臺內部主控CPU與用戶鍵板控制CPU之間通過I2C總線組成主從通信總線進行信息交互(按鍵信息、LED顯示信息)。
1.1 主機I2C總線構成
  子系統的CPU處理單元由Philips-80C652單片機配合外圍電路(如EPROM、RAM、EEPROM、譯碼和I/O驅動等)構成,80C652具有一個支持雙向數據傳送的I2C總線串行接口,I2C總線邏輯根據路徑自動地進行數據傳送。CPU對I2C總線的訪問通過以下四個特殊功能寄存器完成:
  S1CON(D8H)    SIO1控制寄存器
  S1STA(D9H)    SIO1狀態寄存器
  S1DAT(DAH)    SIO1數據寄存器
  S1ADR(DBH)    SIO1從地址寄存器
  SIO1邏輯通過P1.6/SCL和P1.7/SDA兩個引腳連接到外部I2C總線,可工作于以下四種模式:主發送模式、主接收模式、從接收模式、從發送模式。各子系統間的I2C接口復接即構成了主機I2C通信總線,采用無主通信方式,每個CPU既可以響應通用地址的廣播呼叫,也可以進行點對點通信,完全滿足程控交換的信息傳送要求且結構簡單。連接示意圖如圖2所示。


1.2 調度臺I2C總線構成
  操作臺控制CPU板由Philips-80C652單片機配合外圍電路(如EPROM、RAM、EEPROM、譯碼和顯示驅動電路等)構成,其P1.6-SCL、P1.7-SDA為I2C總線接口SIO1。單片機的SIO0通過MC3486/3487與主機通過RS422接口通信,SIO1與用戶鍵板的P87LPC764通信,最多可支持63塊用戶鍵板的通信連接。
  每個用戶鍵板均采用Philips-P87LPC764單片機控制,每塊鍵板提供64個用戶按鍵及128個用戶鍵燈。P87LPC764是51LPC系列OTP單片機,其最大特點是改進型80C51系列,增加了WDT看門狗、I2C總線、二個模擬量比較器、上電復位檢測,保證I/O口驅動電流達到20mA,運行速度為標準80C51的2倍,而且溫度范圍達到了工業級標準(-40℃~+85℃)。該芯片的I2C總線系統包括一個可簡化軟件驅動的I2C總線硬件。除了必要的總線仲裁、錯誤檢測、時鐘擴展和總線超時定時器外,還包括一個一位接口,這個接口通過循環查詢或中斷同步軟件。
  采用該設計的優點在于系統擴充性強,軟件功能分擔:由P87LPC764進行按鍵掃描和LED顯示處理,大大減輕了主CPU-80C652的負擔;由于P87LPC764性價比優越,比專用鍵盤電路更便宜,功能上也可靈活改變;鍵板可按需配置,只需簡單的4線連接(SDA、SCL、+5V、GND)。調度臺I2C總線連接示意圖如圖3所示。


2 I2C總線的數據傳送方式
  I2C總線器件之間通過串行數據線SDA和串行時鐘線SCL傳送數據,交換信息。每個器件(微控制器、LCD驅動器、存儲器或鍵盤接口)都要設置一個獨特的地址碼以示區別。根據通訊需要,器件可以工作于發送或接收方式,并允許有多個設備作為主站控制總線。總線上主和從、發送和接收的關系僅取決于每次數據傳送的方向。
2.1 I2C總線傳輸數據格式
  I2C總線的數據傳送格式如圖4所示。


  S:start信號;
  SLA:從機地址,也可以是通用地址;
  R/W:讀寫控制位;
  A:ACK響應;
  DATA0~DATA7:每組傳送8個數據字節;
  S /P:下一個start或stop信號。
  首先發送開始(start)信號,然后傳送第一個字節:高7位是從機地址,低位表示讀/寫(R/W)狀態,“0”表示寫操作,“1”表示讀操作。由于CPU之間采用無主通信或主從通信,一般只采用主發送和從接收模式,因此該位均填0表示數據發送;總線上的每個物理器件判斷接收的地址與本機地址是否一致,地址一致,返回ACK,進行正常的數據傳送。每個地址或數據后必須跟應答信號,當一個正常的應答信號有效時,SCL時鐘為高電平,接收模塊數據線SDA置低,同時按字節傳送數據,傳送結束由發送端發送stop信號或下一個start信號。
  從機地址由各CPU按統一原則進行分配,主機各子系統可按各自的系統號從01H開始編排,00H作為通用呼叫地址;調度臺80C652地址取01H,P87LPC764地址范圍為40H~7FH,其它地址待擴充。
  處理器之間采用固定8字節數據通信:DATA0、DATA1、DATA2、DATA3、DATA4、DATA5、DATA6、DATA7。
  DATA0:目的地址,發送時可根據該地址確定從機地址;
  DATA1:源地址;
  DATA2:消息編碼,可按需分配;
  DATA3~DATA7:該消息應攜帶的其它必要信息。
  以調度臺為例,80C652向P87LPC764發送LED燈顯示數據:目址、源址、55H(消息編碼),鍵地址、左燈狀態、右燈狀態、#0EEH、#0EEH。
  目址:即P87LPC764地址、40H~7FH;
  源址:即80C652地址,01H;
  鍵地址:每片P87LPC764所處理的按鍵地址,00H~3FH(64鍵);
  燈狀態:即讓對應燈處于滅、常亮、閃爍等狀態值。
3 通信軟件設計
  主機和調度臺80C652單片機上電時首先裝載本機從地址和通用地址,設置I2C總線為高中斷。由中斷處理程序" title="中斷處理程序">中斷處理程序自動接收數據存入數據緩沖區并查詢是否有數據發送,若有,進行相應發送處理;系統設置50ms定時中斷處理,集中處理接收到的信息,按要求進行相關處理,并查詢是否有數據需發送,若有填入發送緩沖區,設置待發送S1CON標志,由中斷處理程序發送。流程如圖5所示。


  鍵板I2C總線軟件處理過程為:鍵板P87LPC764初始化,裝載本機從地址,設置定時器I為高中斷,I2C總線普通中斷。主程序中進行I2C總線數據發送檢查,進行重發處理;接收數據處理;待發送數據處理及設置主站待發。定時器I負責監視I2C總線,計時溢出復位I2C接口硬件。I2C中斷處理程序完成數據的接收和發送工作。流程如圖6所示。


  本設計采用I2C總線實現調度指揮系統中多模塊間的雙向通信,電路設計簡單,易于模塊化及擴展。
參考文獻
1 陳秀玲, 周 欣,陳黎平.I2C總線數據傳輸系統的設計及其應用.微型電腦應用, 2003;19(5):42~45
2 蔣偉宏,習 勇,魏急波.基于MPC850嵌入式通信平臺的I2C接口設計. 通信技術與設備,2002;28(10):20~22
3 何立民. I2C總線應用系統設計.北京:北京航空航天大學出版社,1995

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 日韩黄色免费观看 | 女全身裸无遮挡免费毛片 | 青春草在线 | 羞羞视频网站在线观看 | 日本色片网站 | 亚洲字幕 | 日韩视频一区二区三区 | 免费看日b视频 | 天天影视涩香欲综合网 | 亚洲三页 | 天天干天天玩天天操 | 欧美成a高清在线观看www | 在线视频 二区 | 国产精品亚欧美一区二区三区 | 看全色黄大色黄女片18 | 欧美日韩在线永久免费播放 | 午夜精品久久久久久久久 | 午夜羞羞影院 | 特级淫片aaaaa片毛片 | 亚洲国产成人综合精品2020 | 日韩中文字幕在线亚洲一区 | 欧洲精品一区二区三区 | 中国一级黄色毛片 | 国产专区在线 | 青娱乐伊人 | 中文字幕在线乱人伦 | 98精品国产高清在线xxxx | 免费二级c片在线观看a | 日日射日日干 | 亚洲精品第一国产综合野 | 高清欧美一区二区免费影视 | 成人免费观看男女羞羞视频 | 在线免费看毛片 | 久久受www免费人成_看片中文 | 性一级录像 | 精品国产亚洲一区二区在线3d | 国产精品免费视频能看 | 伊人久久五月天综合网 | 亚洲欧美影院 | pornh日本xxxxhd| 日本一区二区免费看 |