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

 找回密码
 立即注册
查看: 922|回复: 7

[技术探讨] 求助,要如何实现下拉电阻切换呢?

[复制链接]

3

主题

42

帖子

398

积分

中级会员

Rank: 3Rank: 3

积分
398
金钱
356
HASS币
0
发表于 2022-12-21 19:00:24 | 显示全部楼层 |阅读模式
想求各位是否有案例,
目的是想实现页面按钮触发蜂鸣器,它是靠下拉电阻发声的。
同时也想知道为什么无法设置初始下拉电阻。

switch:
  - platform: gpio
    pin:
      number: GPIO2
      mode: INPUT_PULLUP
    id: laba1


    on_turn_on:
    - switch.pin: INPUT_PULLDOWN
    on_turn_off:
    - switch.pin: INPUT_PULLUP







后面这一段我是乱写的,求大神帮忙


回复

使用道具 举报

0

主题

24

帖子

287

积分

中级会员

Rank: 3Rank: 3

积分
287
金钱
263
HASS币
0
发表于 2022-12-21 22:02:40 | 显示全部楼层
下拉电阻是检测信号的时候用的,你这是要输出低电平吧?
好像有个invert还是啥的参数,你研究看看? 我也是今天看GPIO看到,没去了解
回复

使用道具 举报

17

主题

774

帖子

5380

积分

论坛元老

Rank: 8Rank: 8

积分
5380
金钱
4601
HASS币
0
发表于 2022-12-22 09:33:21 | 显示全部楼层
inverted (Optional, boolean): Whether to invert the binary state, i.e. report ON states as OFF and vice versa. Defaults to false.

如果默认配置不好用,加上inverted应该就反转了。

switch:
  - platform: gpio
    pin:
      number: GPIO2
      inverted: true
    id: laba1

这样试试,不需要专门在turn_on和turn_off那里做什么,gpio switch本身就是 高电平和低电平的切换,用着不对劲就反转一下就好。

然后GPIO0/2/5/12/15都Strapping PIN,尽量少碰,除非你知道他们怎么用。换个无关的PIN就好了,比如IO21这种。

至于你要是想要初始化时候操作的话,先配置好swtch,然后在esp32的启动那里调用就可以了。

比如

esphome:
  on_boot:
    then:
    - switch.turn_on: laba1

回复

使用道具 举报

3

主题

42

帖子

398

积分

中级会员

Rank: 3Rank: 3

积分
398
金钱
356
HASS币
0
 楼主| 发表于 2022-12-22 11:02:43 | 显示全部楼层
sirakawa 发表于 2022-12-22 09:33
inverted (Optional, boolean): Whether to invert the binary state, i.e. report ON states as OFF and v ...

感谢讲解,我先试试去。
回复

使用道具 举报

4

主题

341

帖子

2630

积分

金牌会员

Rank: 6Rank: 6

积分
2630
金钱
2289
HASS币
0
发表于 2022-12-22 14:24:59 | 显示全部楼层
MCU的IO口是驱动不动蜂鸣器的,加个三极管吧
回复

使用道具 举报

3

主题

42

帖子

398

积分

中级会员

Rank: 3Rank: 3

积分
398
金钱
356
HASS币
0
 楼主| 发表于 2022-12-22 16:13:54 | 显示全部楼层
Solita 发表于 2022-12-22 14:24
MCU的IO口是驱动不动蜂鸣器的,加个三极管吧

感谢提醒,我说怎么都不行,哈哈,果然这个坑比较深啊。
回复

使用道具 举报

2

主题

60

帖子

317

积分

中级会员

云端执行与狗不得入内

Rank: 3Rank: 3

积分
317
金钱
257
HASS币
10
发表于 2022-12-22 19:19:54 | 显示全部楼层
你可能对上拉有点误解,正如他的名字 INPUT_PULLUP 说的那样,下拉是一种辅助输入的方式,不是一种输出,不能带负载。蜂鸣器应该用 OUTPUT 的输出加上三极管
回复

使用道具 举报

3

主题

42

帖子

398

积分

中级会员

Rank: 3Rank: 3

积分
398
金钱
356
HASS币
0
 楼主| 发表于 2022-12-26 09:28:31 | 显示全部楼层
Arnie97 发表于 2022-12-22 19:19
你可能对上拉有点误解,正如他的名字 INPUT_PULLUP 说的那样,下拉是一种辅助输入的方式,不是一种输出,不 ...

感谢回复,感觉这esphome这东西教程好少。
虽然官网有教程,对于没有的产品型号,就比较头痛了,哈哈
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-6-2 13:48 , Processed in 0.109794 second(s), 29 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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