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

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

[复制链接]
高级放牛娃 提问时间: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

查看全部评分

中山无雪 回答时间:2016-12-23 18:57:25
liucw99 发表于 2016-12-20 12:42
实际上是基于Eclipse的。
编辑器比较好用。然后集成的环境尚可,不需要来回切换了,调试功能也不错(我用 ...

最早出的是自己的界面,后来(好象是2013之后)才开发的机遇Eclipse界面的,我曾试用过一下,还凑合,编译器应该是使用的GCC的(好像也可以借用IAR或MDK)。

我不喜欢Eclipse界面,用起来费劲(相同机器上总是没有专有界面爽)

现在使用IAR和MDK
watershade 回答时间:2016-12-16 22:59:39
本帖最后由 watershade 于 2016-12-16 23:02 编辑

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

评分

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

查看全部评分

高级放牛娃 回答时间: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

查看全部评分

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

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

连接图

连接图


非常感谢你了。

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

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

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

评分

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

查看全部评分

lzts 回答时间:2016-12-17 14:54:59
用软件处理
suoma 回答时间:2016-12-17 21:04:14
建议接电阻,
另外问下,这个开关耐流多大?

评分

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

查看全部评分

zbber 回答时间:2016-12-17 21:56:33
搞更复杂.端口设为输入模式.内部上拉

评分

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

查看全部评分

高级放牛娃 回答时间:2016-12-17 22:02:18
lzts 发表于 2016-12-17 14:54
搞更复杂.端口设为输入模式.内部上拉(还有干扰就外部加1个几K的上拉电阻).然后直接接开关中点.开关一 ...

不需要那么复杂吧?
高级放牛娃 回答时间:2016-12-17 22:03:14

能麻烦你给说的详细点吗?
1234下一页

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版