我的树莓派型号:Raspberry Pi 2 Model B V1.1 装机系统:NOOBS v1.9.2
我们在之前学会了如何进行输出,现在来讲讲如何进行输入:
使用按键为例。
我们先按照下面这幅图片连接电路:
知识点:当你设置一个GPIO为输入模式的,这个GPIO口要么是连接到信号端,要么是接GND。注意设置为输入模式的GPIO口不允许悬空(floating)。(因为这种情况下GPIO输入的值是不确定的。)
上面这个图中, 按键的一个引脚连接一个10K电阻和树莓派的24引脚上,然后10K电阻连接GND。按键的另一个引脚连接到3V3。
LED还是正极连接到25引脚上,另一个引脚连接GND。
写程序
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
|
执行下面的命令,来启动这个程序脚本:
1 2 |
|
你会发现这个运行效果并不是很好:主要的原因就是因为按键的去抖。你可以使用硬件去抖(就是在按键的引脚上并联一个电容),也可以软件去抖,上面的程序中已经进行软件去抖了(你可以通过增大延时时间来改善程序运行效果)。
到现在应该学会了如何使用GPIO的输入模式了。
上面检测按键的程序,它是用轮询的方式,接下来,我们来学习,如果使用GPIO的中断模式,来实现使用中断的方式来检测一个按键是否被按下。