Як я можу використовувати штифти GPIO як цифрові виходи?


28

Я читав, що Raspberry Pi має ряд штифтів для введення та виведення.

  • Як я можу їх переключити? (від Python?)
  • Яка логіка напруги?
  • Чи потрібні резистори, що підтягуються або висуваються?
  • Чи потрібно перемикати штирі з входів на виходи?
  • Які шпильки доступні?

Ваше друге питання не зрозуміло
Сохан Арафат

Відповіді:


16

Штифти GPIO - 3,3 В, а максимальний струм - 16 мА. Це означає, що ви не зможете безпосередньо живити майже нічого. Ось чому вам потрібно хоча б використовувати транзисторний вимикач, якщо не більш просунуту схему захисту. Детальніше про них ви можете прочитати в навчальному посібнику EGiS RPi: Захисні схеми GPIO .

Загальний посібник - периферійні пристрої низького рівня RPi .


3
Не могли б ви розширити свою відповідь? Я хотів би, щоб усі відповіді на всі питання, а інформація у наданих посиланнях узагальнена. На даний момент інформація про RTC є невірною (RTC не має значення)
Alex L

11

Ці інструкції не стосуються Python, але вони можуть допомогти вам почати експериментувати з GPIO. /raspberrypi//a/350/668 містить інформацію про бібліотеку та використання, специфічні для Python.

Коли ви завантажили Raspberry Pi, використовуючи рекомендований дистрибутив Debian, GPIO вимкнено. Ви повинні включити кожен штифт окремо.

Якщо ви робите це через / sys, ви знайдете "Шляхи в Sysfs" цікавими (пошук в https://www.kernel.org/doc/Documentation/gpio/sysfs.txt ). Зокрема, ви б увімкнули шпильку, "експортуючи" її. Будь-які команди нижче припускають, що ви виконуєте root права (sudo чи іншим чином) або ви змінили дозволи / право власності на віртуальні файли, що змінюються.

echo 4 > /sys/class/gpio/export

Це дозволяє PIN-код № GPIO №4, який призводить до існування / sys / class / gpio / gpio4, який містить кілька віртуальних файлів. Ці файли містять "напрямок", який визначає, чи це вхідний чи вихідний штифт, "значення", яке є лише для читання для введення, або для запису для виводу, і містить поточне значення та інші.

echo out > /sys/class/gpio/gpio4/direction # set it as an output pin
echo 1 > /sys/class/gpio/gpio4/value # set the value to ON
echo 0 > /sys/class/gpio/gpio4/value # set the value to OFF
echo in > /sys/class/gpio/gpio4/direction # set it as input
cat /sys/class/gpio/gpio4/value # get the value
echo 4 > /sys/class/gpio/unexport # disables pin 4 and removes the gpio4 directory

Звичайно, ви, мабуть, віддасте перевагу використовувати деяку попередню бібліотеку, щоб зробити GPIO, що постачається з вашою мовою. Але якщо ви хочете чогось простого, ви можете просто взаємодіяти безпосередньо з sysfs, щоб зробити дуже базовий GPIO.


0

Імпортуйте бібліотеку пітона, і ви зможете легко керувати штифтами. В Інтернеті дуже багато навчальних посібників. Вам потрібні і ідеї з підтримками python та основними знаннями про програмування python.

Штифти GPIO доступні для входів та виходів.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.