import RPi.GPIO as GPIO
import time
# Настройка GPIO
GPIO.setmode(GPIO.BCM)
MUX_S0 = 17 # Управляющий сигнал 0
MUX_S1 = 18 # Управляющий сигнал 1
TOGGLE_PIN = 27 # Тумблер
GPIO.setup(MUX_S0, GPIO.OUT)
GPIO.setup(MUX_S1, GPIO.OUT)
GPIO.setup(TOGGLE_PIN, GPIO.IN)
# Функция для выбора SD-карты
def select_sd_card(card_number):
if card_number == 0:
GPIO.output(MUX_S0, GPIO.LOW)
GPIO.output(MUX_S1, GPIO.LOW)
elif card_number == 1:
GPIO.output(MUX_S0, GPIO.HIGH)
GPIO.output(MUX_S1, GPIO.LOW)
elif card_number == 2:
GPIO.output(MUX_S0, GPIO.LOW)
GPIO.output(MUX_S1, GPIO.HIGH)
elif card_number == 3:
GPIO.output(MUX_S0, GPIO.HIGH)
GPIO.output(MUX_S1, GPIO.HIGH)
# Основной код
try:
while True:
toggle_state = GPIO.input(TOGGLE_PIN)
if toggle_state == GPIO.LOW:
select_sd_card(0) # Выбор первой SD-карты
else:
select_sd_card(1) # Выбор второй SD-карты
time.sleep(1)
except KeyboardInterrupt:
GPIO.cleanup()