Manual de Raspberry Pi. Configurando los puertos digitales GPIO


Una de las grandes capacidades de la Raspberry pi no es sólo su uso como un ordenador o como un media center , sino que también podemos utilizarlo para obtener datos a través de sus pines digitales GPIO, y obtener datos tanto del mundo exterior, como de dar órdenes a los diferentes elementos externos que nosotros queramos conectar, y eso es lo que vamos a hacer en esta práctica

En esta primera práctica experimentando con el hardware de la raspberry pi vamos a utilizar tres diodos led de diferentes colores, los cuales los conectaremos cada uno a un puerto GPIO diferente e introduciremos por medio de la consola los datos y órdenes necesarios:

A continuación realizamos un esquema simple de montaje:

Colocamos la masa.
GPIO 17 – Led Verde
GPIO 18 – Led Amarillo
GPIO 22 – Led Rojo


Para una mayor comodidad adjunto a continuación una gráfica ampliada con el datasheet de los pines por defecto de la raspberry pi, de izquierda a derecha:



Bien, una vez claro lo que queremos hacer, veamos como hacerlo.
Abrimos la consola
Lo primero que tenemos que hacer es exportar los puertos gpio que vayamos a utilizar
Esto lo hacemos con el comando:


echo 17  >  /sys/class/gpio/export
echo 18  >  /sys/class/gpio/export
echo 22  >  /sys/class/gpio/export

con el comando echo activamos el puerto 17, ahora debemos definir si es una entrada o una salida

Lo definimos como salidas, pues son diodos led

echo out  >  /sys/class/gpio/gpio17/direction
echo out  >  /sys/class/gpio/gpio18/direction
echo out  >  /sys/class/gpio/gpio22/direction

Ahora podremos darles el valor 1 o 0 para encenderlas y apagarlas

echo 1 > /sys/class/gpio/gpio17/value
echo 0 > /sys/class/gpio/gpio17/value

Una vez hayamos acabado debemos acordarnos de deshacer las salidas

echo 17  >  /sys/class/gpio/unexport

echo 18  >  /sys/class/gpio/unexport
echo 22  >  /sys/class/gpio/unexport


Obtendremos un resultado como este:



Posteriormente, en futuras entradas, trataremos de ver como la Raspberry puede generar un script de código que realice este tipo de órdenes de manera automática.

Muchas gracias y espero que os haya gustado.

Hazte tu propio Arduino. Carga de sketches desde otro controlador

Hola a todos, hasta ahora os enseñamos como realizar un Arduino por nuestra propia cuenta, y como ya visteis en nuestra entrada anterior, os enseñamos a montarlo, en este caso con el programa pregrabado Blink. Pero, ¿Qué ocurre si queremos grabar nuevos programas o skechs?

Para ello, hemos decidido publicar esta nueva entrada, en la que os proponemos como grabar un nuevo programa desde un microcontrolador externo Arduino.

Bien, la idea de este proyecto es que necesitamos conectar al ordenador nuestra tarjeta Arduino, por ello haremos uso del Usb del Arduino original. Para que no interfiera en el proceso, debemos retirar con cuidado el microcontrolador Atmega situado en el Arduino original. Yo lo hice con un destornillador de punta plana, sin problema. 



Una vez hecho esto, sólo debemos comunicar nuestros dos arduinos, para ello debemos comunicar su alimentación(Vcc y Gnd), su conexión de datos(Rx y Tx, recepción y transmisión de datos) y el pulsador de reset, tal y como vemos en la figura anterior.

Hago una pequeña tabla para tratar de dejarlo más claro

Arduino Original Arduino Prototipo
Reset Reset Pin 1
Rx 0 Pin 2
Tx 1 Pin 3
Vcc Vcc Pin 7
Gnd Gnd Pin 8


(Recordar quitar el microcontrolador Atmega en el Arduino Original)


Una vez hecho esto, podríamos conectar el Arduino mediante el puerto Usb y cargar nuevos sketchs a nuestra nueva tarjeta. 

Dejo un vídeo en el que hago una pequeña demostración:


Una vez hecho esto, nuestro objetivo para prácticas posteriores será realizar esta conexión de datos por medio de un cable FTDI, salvando la necesidad de otro Arduino, pero como digo, esto lo veremos en próximas entradas.

Un saludo, y espero que os esté gustando!!