Я хотел использовать свою цифровую клавиатуру 4x4 с моим Raspberry Pi 3B + и следовал инструкциям этого руководства YouTube: https://www.youtube.com/watch?v=yYnX5QodqQ4, но я получил следующую ошибку:
RuntimeError: You must setup() the GPIO channel first
Это мой код Python:
import RPi.GPIO as GPIO
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BOARD)
MATRIX = [ [1,2,3,'A'],
[4,5,6,'B'],
[7,8,9,'C'],
['*',0,'#','D'] ]
ROW = [7,11,13,15]
COL = [12,16,18,22]
for j in range(4):
GPIO.setup(COL[j], GPIO.OUT)
GPIO.output(COL[j], 1)
for i in range(4):
GPIO.setup(ROW[1], GPIO.IN, pull_up_down = GPIO.PUD_UP)
try:
while(True):
for j in range(4):
GPIO.output(COL[j],0)
for i in range(4):
if GPIO.input(ROW[i]) == 0:
print MATRIX[i][j]
while(GPIO.input(ROW[i]) == 0):
pass
GPIO.output(COL[j],1)
except KeyboardInterrupt:
GPIO.cleanup()
Я пытался изменить GPIO.setmode(GPIO.BOARD)
на GPIO.setmode(GPIO.BCM)
и удалить GPIO.cleanup()
, но ничего не помогло. Есть у кого-нибудь идеи, как решить эту проблему?
Заранее спасибо!