Pingo
Pingo pretende ser API universal (!) para programação de alto nível de placas com pinos de entrada e saída programáveis, como Raspberry Pi, BeagleBone Black, Arduino Yún, Intel Galileo etc. O nome é uma homenagem ao Garoa Hacker Clube e também pode ser lido em inglês como "pin go".
Blink
Este exemplo faz um led piscar em um Raspberry Pi (como no sketch Blink do Arduino)
import pingo from time import sleep placa = pingo.rpi.RaspberryPi() # * pino_led = placa.pins[11] pino_led.mode = pingo.OUTPUT while True: pino_led.state = 1 sleep(1) pino_led.state = 0 sleep(1)
Para fazer o mesmo programa funcionar em um Arduino Yún, BeagleBone Black, pcDuino ou em qualquer outra placa suportada, basta trocar o nome da placa na linha assinalada com *, e alterar o número do pino linha seguinte, caso necessário.
Repositórios
- repositório principal: https://github.com/garoa/pingo
Repositórios de projetos que podem ser úteis
- RPi.GPIO, para programar pinos GPIO do Raspberry Pi (Python): http://sourceforge.net/projects/raspberry-gpio-python/
- Breakfast Serial, para controlar remotamente um Arduino via Firmata (Python): https://github.com/theycallmeswift/BreakfastSerial
Repositórios de projetos de referência
- Noduino: https://github.com/semu/noduino
- BoneScript: https://github.com/jadonk/bonescript