+2 голосов
Уважаемые господа объясните пожалуйста как работает скрипт: Я так понимаю, что по команде от кнопок, он должен зажигать светодиоды. Скажите мне пожалуйста, какие кнопки нажимать и как это работает в коде. Спасибо

import RPi.GPIO as GPIO

    def isPressed(btn, led):

 state = 1 - GPIO.input(btn)

GPIO.output(led, state)    

 leds = [12, 13, 14, 18]

buttons = [2, 3, 4, 8]  

 GPIO.setmode(GPIO.BCM)

 for i in range(4):

GPIO.setup(leds[i], GPIO.OUT)

 GPIO.setup(buttons[i], GPIO.IN)

   try: while True: for i in range(4):

isPressed(buttons[i], leds[i])

 except KeyboardInterrupt:

 print('The program was stopped by keyboard.')

finally: GPIO.cleanup() print('GPIO cleanup completed.')
(49 баллов) 3 9
Питоновский текст без отступов прочитать невозможно.
Как определить эти кнопки которые работаю на пинах (какие кнопки нажимать). И где связь в коде которая определенной кнопке присваивает пин адресс ?(Только учусь, не судите строго и объясните поподробнее)

2 Ответы

+3 голосов
Кнопки на пинах 2, 3, 4 и 8 управляют светодиодами на пинах 12, 13, 14 и 18.

Если у Вас набор «Малина», то это те четыре кнопки на облачке.

Скрипт работает просто: в цикле опрашивается каждая из кнопок в массиве buttons, если кнопка нажата, то загорается соответствующий ей светодиод в массиве leds. Если нажата кнопка на клавиатуре — скрипт прекращает работу.
(1.6 тыс. баллов) 2 9 33
+2 голосов
(49 баллов) 3 9
Добро пожаловать на Бредборд! Сайт вопросов и ответов на тему Arduino, Raspberry Pi и хоббийной электроники в целом. Цель Бредборда — быть максимально полезным. Поэтому мы строго следим за соблюдением правил, боремся с холиворами и оффтопиком.
  1. parovoZZ

    102 балл(ов)

  2. Un_ka

    66 балл(ов)

  3. sser

    38 балл(ов)

  4. Тигрыч

    10 балл(ов)

  5. Kiprais

    9 балл(ов)

  6. N08I40K

    8 балл(ов)

Награды месяца
1-е место: Raspberry Pi 3 Model A+
2-е место: Raspberry Pi Zero W
3-е место: Raspberry Pi Zero

...