V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
gouchaoer2
V2EX  ›  问与答

为啥 10 位的 I2C 地址 0x90 的 7 位表示为 0x48?

  •  
  •   gouchaoer2 · 73 天前 · 991 次点击
    这是一个创建于 73 天前的主题,其中的信息可能已经有所发展或是发生改变。
    如图:
    4 条回复    2024-08-29 08:40:21 +08:00
    lxh1983
        1
    lxh1983  
       73 天前
    因为 I2C 的 Bit0 是读/写标志,Bit1-Bit7 才是地址
    gouchaoer2
        2
    gouchaoer2  
    OP
       73 天前
    @lxh1983 能具体一点么?

    我看了一下 MAX9295 的 I2C 的二进制表示,好像 10 位往右移了 1bit 就是 7 位的,难道 linux 内核中 7 位的地址表示最后 1 位都是 0 ?
    10 位:010000000 0x80
    7 位: 01000000 0x40
    gouchaoer2
        3
    gouchaoer2  
    OP
       73 天前
    @lxh1983
    能具体一点么?

    我看了一下 MAX9295 的 I2C 的二进制表示,好像 10 位往右移了 1bit 就是 7 位的,难道 linux 内核中 7 位的地址表示最后 1 位都是 0 ?

    10 位 00010010000 0x90
    7 位 01001000 0x48
    sadfasdfa
        4
    sadfasdfa  
       72 天前 via iPhone
    厂家有给 i2c 地址构成的,一般 0 位代表读写标志
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1589 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 50ms · UTC 17:06 · PVG 01:06 · LAX 09:06 · JFK 12:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.