那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

從USB到I2C的橋接

星星科技指導(dǎo)員 ? 來源:ADI ? 作者:ADI ? 2023-01-12 15:06 ? 次閱讀

該電路提供直接I2電腦 USB 端口的 C 接口。USB轉(zhuǎn)1線加密狗為PC提供1-Wire主控器,用于控制1-WireI/O擴展器。此 I/O 擴展器具有兩個雙向開漏端口,PC 可以寫入和讀取這些端口。通過在這兩個端口上生成正確的邏輯信號,PC可以模擬I?2C 主控。

當您需要直接 I 時2C接口到您的PC,有幾個選項可用。例如,PC的并行端口可以模擬I2C主機。然而,新PC通常缺少此端口,并且Windows的現(xiàn)代變體(Windows XP和Windows Vista)不允許輕松訪問它。

更好的方法是使用USB端口,但該技術(shù)需要復(fù)雜的驅(qū)動程序,并且通常還需要微控制器,而微控制器又需要固件。不是你能在一個下午建造的東西!有許多商業(yè)版本可用,但它們并不便宜。另一方面,圖1的電路可以快速構(gòu)建,并且可以與LabVIEW和Visual Basic等多種編程語言一起運行。

poYBAGO_tDWAJlLwAABBm3eAzQA938.png

圖1.該電路提供I2計算機 USB 端口的 C 接口。

U1 (DS9490R)是一款USB轉(zhuǎn)1線橋接器,為PC增加了一個1線主機。連接至1-Wire網(wǎng)絡(luò)的1-WireI/O擴展器(U2、DS2413P)提供兩個雙向漏極開路端口,可通過U1由PC控制。這就是創(chuàng)建 I 所需的所有硬件2C 主控。

軟件

對于缺少硬件的微控制器,I2C master,“位敲擊”是實現(xiàn)軟件 I 的行之有效的方法2C 主控。這是用于啟用軟件 I 的技術(shù)2此平臺的 C 母版。

軟件生成 I2通過控制 U2 的 PIOA 和 PIOB(引腳 6 和 4)的邏輯電平來發(fā)出 C 信號。例如,要創(chuàng)建起始條件,SDA 必須在 SCL 為高時從高過渡到低。將 SCL (PIOA) 驅(qū)動為高電平,然后將 SDA (PIOB) 驅(qū)動到高電平,然后將 SDA 拉低。因此,軟件實現(xiàn)了 I2C 通過控制 PIOA 和 PIOB 來控制。DS2413數(shù)據(jù)資料中的流程圖顯示了這種PIO功能(圖2)。

poYBAGO_tDyAa-srAADeBdtIzag887.png

圖2.PIO功能流程圖,取自DS2413數(shù)據(jù)資料。

要更改PIO輸出,必須首先通過ROM功能對器件進行尋址。該系統(tǒng)僅包含一個1-Wire從機,因此您可以使用“skip ROM”命令跳過復(fù)雜的尋址過程。然后,通過發(fā)送“5A”命令寫入 PIO 輸出鎖存器。1-Wire I/O擴展器(U2)包括一個8位寄存器,其兩個LSB連接到PIOA和PIOB。(其他六位不在乎。

為了更改邏輯狀態(tài),新數(shù)據(jù)將發(fā)送兩次:一次按原樣發(fā)送,一次反轉(zhuǎn)。從機(U2)通過向主站返回“AA”命令來確認無差錯接收,并通過發(fā)送新的輸出狀態(tài)來結(jié)束。整個序列現(xiàn)在可以重新開始,也可以通過1-Wire主機的復(fù)位中止。因此,您必須為每個輸出更改傳輸四個字節(jié)(不包括跳過ROM和5A命令)。例如,您必須執(zhí)行以下序列來生成 I2C 啟動命令:

主模式 數(shù)據(jù) 評論
TX (重置) 重置總線
RX (存在) DS2413 存在
TX 0xCC 跳過只讀存儲器
TX 0x5A 寫入 PIO 寄存器
TX 0xFF SCL=1 & SDA=1
TX 0x00 倒置數(shù)據(jù)
RX 0xAA 接收數(shù)據(jù)
RX 0x0F 返回輸出狀態(tài)
TX 0xFD SCL=1 & SDA=0
TX 0x02 倒置數(shù)據(jù)
RX 0xAA 收到的數(shù)據(jù)
RX 0x2D 返回輸出狀態(tài)

類似的序列實現(xiàn)其他事件,如發(fā)送字節(jié)、確認和停止。

Maxim為DS9490提供軟件驅(qū)動程序,以及支持Microsoft .NET平臺的Windows1-Wire軟件開發(fā)套件(SDK)。為了說明,我們可以實現(xiàn)一個 I2LabVIEW 中的 C master,使用 其 .NET 支持。這僅在安裝支持.NET的1-Wire驅(qū)動程序時才有效。另一個先決條件是安裝 Microsoft .NET 框架和 Visual J# 可再發(fā)行組件包。

為防止其他應(yīng)用訪問1-Wire網(wǎng)絡(luò),VI“I2C 初始化“(其中 VI 是 LabVIEW 術(shù)語,意思是 虛擬 儀器),初始化 U1 并 使 LabVIEW 獨占 訪問 1-Wire 網(wǎng)絡(luò) (圖 3)。然后發(fā)出1-Wire復(fù)位,然后發(fā)出跳脈沖命令(CC),最后發(fā)出PIO寫入命令(5A)。

pYYBAGO_sX-AMrTuAAAQ9SyB6kw120.gif?imgver=1

圖3.六“我2“C 初始化”初始化DS2413,之后即可接收I/O數(shù)據(jù)。

從站(U2)現(xiàn)在已準備好接受PIO的數(shù)據(jù)。六“I2C 時鐘“將 SCL 線從低電平切換到高電平(圖 4)。SDA可以設(shè)置高或低,VI返回SDA狀態(tài)。您可以通過連續(xù)調(diào)用此函數(shù) 8 次(傳輸?shù)拿總€位一個)來寫入完整的字節(jié)。如果從站返回數(shù)據(jù),則SDA由主站驅(qū)動高電平。為了傳輸“0”,從機可以將SDA拉低(這是可以的,因為PIOB是漏極開路輸出)。由于U2會自動返回更新的輸出狀態(tài),因此不需要特殊的讀取操作(參見VI“Send I2C 字節(jié)“和”Get I2C 字節(jié)“)。

poYBAGO_sYCAB9UnAAAc_49epgA627.gif?imgver=1

圖4.六“I2C 時鐘“將 SCL 從低切換到高。SDA可以設(shè)置為“I2C 寫入“操作并讀取”I2C 讀取“操作。

VIs“I2C開始“,”I2C停止“和”I2C acknowledge“使用相同的結(jié)構(gòu)來生成適當?shù)腟DA和SCL信號。通過組合這些VI,您可以對完整的I2C 讀取或?qū)懭霑挕榱苏f明通信會話(圖5),我們讀取實時時鐘的寄存器0(DS1337)。然后,該設(shè)備以0x39應(yīng)答,這是計算秒數(shù)的寄存器的內(nèi)容。寄存器地址設(shè)置為0x00,從地址設(shè)置為0xD0,要讀取的字節(jié)數(shù)設(shè)置為1。示波器圖像(圖6)顯示了電路針對這些設(shè)置產(chǎn)生的信號。

pYYBAGO_sYGAGsydAAAnPzVNG84653.gif?imgver=1

圖5.如何使用圖1電路讀取寄存器的示例。

poYBAGO_sYOAWmb6AABH_u-aXjM316.gif?imgver=1

圖6.讀取DS1337的寄存器0。S=開始,A=確認,Sr=重復(fù)啟動,P=停止。從主到從是陰影;從奴隸到主人是白人。

由于軟件開銷很大,該電路產(chǎn)生信號的速率被限制在大約20bps。但是,這個想法可以用不同的編程語言實現(xiàn)。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 微控制器
    +關(guān)注

    關(guān)注

    48

    文章

    7649

    瀏覽量

    152109
  • usb
    usb
    +關(guān)注

    關(guān)注

    60

    文章

    7980

    瀏覽量

    266095
  • 1-Wire
    +關(guān)注

    關(guān)注

    0

    文章

    49

    瀏覽量

    21354
收藏 人收藏

    評論

    相關(guān)推薦

    Silicon Labs推出業(yè)界首款USB轉(zhuǎn)I2S音訊晶片

    Silicon Laboratories (芯科實驗室有限公司)宣布推出業(yè)界首款無需外部石英震蕩器的USB轉(zhuǎn)I2S音訊晶片,支援基于USB
    發(fā)表于 10-19 15:55 ?4519次閱讀

    用于USB-I2C的Matlab應(yīng)用程序如何開發(fā)

    你好,我試圖在Matlab(COM接口)中編寫一個應(yīng)用程序,用于UB-I2C(PSoC MixPro 3)。這些文件解釋了如何開發(fā)這樣的應(yīng)用程序,但不幸的是,不是MATLAB。AN7079-開發(fā)
    發(fā)表于 02-12 08:45

    CY3240 USB轉(zhuǎn)I2C套件中使用的u***toiic .hex文件有下載鏈接嗎

    我正在尋找在CY32 40 USBI2C套件中使用的UBtotoix.HEX文件來編程CY8C24894。有下載的鏈接嗎? 以上來自于
    發(fā)表于 03-08 11:16

    CANBooBooLoad和I2C-CAN可以嗎?

    坐在主人和引導(dǎo)主機。附件是canbootloader(I2C可以),bootloadable和詳細的pdfexplaining實施。問候,SobiCANBooBooLoad和I2C-CAN
    發(fā)表于 07-25 08:34

    PCI Express交換及芯片的展望

    交換芯片擴展,Gen 2提供簡化的機會 當I/O互連世界PCI過渡到PCI Express (PCIe)時,
    發(fā)表于 02-09 11:46 ?6408次閱讀
    PCI Express交換及<b class='flag-5'>橋</b><b class='flag-5'>接</b>芯片的展望

    富士通推出USB 3.0 SATA芯片MB86C30A

    富士通推出USB 3.0 SATA芯片MB86C30A 富士通(Fujitsu)微電子(上海)有限公司日前宣布推出業(yè)界領(lǐng)先的USB 3
    發(fā)表于 08-06 08:05 ?2394次閱讀

    富士通USB 3.0-SATA芯片獲超速USB合格證書

    富士通USB 3.0-SATA芯片獲超速USB合格證書 富士通微電子(上海)有限公司宣布富士通微電子的USB 3.0-SATA
    發(fā)表于 02-04 16:33 ?854次閱讀

    AN1941 - Microchip USB 2.0集線器的USB轉(zhuǎn)I2C功能

    憑借Microchip USB 2.0集線器的USB轉(zhuǎn)I2C功能,系統(tǒng)設(shè)計人員可以擴展系統(tǒng)控制并有可能減少BOM。在系統(tǒng)設(shè)計中使用該功能
    發(fā)表于 03-22 11:34 ?7次下載
    AN1941 - Microchip <b class='flag-5'>USB</b> 2.0集線器的<b class='flag-5'>USB</b>轉(zhuǎn)<b class='flag-5'>I2C</b><b class='flag-5'>橋</b><b class='flag-5'>接</b>功能

    PL230 USB串行RS232控制器的數(shù)據(jù)手冊免費下載

    本文檔的主要內(nèi)容詳細介紹的是PL230 USB串行RS232控制器的數(shù)據(jù)手冊免費下載。
    發(fā)表于 11-26 16:35 ?6次下載
    PL230 <b class='flag-5'>USB</b><b class='flag-5'>到</b>串行RS232<b class='flag-5'>橋</b><b class='flag-5'>接</b>控制器的數(shù)據(jù)手冊免費下載

    PL2303 USB串行芯片系列Windows驅(qū)動程序安裝程序用戶手冊

    本文檔的主要內(nèi)容詳細介紹的是PL2303 USB串行芯片系列Windows驅(qū)動程序安裝程序用戶手冊免費下載。
    發(fā)表于 04-23 17:14 ?11次下載
    PL2303 <b class='flag-5'>USB</b><b class='flag-5'>到</b>串行<b class='flag-5'>橋</b><b class='flag-5'>接</b>芯片系列Windows驅(qū)動程序安裝程序用戶手冊

    PL2303 USB串行芯片Windows驅(qū)動程序用戶手冊和最新驅(qū)動

    本文檔的主要內(nèi)容詳細介紹的是PL2303 USB串行芯片Windows驅(qū)動程序用戶手冊和最新驅(qū)動應(yīng)用程序免費下載。
    發(fā)表于 06-15 08:00 ?3次下載
    PL2303 <b class='flag-5'>USB</b><b class='flag-5'>到</b>串行<b class='flag-5'>橋</b><b class='flag-5'>接</b>芯片Windows驅(qū)動程序用戶手冊和最新驅(qū)動

    用于MiSTer的USB

    電子發(fā)燒友網(wǎng)站提供《用于MiSTer的USB板.zip》資料免費下載
    發(fā)表于 08-18 15:02 ?0次下載
    用于MiSTer的<b class='flag-5'>USB</b><b class='flag-5'>橋</b><b class='flag-5'>接</b>板

    USB I2C

    發(fā)表于 11-17 12:42 ?0次下載
    <b class='flag-5'>從</b> <b class='flag-5'>USB</b> <b class='flag-5'>到</b> <b class='flag-5'>I</b>2<b class='flag-5'>C</b> 的<b class='flag-5'>橋</b><b class='flag-5'>接</b>

    CP2101-GM高度集成的USBUART控制器

    CP2101-GM是一款高度集成的USBUART控制器,提供了一種簡單的解決方案,可使用最少的組件和PCB空間將RS-232設(shè)計更新為USB
    發(fā)表于 05-18 15:19 ?438次閱讀

    Microchip集線器的USB轉(zhuǎn)I2S功能

    電子發(fā)燒友網(wǎng)站提供《Microchip集線器的USB轉(zhuǎn)I2S功能.pdf》資料免費下載
    發(fā)表于 09-19 16:29 ?0次下載
    Microchip集線器的<b class='flag-5'>USB</b>轉(zhuǎn)<b class='flag-5'>I</b>2S<b class='flag-5'>橋</b><b class='flag-5'>接</b>功能
    专业百家乐筹码| 欧凯百家乐的玩法技巧和规则 | 皇家百家乐的玩法技巧和规则| 澳门百家乐官网网上娱乐场开户注册| 大发888真人娱乐场游戏平台| 好运来百家乐现金网| 百家乐官网游戏规则玩法| 百家乐娱乐城| 真人百家乐官网最高赌注| 凯旋门百家乐官网游戏| 大发888大发8668| 百家乐是否能赢| 百家乐官网博彩的玩法技巧和规则 | 鼎尚百家乐的玩法技巧和规则| 百家乐官网庄牌闲牌| 澳门百家乐官网规则视频| 战神国际娱乐| 水果机遥控| 作弊百家乐赌具| 金花百家乐官网的玩法技巧和规则| 百家乐官网游戏真钱游戏| 足球博彩论坛| 大发888bjl| 缅甸百家乐赌场娱乐网规则| 诚信百家乐平台| 免费百家乐官网缩水| 百家乐官网游戏模拟| 百家乐官网网络赌博地址| 百家乐官网登封代理| 百家乐便利| 百家乐出千工具价格| 百家乐分析概率原件| 百家乐官网博牌规| 百家乐官网最佳下注方法| 巴彦淖尔市| 安阳市| 真人斗地主| 博彩| 三穗县| 卫辉市| 至尊百家乐官网facebook|