資料介紹
1 I2C總線概述
I2C(Intel-Integrated Circuit)總線是荷蘭的Philips公司于八十年代初推出的一種芯片間串行總線擴展技術。它用兩根線(數據線SDA、時鐘線SCL)可完成總線上主機與器件的全雙工同步數據傳送,可極方便地構成多主機系統和外圍器件擴展系統。I2C總線支持所有NMOS、CMOS、TTL等工藝制造的器件,其上所有的節點都連到同名的SDA、SCL上。I2C總方法,數據傳送都有相同的操作模式,接口電器特性相同且獨立,可在系統供電情況下從系統中移去或增加IC芯片,有I2C接口的外圍器件都有應答能力,讀寫片內單元時有地址自動加1功能,易實現多個字節的自動操作。近年來,國際上有關公司制造了多達幾百種的I2C總線器件,如8051系列單片機8XC752、LCD驅動器、RAM、I/O接口等芯片都使用了I2C總線接口。隨著數字技術的發展,I2C總線控制系統已經應用于越來越多的電子產品。
2 I2C總線的數據傳輸
2.1 接口特性
I2C總線接口的數據線SDA和時鐘線SCL必須經過上拉電阻接到正電源VDD上,各個I2C接口電路輸出端必須是漏極開路或集電極開路,以便完成“線與”的功能。I2C的SDA和SCL都是雙向傳輸線,當總線空閑時,此兩線都是“1”(高電平)。由于不同的器件都會接到I2C總線,邏輯的“0”(低)及“1”(高)的信號電平取決于VDD的電壓。總線上能連接的最大器件數取決于其電容容限400PF。
2.2 I2C總線上的傳輸時序
I2C總線上每傳輸一位數據都有一個時鐘脈沖相對應,在標準模式下可達100 kbit/s,高速模式下可達400kbit/s,總線上依據器件功能不同可建立簡單的主/從關系(master/slave),只有帶CPU的器件才可成主控器。圖1為I2C總線一次完整的數據傳輸。SCL為高期間,SDA狀態必須穩定,SCL為低時才允許SDA狀態變化。SCL保持高電平期間,SDA出現由高至低的轉換將啟動I2C總線,出現由低至高的轉換將停止數據傳輸。起始和終止信號通常由主控器產生。I2C總線的信號時序有嚴格規定,本應用采用標準模式,SCL低電平周期≥4.7μs,SCL高電平周期≥4.0μs,START和STOP之間的總線空閑時間≥4.7μs。
![基于C語言的I2C總線軟件模塊設計方案](/uploads/allimg/171026/2362486-1G026162000542.png)
I2C 總線上傳送的每個字節必須為8位,啟動和停止之間可傳輸的數據字節數不受限制。采用串行傳送,首先傳送最高位,每傳送一個字節后必須跟一個應答位。主控器產生應答所需的時鐘脈沖期間,發送器必須釋放數據線(SDA為高),以便接收器輸出應答位。低電平為應答信號,高電平為非應答信號。非應答信號是當主控器作為接收器時,收到最后一個字節數據后,必須發送一個非應答信號給被控發送器,使被控發送器釋放數據線,以便主控器發停止信號,終止數據傳送。當從器件不能再接收字節時也會出現非應答
信號這種情況。
I2C總線上的器件一般有兩個地址:受控地址和通用廣播訪問地址,每個器件有唯一的受控地址用于定點通信,而相同的通用廣播訪問地址則用于主控方同時對所有器件進行訪問。如圖1所示,起始信號后主控器發送的第一個字節就是被讀器件的受控地址,稱作尋址字節。尋址字節由高7位地址和最低1位方向位組成,方向位為“0”表明主控器對被控器的寫操作(W),方向位為 “1”表明對被控器的讀操作(R)。總線上每個器件在起始信號后都把自己的地址與尋址字節的前7位相比較,如相同則器件被選中,產生應答,并根據讀寫位決定在數據傳送中是接收還是發送。無論是主發、主收還是從發、從收,都是由主器件控制,數據傳送完后,主控器都必須發停止信號。
I2C(Intel-Integrated Circuit)總線是荷蘭的Philips公司于八十年代初推出的一種芯片間串行總線擴展技術。它用兩根線(數據線SDA、時鐘線SCL)可完成總線上主機與器件的全雙工同步數據傳送,可極方便地構成多主機系統和外圍器件擴展系統。I2C總線支持所有NMOS、CMOS、TTL等工藝制造的器件,其上所有的節點都連到同名的SDA、SCL上。I2C總方法,數據傳送都有相同的操作模式,接口電器特性相同且獨立,可在系統供電情況下從系統中移去或增加IC芯片,有I2C接口的外圍器件都有應答能力,讀寫片內單元時有地址自動加1功能,易實現多個字節的自動操作。近年來,國際上有關公司制造了多達幾百種的I2C總線器件,如8051系列單片機8XC752、LCD驅動器、RAM、I/O接口等芯片都使用了I2C總線接口。隨著數字技術的發展,I2C總線控制系統已經應用于越來越多的電子產品。
2 I2C總線的數據傳輸
2.1 接口特性
I2C總線接口的數據線SDA和時鐘線SCL必須經過上拉電阻接到正電源VDD上,各個I2C接口電路輸出端必須是漏極開路或集電極開路,以便完成“線與”的功能。I2C的SDA和SCL都是雙向傳輸線,當總線空閑時,此兩線都是“1”(高電平)。由于不同的器件都會接到I2C總線,邏輯的“0”(低)及“1”(高)的信號電平取決于VDD的電壓。總線上能連接的最大器件數取決于其電容容限400PF。
2.2 I2C總線上的傳輸時序
I2C總線上每傳輸一位數據都有一個時鐘脈沖相對應,在標準模式下可達100 kbit/s,高速模式下可達400kbit/s,總線上依據器件功能不同可建立簡單的主/從關系(master/slave),只有帶CPU的器件才可成主控器。圖1為I2C總線一次完整的數據傳輸。SCL為高期間,SDA狀態必須穩定,SCL為低時才允許SDA狀態變化。SCL保持高電平期間,SDA出現由高至低的轉換將啟動I2C總線,出現由低至高的轉換將停止數據傳輸。起始和終止信號通常由主控器產生。I2C總線的信號時序有嚴格規定,本應用采用標準模式,SCL低電平周期≥4.7μs,SCL高電平周期≥4.0μs,START和STOP之間的總線空閑時間≥4.7μs。
![基于C語言的I2C總線軟件模塊設計方案](/uploads/allimg/171026/2362486-1G026162000542.png)
I2C 總線上傳送的每個字節必須為8位,啟動和停止之間可傳輸的數據字節數不受限制。采用串行傳送,首先傳送最高位,每傳送一個字節后必須跟一個應答位。主控器產生應答所需的時鐘脈沖期間,發送器必須釋放數據線(SDA為高),以便接收器輸出應答位。低電平為應答信號,高電平為非應答信號。非應答信號是當主控器作為接收器時,收到最后一個字節數據后,必須發送一個非應答信號給被控發送器,使被控發送器釋放數據線,以便主控器發停止信號,終止數據傳送。當從器件不能再接收字節時也會出現非應答
信號這種情況。
I2C總線上的器件一般有兩個地址:受控地址和通用廣播訪問地址,每個器件有唯一的受控地址用于定點通信,而相同的通用廣播訪問地址則用于主控方同時對所有器件進行訪問。如圖1所示,起始信號后主控器發送的第一個字節就是被讀器件的受控地址,稱作尋址字節。尋址字節由高7位地址和最低1位方向位組成,方向位為“0”表明主控器對被控器的寫操作(W),方向位為 “1”表明對被控器的讀操作(R)。總線上每個器件在起始信號后都把自己的地址與尋址字節的前7位相比較,如相同則器件被選中,產生應答,并根據讀寫位決定在數據傳送中是接收還是發送。無論是主發、主收還是從發、從收,都是由主器件控制,數據傳送完后,主控器都必須發停止信號。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 使用C語言模擬51單片機的I2C總線的資料和程序免費下載
- Arduino教程之I2C模塊使用教程資料免費下載 9次下載
- I2C模塊arduinoio Simulink軟件包 0次下載
- 基于I2C總線的處理器的聯網設計方案 11次下載
- 基于51的I2c總線 34次下載
- 基于CPLD的I2C總線接口設計
- I2C總線在Linux系統中的驅動設計
- I2C總線接口模塊設計
- I2C總線應用中的幾個問題
- I2C總線規范與I2C器件C51讀寫程序
- 基于I2C總線的鍵盤顯示模塊設計
- i2c總線的特點
- 億恒C166 系列單片機I2C 總線的軟件模擬
- I2C總線器件的C51讀寫程序
- i2c總線ppt(I2C總線器件應用) 0次下載
- I2C總線協議的工作原理和尋址格式 1897次閱讀
- Linux I2C驅動入門知識科普 1734次閱讀
- 開源軟件opencores I2C master控制器控制I2C接口操作原理 7195次閱讀
- i2c總線用來做什么_i2c總線數據傳輸過程 7305次閱讀
- I2C總線驅動的C語言源程序詳細說明 5262次閱讀
- I2C總線的工作原理以及優缺點解析 1.5w次閱讀
- 基于MCS-51單片機I2C總線接口電路的設計 3457次閱讀
- I2C總線的工作原理解析 6718次閱讀
- I2C總線的特點與構成詳解 1w次閱讀
- 80C51單片機模擬I2C總線的主機程序分享 3483次閱讀
- I2C總線是什么?基于I2C總線的Linux系統有哪些優點? 2831次閱讀
- I2C總線的特點、控制技術與傳輸分析 1w次閱讀
- i2c總線相關知識 3568次閱讀
- 《振南電子STM32視頻教程》第八講:I2C總線 1119次閱讀
- 基于FPGA的I2C SLAVE模式總線的設計方案 1.3w次閱讀
下載排行
本周
- 1PIC12F629/675 數據手冊免費下載
- 2.38 MB | 36次下載 | 5 積分
- 2PIC16F716 數據手冊免費下載
- 2.35 MB | 18次下載 | 5 積分
- 3STC15系列常用寄存器匯總免費下載
- 1.60 MB | 7次下載 | 5 積分
- 4AN158 GD32VW553 Wi-Fi開發指南
- 1.51MB | 2次下載 | 免費
- 5模擬電路仿真實現
- 2.94MB | 2次下載 | 免費
- 6AN148 GD32VW553射頻硬件開發指南
- 2.07MB | 1次下載 | 免費
- 7PZT驅動開關電路
- 0.09 MB | 1次下載 | 免費
- 8電子線路板及仿真實現
- 1.54MB | 1次下載 | 免費
本月
- 1ADI高性能電源管理解決方案
- 2.43 MB | 452次下載 | 免費
- 2免費開源CC3D飛控資料(電路圖&PCB源文件、BOM、
- 5.67 MB | 139次下載 | 1 積分
- 3基于STM32單片機智能手環心率計步器體溫顯示設計
- 0.10 MB | 133次下載 | 免費
- 4PIC12F629/675 數據手冊免費下載
- 2.38 MB | 36次下載 | 5 積分
- 5美的電磁爐維修手冊大全
- 1.56 MB | 24次下載 | 5 積分
- 6如何正確測試電源的紋波
- 0.36 MB | 19次下載 | 免費
- 7PIC16F716 數據手冊免費下載
- 2.35 MB | 18次下載 | 5 積分
- 8萬用表UT58A原理圖
- 0.09 MB | 9次下載 | 5 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935121次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
- 1.48MB | 420062次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233088次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191367次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183335次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81581次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73810次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65988次下載 | 10 積分
評論