『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
12
返回列表 发新帖
楼主: xubin1012

[技术探讨] 小白求助8266串联两个I2C设备能不能这样写编码

[复制链接]

50

主题

1316

帖子

5016

积分

论坛DIY达人

积分
5016
金钱
3700
HASS币
20
发表于 2023-12-4 13:53:18 | 显示全部楼层
alei643 发表于 2023-12-4 13:37
ESP8266只支持一个I2C设备?我家里的用的几年前买的NodeMCU,还有sonoff SV都是挂了两个I2C的传感器的啊 ...

8266只有一个I2C控制器,但可以控制多个不同地址的I2C设备
回复

使用道具 举报

17

主题

165

帖子

1450

积分

金牌会员

Rank: 6Rank: 6

积分
1450
金钱
1285
HASS币
0
发表于 2023-12-4 13:57:43 | 显示全部楼层
我用的esp01s接了三个I2C可以正常使用,但是是三个不同设备
i2c:
  sda: GPIO1
  scl: GPIO3

sensor:
  - platform: bh1750
    name: "光传感器"
    address: 0x23
    update_interval: 2s

   - platform: aht10
    temperature:
      name: "AHT_wen_du_186"
      id: AHT_wen_du_186
    humidity:
      name: "AHT_shi_du_186"
      id: AHT_shi_du_186
    address: 0x38
    update_interval: 60s
    
  - platform: bmp085
    temperature:
      name: "bmp180_wen_du_186"
      id: bmp180_wen_du_186
    pressure:
      name: "bmp180_qi_ya_186"
      id: bmp180_qi_ya_186
    address: 0x77  
    update_interval: 60s


回复

使用道具 举报

38

主题

406

帖子

4223

积分

元老级技术达人

积分
4223
金钱
3762
HASS币
250
发表于 2023-12-4 14:23:04 | 显示全部楼层
你这个写法,,2个传感器用的2个地址,如果你能该地址的话,那为什么要2个I2C接口呢?还有就是,如果你要设置2个I2C接口,那你就不能把GPIO设置成一样啊,
回复

使用道具 举报

4

主题

51

帖子

348

积分

中级会员

Rank: 3Rank: 3

积分
348
金钱
297
HASS币
0
 楼主| 发表于 2023-12-4 14:28:15 | 显示全部楼层
csl0524 发表于 2023-12-4 13:57
我用的esp01s接了三个I2C可以正常使用,但是是三个不同设备

引脚串联到一起了吗
回复

使用道具 举报

22

主题

239

帖子

1535

积分

金牌会员

Rank: 6Rank: 6

积分
1535
金钱
1296
HASS币
0
发表于 2023-12-4 14:37:53 | 显示全部楼层

参考一下吧。  你可试度用不用的ID 分开 看看能不能找到你可以上ESPHOME 官网看看
i2c:
  - id: bus_a
    sda: D4
    scl: D3
    scan: True

sensor:
  - platform: wifi_signal
    name: "140 Home1 wifi"
    update_interval: 600s
    
  - platform: bh1750
    i2c_id: bus_a
    name: "140 BH1750 Illuminance"
    address: 0x23
    update_interval: 60s
回复

使用道具 举报

17

主题

165

帖子

1450

积分

金牌会员

Rank: 6Rank: 6

积分
1450
金钱
1285
HASS币
0
发表于 2023-12-4 15:02:40 | 显示全部楼层
xubin1012 发表于 2023-12-4 14:28
引脚串联到一起了吗

是的,没错
回复

使用道具 举报

4

主题

51

帖子

348

积分

中级会员

Rank: 3Rank: 3

积分
348
金钱
297
HASS币
0
 楼主| 发表于 2023-12-4 16:06:40 | 显示全部楼层
trz0332 发表于 2023-12-4 14:23
你这个写法,,2个传感器用的2个地址,如果你能该地址的话,那为什么要2个I2C接口呢?还有就是,如果你要设 ...

楼上有个大佬说  接地和接VCC i2c的地址会变  就是只配置一个i2c引脚 然后修改地址值就行了 这个地址怎么看呢
回复

使用道具 举报

4

主题

51

帖子

348

积分

中级会员

Rank: 3Rank: 3

积分
348
金钱
297
HASS币
0
 楼主| 发表于 2023-12-4 17:04:21 | 显示全部楼层
linoul 发表于 2023-12-4 13:52
BH1750模块还有个引脚 接地和接VCC i2c的地址会变 看下手册吧 就是只配置一个i2c引脚 然后修改地址值就行了 ...

另一个模块不接地了。接到多余的那个引脚上是吧
回复

使用道具 举报

11

主题

224

帖子

2233

积分

论坛DIY达人

积分
2233
金钱
1999
HASS币
40
发表于 2023-12-4 19:09:19 | 显示全部楼层
一组i2c可以接多个设备,但地址得不一样,地址具体多少你得看对应模块的,一般模块都有地址选择电阻,改一下位置然后看对应地址多少。应该不是你配置里的0x23和0x24这种
回复

使用道具 举报

17

主题

165

帖子

1450

积分

金牌会员

Rank: 6Rank: 6

积分
1450
金钱
1285
HASS币
0
发表于 2023-12-4 19:24:50 | 显示全部楼层
刚问了下chatgpt,回复说ADDR    ->  VCC后地址就是0x5C
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-5-23 14:47 , Processed in 0.099607 second(s), 29 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表