У мене простий ланцюг підключений, зі світлодіодом, підключеним до штифта 18 на дошці BOARD. Я запускаю просту програму, щоб поставити шпильку 18 на ВИСОКУ, яка вмикає світлодіод, а потім через пару секунд встановлюю контакт 18 на НИЗКО, і, нарешті, закінчую програму GPIO.cleanup ().
У цей момент світлодіод вимикається, що означає, що контакт 18 вимкнено (НИЗЬКО). Тепер я перезавантажую або перезавантажую свій Raspberry Pi, і коли він завантажується, світлодіод на штифті 18 знову вмикається, навіть якщо штифт був вимкнений, перш ніж я перезавантажував Raspberry Pi.
Чому це може статися? Як я можу налаштувати певний штифт, як-от штифт 18, щоб він був вимкнений, коли Raspberry Pi завантажується? І я не хочу, щоб будь-які шпильки GPIO були ВИСОКИМИ, коли Raspberry Pi завантажується.
Мене турбує ця проблема, тому що скажімо, що контактний контакт 18 підключений до двигуна постійного струму на роботах, і коли Raspberry Pi завантажиться, мотор увімкнеться, і це не те, що я хочу, тому що це буде заважати вся структура роботи, а деякі двигуни можуть запускатися, а інші не будуть, залежно від штифтів, до яких вони підключені. Хочу вручну ввімкнути всі двигуни синхронізовано.
Ще одне, що не всі шпильки мають цю проблему. Деякі зупиняються, коли Raspberry Pi завантажується, але інші ні.
/sys/class/gpio
та експортуєте штифт 18, у якому стані система скаже, що він є, якщо нічого не змінити?
echo
, що пише, тобто встановлює щось. Після експорту його ви хочете утриматися від цього і просто використовувати cat
, що читається, для перевірки напрямку та значення.