本應用筆記介紹如何通過吉比特多媒體串行鏈路(GMSL) SerDes的遠端I2C接口訪問16位寄存器地址。
引言
Maxim吉比特多媒體串行鏈路(GMSL)串行器/解串器(SerDes)系列包括MAX9249、MAX9259、MAX9260、MAX9263和MAX9264,具有UART/I2C轉換器,用于遠端控制I2C接口外設。這些外設包括相機傳感器、I/O端口擴展器、音頻模/數轉換器(ADC)和數/模轉換器(DAC),以及LED照明。
在GMSL數據資料和相關技術文件中,通過UART端口直接連接至電子控制單元(ECU)的一端被稱為“本地端”,另一端被稱為“遠端”。
I2C外設接口是控制通道基本模式中的默認設置。GMSL系列SerDes只轉換器件地址不同于GMSL串行器或解串器地址的UART數據包。UART/I2C轉換器接收(比如)汽車ECU發出的UART讀或寫數據包,并將其轉換為I2C主控制器協議。
I2C接口支持外設使用的多種不同格式,有或沒有變址寄存器以及8為或16位變址寄存器地址均可,通過遠端寄存器位I2CMETHOD (寄存器0x05位7)設置實現。
對于沒有變址寄存器的外設:
設置I2CMETHOD = 1,按照標準GMSL UART協議發送讀/寫數據包。UART/I2C轉換器將去掉讀/寫數據包中的8位寄存器地址,如圖1所示。
圖1. 命令模式(I2CMETHOD = 1)下UART和I2C之間的格式轉換
對于采用8位變址寄存器的外設:
設置I2CMETHOD = 0,按照標準GMSL UART協議發送讀/寫數據包,如圖2所示。
圖2. 帶有寄存器地址(I2CMETHOD = 0)時,UART和I2C之間的格式轉換
對于采用16位變址寄存器的外設:
3.1. 寫操作。設置I2CMETHOD = 1,按照標準GMSL UART協議產生寫數據包。將16為變址寄存器地址置于數據的前2個字節,使字節的數量等于發送數據的原始數量加2。UART/I2C轉換器將去掉標準寫數據包中的8位寄存器地址,如圖1所示。
例如,如果外設需要16位變址寄存器和8位數據,類似于:
假設device_address = 0x22,index_register_address = 0x3344,及data = 0x55。主控ECU需要將數據包0x79 + 0x22 + 0x00 + 0x03 + 0x33 + 0x44 + 0x55寫入UART端口,然后讀取來自UART端口的ACK字節,檢查寫操作是否成功。
0x79為同步字節,
0x22為帶有寫操作指示的器件地址,
0x00為虛擬字節,可為任意值;UART/I2C轉換器在轉換時將其刪除,
0x03為字節數量,
0x33為16位變址寄存器地址的高位字節,
0x44為16為變址寄存器地址的低位字節,
0x55為8位數據。
UART/I2C轉換器之后,數據包將變為:
3.2. 讀操作。完成寫操作需要2個UART數據包,1個寫數據包后跟1個讀數據包。寫數據包設置變址寄存器地址,讀數據包讀取數據。
假設外設的器件地址和變址寄存器地址相同,需要讀取1個數據字節,需按以下步驟進行:
設置I2CMETHOD = 1,
ECU發送寫數據包0x79 + 0x22 + 0x00 + 0x02 + 0x33 + 0x44至UART端口,
ECU從UART端口讀取ACK字節,
ECU發送讀數據包0x79 + 0x23 + 0x00 + 0x01至UART端口,
ECU從UART端口讀取ACK字節,
然后ECU從UART端口讀取數據。
對于寫數據包:
0x79為同步字節,
0x22為帶有寫操作指示的器件地址,
0x00為虛擬字節,可為任意值;UART/I2C轉換器在轉換時將其刪除,
0x02為字節數量,
0x33為16位變址寄存器地址的高位字節,
0x44為16位變址寄存器地址的低位字節。
對于讀數據包:
0x79為同步字節,
0x23為帶有讀操作指示的器件地址,
0x00為虛擬字節,可為任意值;UART/I2C轉換器在轉換時將其刪除,
0x01為字節數量。
審核編輯:郭婷
-
led
+關注
關注
242文章
23356瀏覽量
663194 -
寄存器
+關注
關注
31文章
5363瀏覽量
121164 -
dac
+關注
關注
43文章
2309瀏覽量
191567
發布評論請先 登錄
相關推薦
MM32F013x上實現I2C多地址的功能應用
通過SerDes遠端I2C接口訪問16位I2C外設寄存器地址
![<b class='flag-5'>通過</b><b class='flag-5'>SerDes</b><b class='flag-5'>遠端</b><b class='flag-5'>I2C</b><b class='flag-5'>接口</b><b class='flag-5'>訪問</b><b class='flag-5'>16</b><b class='flag-5'>位</b><b class='flag-5'>I2C</b><b class='flag-5'>外設</b><b class='flag-5'>寄存器</b><b class='flag-5'>地址</b>](https://file1.elecfans.com//web2/M00/A6/22/wKgZomUMO-aAQ9mAAAAUHIYrAoc014.gif)
I2C LCD 器件通過驅動帶有 I2C 接口的 2 線式 16 字符 LCD
![<b class='flag-5'>I2C</b> LCD 器件<b class='flag-5'>通過</b>驅動帶有 <b class='flag-5'>I2C</b> <b class='flag-5'>接口</b>的 2 線式 <b class='flag-5'>16</b> 字符 LCD](https://file.elecfans.com/web2/M00/49/F4/pYYBAGKhvHyAbj1DAAAxBaVmYwk008.png)
Atmel SAMC21的I2C驅動寄存器操作和寄存器代碼免費下載
具有中斷輸出和配置寄存器的低壓 16 位 I2C 和 SMBus I/O 擴展器-NCA9555
![具有中斷輸出和配置<b class='flag-5'>寄存器</b>的低壓 <b class='flag-5'>16</b> <b class='flag-5'>位</b> <b class='flag-5'>I</b>2<b class='flag-5'>C</b> 和 SMBus <b class='flag-5'>I</b>/O 擴展<b class='flag-5'>器</b>-NCA9555](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
具有中斷輸出和配置寄存器的 PCA9535 遠程 16位I2C和SMBus I/O擴展器數據表
![具有中斷輸出和配置<b class='flag-5'>寄存器</b>的 PCA9535 遠程 <b class='flag-5'>16</b><b class='flag-5'>位</b><b class='flag-5'>I2C</b>和SMBus <b class='flag-5'>I</b>/O擴展<b class='flag-5'>器</b>數據表](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
具有中斷輸出、復位和配置寄存器的PCA9539遠程16位I2C 和SMBus 低功耗 I/O 擴展器數據表
![具有中斷輸出、復位和配置<b class='flag-5'>寄存器</b>的PCA9539遠程<b class='flag-5'>16</b><b class='flag-5'>位</b><b class='flag-5'>I2C</b> 和SMBus 低功耗 <b class='flag-5'>I</b>/O 擴展<b class='flag-5'>器</b>數據表](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
具有中斷輸出和配置寄存器的PCA9555遠程16位I2C和 SMBus I/O擴展器數據表
![具有中斷輸出和配置<b class='flag-5'>寄存器</b>的PCA9555遠程<b class='flag-5'>16</b><b class='flag-5'>位</b><b class='flag-5'>I2C</b>和 SMBus <b class='flag-5'>I</b>/O擴展<b class='flag-5'>器</b>數據表](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
PCA9554A具有中斷輸出和配置寄存器的遠程8位I2C和SMBus I/O擴展器數據表
![PCA9554A具有中斷輸出和配置<b class='flag-5'>寄存器</b>的遠程8<b class='flag-5'>位</b><b class='flag-5'>I2C</b>和SMBus <b class='flag-5'>I</b>/O擴展<b class='flag-5'>器</b>數據表](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
評論