请问STM32F103的引脚连接开关是否可行?

2019-07-14 15:59发布

单片机STM32F103C8T6,在其中的一个引脚上面连接了一个2位3脚的开关。
目标是在系统运行期间,通过拨动这个开关(分别连接电源的正极或者负极)来改变这个引脚的电平高低。单片机检测到电平的变化后改变运行的模式。
我想知道,硬件上,是否可以直接将单片机的引脚与这个开关的中间那个引脚连接?还是说需要串接一个电阻?引脚怎么配置?



友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
18条回答
naiztycheng
1楼-- · 2019-07-14 22:26
本帖最后由 watershade 于 2016-12-16 23:02 编辑

通常情况下你可以直接连接。Vcc和你单片机的电平持平。当然你如果你加上1K的电阻会更好。但是如果你的环境中有弱电(比如220VAC)甚至强电(>10KV),或者电磁环境复杂,最好的办法当然是添加隔离电路。有时甚至要加比较复杂的光隔离或者磁隔离芯片。
有时为了减少软件滤波的难度,比如你这个开关信号,对于慢速系统可以添加相应大小的电容来滤波或者TVS二极管滤波的方法。
hanlinceshi
2楼-- · 2019-07-15 00:50
naiztycheng 发表于 2018-11-16 06:35
本帖最后由 watershade 于 2016-12-16 23:02 编辑

通常情况下你可以直接连接。Vcc和你单片机的电平持平。当然你如果你加上1K的电阻会更好。但是如果你的环境中有弱电(比如220VAC)甚至强电(>10KV),或者电磁环境复杂,最好的办法当然是添加隔离电路。有时甚至要加比较复杂的光隔离或者磁隔离芯片。

多谢你的解答。还有一个问题:
连接后(无论是否添加电阻),STM32的引脚怎么配置呢?
youpukeji668
3楼-- · 2019-07-15 05:52
 精彩回答 2  元偷偷看……
z820139598
4楼-- · 2019-07-15 09:57
hanlinceshi
5楼-- · 2019-07-15 13:02
456162dss 发表于 2018-11-16 06:22
中间的pin脚串联1K电阻,然后一个1uF电容到地,构成RC低通滤波,可以减轻一些信号毛刺,同事1K电阻也可以保护MCU的IO口,直连也可以。STM32的引脚配置为浮空输入即可,使用读取IO的库函数,就可以获取当前IO的输入电平是高或者低;
如果你VCC不连接,只是接地,那么配置成上拉输入,也可以实现两种状态的识别。
如果只识别 ...

如果我将开关的连接只是到GND,是否就是下面的这个样子?


非常感谢你了。
hanlinceshi
6楼-- · 2019-07-15 13:18
youpukeji668 发表于 2018-11-16 07:12
帮顶,按键接通的瞬间会有抖动,要加硬件滤波电路;不知道开关有没有

开关没有的,就是普通的开关。我添加一个电容?

多谢你的解答。

一周热门 更多>