你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

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

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


开关例子

开关例子
<
收藏 1 评论46 发布时间:2016-12-16 22:19

举报

46个回答
shuolang126 回答时间:2016-12-17 07:54:01
中间的pin脚串联1K电阻,然后一个1uF电容到地,构成RC低通滤波,可以减轻一些信号毛刺,同事1K电阻也可以保护MCU的IO口,直连也可以。STM32的引脚配置为浮空输入即可,使用读取IO的库函数,就可以获取当前IO的输入电平是高或者低;
如果你VCC不连接,只是接地,那么配置成上拉输入,也可以实现两种状态的识别。
如果只识别高低两种状态,一般仅使用单向开关,接地就可以实现!

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

watershade 回答时间:2016-12-16 22:59:39
本帖最后由 watershade 于 2016-12-16 23:02 编辑

通常情况下你可以直接连接。Vcc和你单片机的电平持平。当然你如果你加上1K的电阻会更好。但是如果你的环境中有弱电(比如220VAC)甚至强电(>10KV),或者电磁环境复杂,最好的办法当然是添加隔离电路。有时甚至要加比较复杂的光隔离或者磁隔离芯片。
有时为了减少软件滤波的难度,比如你这个开关信号,对于慢速系统可以添加相应大小的电容来滤波或者TVS二极管滤波的方法。

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

liucw99 回答时间:2016-12-16 23:20:10
watershade 发表于 2016-12-16 22:59
通常情况下你可以直接连接。Vcc和你单片机的电平持平。当然你如果你加上1K的电阻会更好。但是如果你的环境 ...

多谢你的解答。还有一个问题:
连接后(无论是否添加电阻),STM32的引脚怎么配置呢?
斜阳__ 回答时间:2016-12-17 09:09:51
帮顶,按键接通的瞬间会有抖动,要加硬件滤波电路;不知道开关有没有

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

leo121_3006061 回答时间:2016-12-17 11:50:45

仅供参考

仅供参考

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

liucw99 回答时间:2016-12-17 13:38:26
shuolang126 发表于 2016-12-17 07:54
中间的pin脚串联1K电阻,然后一个1uF电容到地,构成RC低通滤波,可以减轻一些信号毛刺,同事1K电阻也可以保 ...

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

连接图

连接图


非常感谢你了。

liucw99 回答时间:2016-12-17 13:39:18
斜阳__ 发表于 2016-12-17 09:09
帮顶,按键接通的瞬间会有抖动,要加硬件滤波电路;不知道开关有没有

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

多谢你的解答。
liucw99 回答时间:2016-12-17 13:40:01
lzts 回答时间:2016-12-17 14:54:29
搞更复杂.端口设为输入模式.内部上拉(还有干扰就外部加1个几K的上拉电阻).然后直接接开关中点.开关一端接地,另一端空.开关抖动什么的同软件处理.

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

12345下一页

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版