12 julho 2013

Raspberry Pi GPIO - Parte II (Instalando RPi.GPIO)

Para acessar a GPIO via programação em python, fiz uso da biblioteca RPi.GPIO, disponível em: https://pypi.python.org/pypi/RPi.GPIO

Para o Raspbian é possível instalá-lo via apt-get, porém como citei no post anterior, o ArchLinux parece ser a distribuição mais indicada para quem quer trabalhar com a GPIO, e notei que não existe instalação via pacman.

Mas foi apenas baixar o fonte da biblioteca python, e instalá-lo com o setup install do python, abaixo a sequencia de comando que utilizei:

# wget https://pypi.python.org/packages/source/R/RPi.GPIO/RPi.GPIO-0.5.3a.tar.gz
# tar zxf RPi.GPIO-0.5.3a.tar.gz
# cd RPi.GPIO-0.5.3a
# python setup.py install

Testei se a biblioteca foi devidamente instalada através do Shell do python, importando a biblioteca RPi.GPIO sem apresentar erros:

Python 3.3.2 (default, May 24 2013, 01:55:36)
[GCC 4.7.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import RPi.GPIO as GPIO
>>>

Pronto, agora pude começar a criar alguns códigos para testar as saídas, acendendo os LEDs. Conheci como utilizar a biblioteca em http://code.google.com/p/raspberry-gpio-python/wiki/BasicUsage

É bem simples, primeiro deve-se setar se a referência ao canal da GPIO será feita pela numeração de pinos da placa do Raspberry PI, ou pela numeração do chip BCM2835 que controla a GPIO, então a primeira deve definir isso, utilizando os parâmetros GPIO.BOARD ou GPIO.BCM:

import RPi.GIO as GPIO

GPIO.setmode(GPIO.BOARD)
GPIO.setwarnings(false)

 A função setwarnings(false) é para que não sejam exibidos avisos, como se tal porta já está sendo utilizada ou não.

Depois disso é só setar qual pino será saída, e qual será entrada. Abaixo um exemplo de como setar um pino como saída, e como colocá-lo em nível baixo (0).

GPIO.setup(10,GPIO.OUT)
GPIO.output(10,0)

Tudo bem simples, e facilmente consegui fazer os LEDs acenderem, deu até para fazer um efeito super-máquina (para quem tem minha idade e lembra do seriado do carro que falava huahauh).

Próximo post pretendo falar um pouco de como funcionam as entradas, também divulgar os exemplos que fiz através de um link do github.

Links consultados:
http://code.google.com/p/raspberry-gpio-python/w/list
https://pypi.python.org/pypi/RPi.GPIO




Nenhum comentário:

Postar um comentário