Comment puis-je utiliser les broches GPIO comme sorties numériques?

28

J'ai lu que le Raspberry Pi a un certain nombre de broches d'entrée et de sortie.

  • Comment puis-je les changer? (de Python?)
  • Quelle logique de tension?
  • Ai-je besoin de résistances pull-up ou pull-down?
  • Dois-je passer les broches des entrées aux sorties?
  • Quelles broches sont disponibles?
Alex L
la source
Votre deuxième question n'est pas claire
Sohan Arafat

Réponses:

16

Les broches GPIO sont de 3,3 V et le courant maximum est de 16 mA. Cela signifie que vous ne pourrez pas alimenter presque n'importe quoi directement. C'est pourquoi vous devez au moins utiliser un interrupteur à transistor, sinon un circuit de protection plus avancé. Vous pouvez en savoir plus à leur sujet dans le tutoriel RPi EGHS: circuits de protection GPIO .

Un guide général est les périphériques RPi bas niveau .

Gil
la source
3
Pourriez-vous développer votre réponse? J'aimerais voir toutes les réponses aux questions et les informations contenues dans les liens fournis résumées. Pour le moment, les informations sur RTC sont incorrectes (RTC n'est pas pertinent)
Alex L
11

Ces instructions ne sont pas spécifiques à Python, mais elles pourraient vous aider à commencer à expérimenter avec GPIO. /raspberrypi//a/350/668 contient des informations sur une bibliothèque et une utilisation spécifiques à Python.

Lorsque vous avez démarré votre Raspberry Pi à l'aide de la distribution Debian recommandée, GPIO est désactivé. Vous devez activer chaque broche individuellement.

Si vous le faites via / sys, vous trouverez "Paths in Sysfs" intéressant (recherchez dans https://www.kernel.org/doc/Documentation/gpio/sysfs.txt ). En particulier, vous activeriez une épingle en la "exportant". Toutes les commandes ci-dessous supposent que vous exécutez en tant que privilèges root (sudo ou autre) ou que vous avez changé les autorisations / la propriété des fichiers virtuels en cours de modification.

echo 4 > /sys/class/gpio/export

Cela active la broche GPIO # 4 qui fait alors exister / sys / class / gpio / gpio4, qui contient plusieurs fichiers virtuels. Ces fichiers incluent "direction" qui définit s'il s'agit d'une broche d'entrée ou de sortie, "value" qui est soit en lecture seule pour l'entrée ou accessible en écriture pour la sortie et contient la valeur actuelle, etc.

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

Bien sûr, vous préférerez probablement utiliser une bibliothèque préexistante pour faire du GPIO fourni avec ou compatible avec la langue de votre choix. Mais si vous voulez quelque chose de simple, vous pouvez simplement vous interfacer directement avec sysfs pour faire un GPIO très basique.

Emmaly Wilson
la source
0

Importez la bibliothèque python et vous pouvez facilement contrôler les broches. Il y a beaucoup de tutoriels en ligne. Vous avez besoin et supportez les supports python et les connaissances de base sur la programmation python.

Les broches GPIO sont disponibles pour les entrées et les sorties.

Sohan Arafat
la source