Bibliotecas para interface com o GPIO

30

Quais bibliotecas estão disponíveis para interface com o GPIO?

ramblinjan
fonte
não é uma lista completa, mas aqui estão algumas - embora eu ache que essa pergunta será encerrada, pois as perguntas do tipo lista tendem a não funcionar bem nos sites de pilha, pois haverá um fluxo interminável de respostas
user2813274

Respostas:

14

Vou interpretar o que acho que você pode estar perguntando de maneira mais ampla como "Como posso controlar o GPIO da área de usuário?"

Uma maneira muito boa de começar a usar o GPIO é usando o /sysfilesytem. Você pode fazer tudo isso na linha de comando.

Por exemplo,

cd sys/class/gpio
echo 0 > export
cd gpio0
echo high > direction

Mais documentação está em linux / Documentation / gpio.txt .

turno azul
fonte
1
Isso funciona com todos os sistemas operacionais?
Alex L
Isso é específico do Linux.
Blueshift
1
Existem tutoriais que usam esse método? Eu só vi bibliotecas (principalmente a python).
21812 Shane Hudson
2
Isso não é necessariamente uma biblioteca, de acordo com a solicitação do OP.
Andrew Larsson
1
As outras respostas para esta pergunta são muito melhores - essa resposta não responde à pergunta sobre bibliotecas.
recantha
12

Há um que eu encontrei aqui . Não tive a chance de testá-lo, pois meu Pi não chegou. Parece, no entanto, seguro. Há até um tópico no fórum aqui que professa recompensa promissora. Se você deseja um exemplo C básico, usando bibliotecas padrão, há um aqui no eLinux.

Andrew Larsson
fonte
Qual foi sua experiência com essa biblioteca?
Peter Mortensen
1

O quick2wire pode ser usado por usuários comuns (não root):

API do Quick2Wire Python

Uma biblioteca Python para controlar o hardware conectado aos pinos do cabeçalho do Raspberry Pi, sem executar como usuário root .

dugres
fonte
Embora esse link possa responder à pergunta, é melhor incluir aqui as partes essenciais da resposta e fornecer o link para referência. As respostas somente para links podem se tornar inválidas se a página vinculada for alterada.
Mark Booth
@ MarkBooth: "a parte essencial da resposta" é " pode ser usada por usuários regulares ", diferente de outras respostas.
Dugres
1

Eu uso o Wiring PI e funciona muito bem. Eu o uso com a linguagem C e não tive problemas até agora. É fácil de entender e simples de manusear.

Franzi
fonte
0

O Pi4J permite controlar os pinos do GPIO usando Java. Não sei ao certo como funciona, mas há uma explicação em http://pi4j.com/

Mateus
fonte
0

É realmente simples controlar as portas GPIO em qualquer idioma, como mostrado em http://elinux.org , então acredito que você realmente não precisa de uma estrutura para o controle direto.

Você precisa saber quais recursos adicionais você espera de uma estrutura, como

  • Controle remoto via navegador
  • Uma interface de usuário bonita do navegador ou talvez um programa independente
  • Controle automático baseado em tempo ( tarefas cron )

Acabei escrevendo uma estrutura para mim: controle as portas GPIO por HTTP e com trabalhos cron que atendem perfeitamente às minhas necessidades. Eu queria ter algo para automação residencial. Então, eu precisava de tarefas cron e uma interface da web JSON para executar um aplicativo nativo no meu iPhone. Portanto, não escrevi uma interface do usuário do navegador. Eu acredito que também seria bom para um sistema de alarme.

Ainda não encontrei uma lista (completa) de estruturas. Existem alguns mencionados no fórum do raspberrypi.org.

o cara
fonte
0

Johny-Five é bastante fácil de usar para aqueles familiarizados com Node.js. ou JavaScript. Veja http://johnny-five.io/examples/raspi-io/

npm install johnny-five raspi-io
var five = require("johnny-five");
var Raspi = require("raspi-io").RaspiIO;
var board = new five.Board({
  io: new Raspi()
});

board.on("ready", function() {
  var led = new five.Led("P1-13");
  led.blink();
});

Especialmente útil para projetos Pi que controlam o GPIO por meio de um servidor Web

Yves M.
fonte