[技术讨论] 普通IO口检测外部外部悬空、高电平、低电平

[复制链接]
2335|11
 楼主| 代码虾2号 发表于 2022-7-5 17:10 | 显示全部楼层 |阅读模式
本帖最后由 代码虾2号 于 2022-7-12 18:17 编辑

从网上看到一中能够分析外部电平的电路,能够检测外部三种状态(外部悬空、外部高电平、外部低电平),但是每个元器件参数都需要计算设计,在这里不是特别明白,有人能够帮忙分析下电路原理吗。还有有什么好的办法能够实现MCU对外部三种状态检测的电路,最好是光耦隔离的。后面附图
更新图纸参数:2022.7.12新

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
qwer345 发表于 2022-7-6 09:00 | 显示全部楼层
LcwSwust 发表于 2022-7-6 10:04 | 显示全部楼层
没看懂楼主的图,自己胡乱画了个,需要两个IO口,或一个ADC脚,看看可以不。




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| 代码虾2号 发表于 2022-7-6 10:31 | 显示全部楼层
LcwSwust 发表于 2022-7-6 10:04
没看懂楼主的图,自己胡乱画了个,需要两个IO口,或一个ADC脚,看看可以不。

我那个也是从网上看到的,没弄太明白。http://www.xjishu.com/zhuanli/61/202110265411.html这是源连接这个电路已经申请专利了。你给的这两个第一个占用IO口太多了,自己用的芯片没有那么多引脚。第二个可行,估计我的AD引脚不太够。需要检测二三十个这样的外部信号所以AD引脚有点短缺
 楼主| 代码虾2号 发表于 2022-7-6 10:33 | 显示全部楼层

我也是来学习的
ye876622864 发表于 2022-7-6 10:58 | 显示全部楼层
学习下
LcwSwust 发表于 2022-7-6 10:59 | 显示全部楼层
那就把第二个图改一下,当输入悬空时,两个光耦均不通,IO也就悬空,总可以了吧。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×

评论

这个确实可以。我来尝试下  发表于 2022-7-7 19:10
guojin0273 发表于 2022-7-6 15:26 | 显示全部楼层
这个要看应用场合,如果只是三段拔动开关,利用一下IO的内部上下拉电阻也可实现,当然内部下拉电阻 要已知
xch 发表于 2022-7-6 16:57 | 显示全部楼层
本帖最后由 xch 于 2022-7-6 17:02 编辑

找个mcu,GPIO内部有可编程上拉下拉电阻的。每个脚都可以用来检测这三种状态。

如果没有这种GPIO,也可以占用一个GPIO 用若干个电阻连接对应每个检测接口提供上拉下拉驱动。


coody 发表于 2022-7-6 17:37 | 显示全部楼层
一个普通IO检测3种状态我常用的做法:
1、输入,开启上拉电阻,读IO状态为A。
2、输入,开启下拉电阻,读IO状态为B。
判断:若A=1 && B=0,则为悬空。
         若A=1 && B=1,则为高电平。
         若A=0 && B=0,则为低电平。
 楼主| 代码虾2号 发表于 2022-7-7 19:11 | 显示全部楼层
guojin0273 发表于 2022-7-6 15:26
这个要看应用场合,如果只是三段拔动开关,利用一下IO的内部上下拉电阻也可实现,当然内部下拉电阻 要已知 ...

主要是想使用隔离
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

9

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部