微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 单片机按键问题(应该是硬件问题。。)

单片机按键问题(应该是硬件问题。。)

时间:10-02 整理:3721RD 点击:
最近开始学STM32,买了一块最小系统板,,按照原子的教程做按键输入的实验,,,一切顺利,就是有一点小毛病。因为最小系统板上没有按键,所以我就自己焊了一个,用杜邦线连接IO口,,但是为毛不好使啊,,有时候按一次不亮,得按好几次才好使,,然后我加了一个上拉电阻就好了很多。但是我做别的实验的时候又不灵敏了。为什么啊,,,怎么办啊?     就是图中的这种按键


按键电路


自己顶一个,,,,

你的意思是说我没加电容?

不知道你的电路是怎样的,因为你是飞焊出来的,所以至少应该是3条线,你只有两条,电容是用来防抖动的,不加也可以用其他方式来防抖动,还是先查查电路吧

有可能是按键的代码问题,你该不会用的delay来延时消抖的吧?

1.有可能是按键本身问题,接触不良。2.也有可能是按键的代码问题。3.还有可能是按键电路问题。4.前述3个问题有重叠。

对啊,用delay消抖有什么问题吗?

指令的delay会让CPU的效率降低,所有在处理其他事情上就会存在响应不及时

电路是这样的,你看有问题吗?


这样的电路好像不太稳定,你要不把电阻去掉,把IO口直接接按键,但是这个IO口一定要设置为上拉状态,也就是按键没按下的时候读引脚状态为高,按键按下后读入为低。或者就按我给你的图来接线。你也可以两种方法都试试,看看效果。

解决了,,按照你那张图接的线,,不过电阻我保留了。谢谢

典型的按键消抖没处理好

怎么只有两根线?

那应该有几根? 在下小白一只,,什么都不懂

你没用共地吧?应该是有3根线才对,两根是电源,一根是读IO状态啊

这样行吗?我不是要读IO,我是要IO读取按键的状态


我知道了。,,,

奥,我明白了,,是应该有三根线。

先顶一下,或许好东西,

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top