Pingo
Pingo é uma API universal (!) para programação de alto nível de placas com pinos de entrada e saída programáveis, como o 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 um led piscar como no sketch Blink.ino
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, num BeagleBone Black 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