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

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

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

i2c tools命令使用示例詳解

麥辣雞腿堡 ? 來源:嵌入式Linux系統(tǒng)開發(fā) ? 作者:嵌入式Linux系統(tǒng)開 ? 2023-07-27 16:25 ? 次閱讀

i2cset:向i2c設(shè)備某個(gè)寄存器寫入值

Usage: i2cset [-f] [-y] [-m MASK] [-r] [-a] I2CBUS CHIP-ADDRESS DATA-ADDRESS [VALUE] ... [MODE]
  I2CBUS is an integer or an I2C bus name
  ADDRESS is an integer (0x03 - 0x77, or 0x00 - 0x7f if -a is given)
  MODE is one of:
    c (byte, no value)
    b (byte data, default)
    w (word data)
    i (I2C block data)
    s (SMBus block data)
    Append p for SMBus PEC
    
    f:強(qiáng)制訪問
    y:指令執(zhí)行自動(dòng)yes,否則會(huì)提示確認(rèn)執(zhí)行Continue? [Y/n] Y,不加參數(shù)y會(huì)有很多執(zhí)行提示,可以幫助判斷
    r:寫入后立即回讀寄存器的值,并將結(jié)果與寫入的值進(jìn)行比較
    i2cbus:總線編號(hào)
    chip-address:i2c設(shè)備地址
    data-address:i2c寄存器地址
    value 要寫入的值
    mode:指定讀取的大小,b字節(jié),w字,s是SMBus塊,i是i2c塊

設(shè)置i2c-10x20器件的0x77寄存器值為0x3f
./i2cset -f -y 1 0x20 0x77 0x3f

i2cget:讀取i2c設(shè)備某個(gè)寄存器的值

Usage: i2cget [-f] [-y] [-a] I2CBUS CHIP-ADDRESS [DATA-ADDRESS [MODE]]
  I2CBUS is an integer or an I2C bus name
  ADDRESS is an integer (0x03 - 0x77, or 0x00 - 0x7f if -a is given)
  MODE is one of:
    b (read byte data, default)
    w (read word data)
    c (write byte/read byte)
    Append p for SMBus PEC
    
    f:強(qiáng)制訪問
    y:關(guān)閉交互模式,不會(huì)提示警告信息
    i2cbus:總線編號(hào)
    chip-address:i2c設(shè)備地址
    data-address:i2c寄存器地址
    mode:指定讀取的大小,b字節(jié),w字,s是SMBus塊,i是i2c塊

讀取i2c-10x20器件的0x77寄存器值
./i2cget -f -y 1 0x20 0x77

i2cdump:讀取某個(gè)i2c設(shè)備所有寄存器的值

Usage: i2cdump [-f] [-y] [-r first-last] [-a] I2CBUS ADDRESS [MODE [BANK [BANKREG]]]
  I2CBUS is an integer or an I2C bus name
  ADDRESS is an integer (0x03 - 0x77, or 0x00 - 0x7f if -a is given)
  MODE is one of:
    b (byte, default)
    w (word)
    W (word on even register addresses)
    s (SMBus block)
    i (I2C block)
    c (consecutive byte)
    Append p for SMBus PEC
    
    r:指定寄存器范圍,只能掃描從 first 到 last 區(qū)域
    f:強(qiáng)制訪問設(shè)備
    y:關(guān)閉人機(jī)交互模式
    i2cbus:總線編號(hào)
    address:指定設(shè)備地址
    mode:指定讀取的大小,b字節(jié),w字,s是SMBus塊,i是i2c塊

讀取i2c1上0x38器件的所有寄存器
./i2cdump -f -y -a 1 0x38

一般寄存器都是8位地址的,i2cdump、i2cget、i2cset 也是設(shè)置讀取8位的地址,如果一次超過8位,需要用 i2ctransfer。

i2ctransfer:一次性讀寫多個(gè)字節(jié)

Usage: i2ctransfer [-f] [-y] [-v] [-V] [-a] I2CBUS DESC [DATA] [DESC [DATA]]...
  I2CBUS is an integer or an I2C bus name
  DESC describes the transfer in the form: {r|w}LENGTH[@address]
    1) read/write-flag 2) LENGTH (range 0-65535) 3) I2C address (use last one if omitted)
  DATA are LENGTH bytes for a write message. They can be shortened by a suffix:
    = (keep value constant until LENGTH)
    + (increase value by 1 until LENGTH)
    - (decrease value by 1 until LENGTH)
    p (use pseudo random generator until LENGTH with value as seed)

查看系統(tǒng)上存在的 i2c 總線及其設(shè)備地址

ls /sys/bus/i2c/devices/

圖片

可以在這里查看實(shí)際的設(shè)備,然后對比 i2c-tools 掃描出來的對不對。

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

    關(guān)注

    5088

    文章

    19159

    瀏覽量

    306517
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5359

    瀏覽量

    120819
  • 命令
    +關(guān)注

    關(guān)注

    5

    文章

    692

    瀏覽量

    22065
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    I2C總線原理詳解

    I2C兩線式串行總線通訊協(xié)議,它是由飛利浦開發(fā)的,主要用于連接微控制器及其外圍設(shè)備之間,它是由數(shù)據(jù)線SDA和信號(hào)線SCL構(gòu)成的,可發(fā)送和接收數(shù)據(jù)即在MUC和I2C設(shè)備之間,I2CI2C
    發(fā)表于 10-18 17:20 ?2425次閱讀
    <b class='flag-5'>I2C</b>總線原理<b class='flag-5'>詳解</b>

    I2C通信詳解

    救!《【STM32-I2C學(xué)習(xí)總結(jié)】STM32:硬件-IIC詳解 , 固件庫編程 , 手把手教你實(shí)現(xiàn)IIC》這里是我以前寫的,硬件實(shí)現(xiàn)I2C的一個(gè)文章,文章末尾有軟件實(shí)現(xiàn)I2C的方法,
    發(fā)表于 02-28 11:24

    I2C Guid I2C指南

    I2C Guid  I2C指南 The I2C bus is used in a wide rangeof applications because it is simpleand
    發(fā)表于 04-23 13:55 ?36次下載

    I2C總線詳解

    I2C總線定義  I2C(Inter-Integrated Circuit)總線是一種由PHILIPS公司開發(fā)的兩線式串行總線,用于連接微控制器及其外圍設(shè)備。I2C總線產(chǎn)生于在80年代,最初為音頻和視頻設(shè)備開發(fā),如今
    發(fā)表于 06-30 11:09 ?3848次閱讀

    i2c

    單片機(jī)i2c總線操作;單片機(jī)i2c總線操作;單片機(jī)i2c總線操作;
    發(fā)表于 05-17 11:09 ?35次下載

    嵌入式linux應(yīng)用讀寫i2c示例

    這里分享一個(gè)嵌入式linux讀寫24c02的i2c程序ioctl函數(shù)的使用:原型:struct ioctl(struct file *file,unsigned int cmd,unsigned
    發(fā)表于 11-01 16:57 ?12次下載
    嵌入式linux應(yīng)用讀寫<b class='flag-5'>i2c</b><b class='flag-5'>示例</b>

    STM32學(xué)習(xí)之I2C協(xié)議(讀寫EEPROM)

    EEPROM)。# 一、I2C協(xié)議(讀寫EEPROM)1、SCL2、SDA二、代碼1.i2c.c代碼如下(示例):#include "i2c
    發(fā)表于 11-30 15:21 ?32次下載
    STM32學(xué)習(xí)之<b class='flag-5'>I2C</b>協(xié)議(讀寫EEPROM)

    Linux應(yīng)用開發(fā)【第十二章】I2C編程應(yīng)用開發(fā)

    12.2.2 簡述I2C的linux驅(qū)動(dòng) 1) I2C核心層: 2) I2C總線驅(qū)動(dòng)層: 3) I2C總線驅(qū)動(dòng)層: 12.3 在linux
    的頭像 發(fā)表于 12-10 19:28 ?946次閱讀
    Linux應(yīng)用開發(fā)【第十二章】<b class='flag-5'>I2C</b>編程應(yīng)用開發(fā)

    STM32F103硬件I2C Slave

    MCU:STM32F103IDE:STM32CubeIDEHAL庫硬件I2C當(dāng)作Slave,模擬EEPROM行為測試工具:樹莓派為I2C主機(jī),使用I2C-tools進(jìn)行測試配置I2C:
    發(fā)表于 12-20 19:38 ?52次下載
    STM32F103硬件<b class='flag-5'>I2C</b> Slave

    硬件I2C與模擬I2C

    硬件I2C對應(yīng)芯片上的I2C外設(shè),有相應(yīng)I2C驅(qū)動(dòng)電路,其所使用的I2C管腳也是專用的,因而效率要遠(yuǎn)高于軟件模擬的I2C;一般也較為穩(wěn)定,但
    發(fā)表于 12-28 19:14 ?81次下載
    硬件<b class='flag-5'>I2C</b>與模擬<b class='flag-5'>I2C</b>

    適用于Megawin 8051 MCU的I2C(軟件模擬)示例代碼

    適用于Megawin 8051 MCU的I2C(軟件模擬)示例代碼
    發(fā)表于 06-30 17:22 ?2次下載
    適用于Megawin 8051 MCU的<b class='flag-5'>I2C</b>(軟件模擬)<b class='flag-5'>示例</b>代碼

    MA82G5D系列I2C從模式示例代碼

    MA82G5D系列I2C從模式示例代碼文件免費(fèi)下載。
    發(fā)表于 06-28 17:20 ?1次下載
    MA82G5D系列<b class='flag-5'>I2C</b>從模式<b class='flag-5'>示例</b>代碼

    i2c-tools工具的安裝和使用簡單介紹

    i2c-tools工具是一個(gè)專門調(diào)試i2c的,開源,可獲取掛載的設(shè)備及設(shè)備地址,還可以讀寫I2C設(shè)備寄存器。
    的頭像 發(fā)表于 11-17 09:52 ?9827次閱讀

    CW32L083 I2C主板發(fā)送編程示例

    CW32L083的I2C主機(jī)發(fā)送示例。
    的頭像 發(fā)表于 06-09 16:54 ?17.9w次閱讀

    i2c-tools工具的介紹

    i2c-tools 簡介 在嵌入式開發(fā)中,有時(shí)候需要確認(rèn)硬件是否正常連接,設(shè)備是否正常工作,設(shè)備的地址是多少等等,這里我們就需要使用一個(gè)用于測試I2C 總線的工具:i2c-tools
    的頭像 發(fā)表于 07-27 16:12 ?2357次閱讀