Pinos de controle GPIO de C

10

A maioria das bibliotecas, em vários idiomas, interagem com o GPIO pinos via /sys/class/gpio/export, /sys/class/gpio/import, /sys/class/gpio/gpio10/value, etc. No entanto o kernel Linux docs claramente estado que é o modo legado de fazer as coisas.

Qual é a maneira não legada de fazer as coisas?

Se eu entendi corretamente no espaço do kernel, usaria essas funções ou drivers padrão do kernel para tarefas comuns do GPIO.

O que eu usaria para o espaço do usuário? Existe uma interface Sysfs para o não legado?

PS: Eu sei que os documentos do kernel afirmam que a interface baseada em números herdados, embora considerada obsoleta, ainda é utilizável por motivos de compatibilidade. No entanto, não estou interessado em usar esse código legado.

Simão Martins
fonte
11
A maioria das bibliotecas NÃO interage com os pinos GPIO, /sys/class/gpio/exportpois acessam o hardware diretamente, embora PODEM usar serviços de kernel. Certamente o período de pigmento WiringPi e AFAIK acessa diretamente os registros SoC.
Milliways 19/08/19

Respostas: