2017-09-08 11 views
1

ボタンを押したときに音を鳴らし、正しい順序でボタンが押されたときに音を鳴らそうとしています。pythonでボタンの押下を録音してコンビネーションロックを開く方法

私は音がかなり良いと分かっていて、それはうまくいきましたが、コンビネーションロックをプログラムする方法を理解できません。どんな助けでも私を正しい道に導くことができます。これは、あなたが組み合わせの入力を処理する方法に依存するように起こっている

import os 
from time import sleep 

import RPi.GPIO as GPIO 

GPIO.setmode(GPIO.BCM) 
GPIO.setup(17, GPIO.IN) 
GPIO.setup(27, GPIO.IN) 
GPIO.setup(22, GPIO.IN) 
GPIO.setup(10, GPIO.IN) 

while True: 
    if (GPIO.input(17) == False): 
     os.system('mpg123 /home/pi/frogjars/frog1.mp3 &') 
     print("Button 1 Pressed") 
     sleep(3) 
    if (GPIO.input(27) == False): 
     os.system('mpg123 /home/pi/frogjars/frog2.mp3 &') 
     print("Button 2 Pressed") 
     sleep(3) 
    if (GPIO.input(22) == False): 
     os.system('mpg123 /home/pi/frogjars/frog3.mp3 &') 
     print("Button 3 Pressed") 
     sleep(3) 
    if (GPIO.input(10) == False): 
     os.system('mpg123 /home/pi/frogjars/frog4.mp3 &') 
     print("Button 4 Pressed") 
     sleep(3) 

    sleep(0.1); 

答えて

0

:これまで

コード(出力は26として設定になります)。最も単純で最も厄介な方法は、各ボタンを文字列に追加し、文字列にその組み合わせが含まれているかどうかを確認することです。タイムアウトまたは数回の押下後にキャッシュされたボタン・プレスをクリアすると、もう少し複雑になります。

+0

私はあなたの提案に基づいて考え出しました。完璧に動作します。ありがとう – jwebb

関連する問題