Eu li que o Raspberry Pi tem vários pinos de entrada e saída.
- Como posso trocá-los? (do Python?)
- Qual lógica de tensão?
- Preciso de resistores pull-up ou pull-down?
- Preciso mudar os pinos de entradas para saídas?
- Quais pinos estão disponíveis?
Eu li que o Raspberry Pi tem vários pinos de entrada e saída.
Respostas:
Os pinos do GPIO são de 3,3 V e a corrente máxima é de 16 mA. Isso significa que você não conseguirá alimentar quase nada diretamente. É por isso que você precisa pelo menos usar uma chave de transistor, se não um circuito de proteção mais avançado. Você pode ler mais sobre eles no Tutorial RPi EGHS: Circuitos de proteção GPIO .
Um guia geral são os periféricos de baixo nível RPi .
Essas instruções não são específicas do Python, mas podem ajudar você a começar a experimentar o GPIO. /raspberrypi//a/350/668 possui informações sobre uma biblioteca e uso específico para Python.
Quando você inicializa o seu Raspberry Pi usando a distribuição Debian recomendada, o GPIO fica desativado. Você precisa habilitar cada pino individualmente.
Se você estiver fazendo isso via / sys , encontrará "Caminhos no Sysfs" interessantes (pesquise em https://www.kernel.org/doc/Documentation/gpio/sysfs.txt ). Em particular, você ativaria um pino "exportando" ele. Todos os comandos abaixo assumem que você está executando como privilégios de root (sudo ou não) ou alterou as permissões / propriedade dos arquivos virtuais que estão sendo modificados.
echo 4 > /sys/class/gpio/export
Isso permite que o pino GPIO # 4, que faz com que / sys / class / gpio / gpio4 exista, que contém vários arquivos virtuais. Esses arquivos incluem "direção", que define se é um pino de entrada ou saída, "valor", que é somente leitura para entrada ou gravável para saída e contém o valor atual e outros.
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
É claro que você provavelmente preferirá usar alguma biblioteca preexistente para fazer o GPIO fornecido ou compatível com o idioma de sua escolha. Mas se você está querendo algo simples, basta fazer a interface diretamente com o sysfs para fazer o GPIO muito básico.
Importe a biblioteca python e você pode controlar facilmente os pinos. Existem muitos tutoriais on-line. Você precisa e utiliza ide com suporte a python e conhecimento básico sobre programação em python.
Os pinos GPIO estão disponíveis para entradas e saídas.