首先我们先来看看图片
这个遥控器有四个按键,分别是A、B、C、D键,然后另一个就是无线信号接收模块,总共6个引脚,包括VCC 5V接口,GND负极接口和D0、D1、D2、D3四个接口,D0~D3分别四个按键,具体对应关系如下:
D0 --> B键
D1 --> D键
D2 --> A键
D3 --> C键
接收模块上还有个ANT的接口,是用来接天线的,我们这里可以暂时不用理它。 按照上面的对应关系把线接到树莓派上,然后使用下面的代码即可实现按键的信号接收和响应。
#!/usr/bin/python
# coding=utf8
import RPi.GPIO as gpio
import time
# 定义gpio引脚号
A = 17 #对应A键
B = 27 #对应B键
C = 22 #对应C键
D = 5 #对应D键
gpio.setmode(gpio.BCM)
gpio.setup(A, gpio.IN)
gpio.setup(B, gpio.IN)
gpio.setup(C, gpio.IN)
gpio.setup(D, gpio.IN)
print "等待信号……"
#下面的time.sleep(0.5)是延时功能,防止按键按下后重复触发(消除按键抖动),这个0.5可以自行修改,不能太短,也不能太长。建议是0.5-1秒左右
while True:
if gpio.input(A) == 1:
print "你按了下A键"
time.sleep(0.5)
if gpio.input(B) == 1:
print "你按了下B键"
time.sleep(0.5)
if gpio.input(C) == 1:
print "你按了下C键"
time.sleep(0.5)
if gpio.input(D) == 1:
print "你按了下D键"
time.sleep(0.5)
print "信号结束"
gpio.cleanup()
Python源代码下载:wireless.py
ok
mjj通道