Uso del gpio de la raspberry

Hola gente. Saludos.

Quiero usar el sistema gpio de mi raspberry de manera que al arrancar, dependiendo de si hay determinados pines puenteados, ejecute tal o cual script.

A priori se me hace que debe ser muy facil determinar si hay un puente en algun lado al arrancar, pero cuando profundizo un poco, todo lo que encuentro en la red es que si encender o apagar leds y termino liandome mas de lo que creo que necesito.

Alguien me puede decir que tan complicado sea e iluminarme un poco? Soy muy pato con la electronica.

Muchas gracias

Hola Javierbu!

Me atrevo a contestarte sin ser un “entendido” del todo, pero recién investigo sobre GPIO en routers con openwrt y arduinos para que interactúen entre si, pero me “alarma” tu intención de (y te cito):

[quote=Javierbu]dependiendo de si hay determinados pines puenteados…

Soy muy pato con la electronica.
[/quote]

Si “puentear” te refieres a unir físicamente por medio de un conductor dos o mas pines gpio de la raspberry probablemente la veas sacar mas humo que un neumático ardiendo.

Las raspberry a diferencia de los arduinos no toleran errores, a veces no hay caminos cortos, asi que las lecciones básicas de electrónica parece que serán obligatorias.,

La imagen te muestra algunos ejemplos de como se manejan los pines de entrada y salida. Siempre llevan un elemento resistivo en el arreglo.

https://wiki.openwrt.org/doc/hardware/port.gpio

Normalmente se utiliza leds, por que es una manera fácil de leer el estado (bajo o alto) del pin, y sobre todo por que los pines de gpio No pueden entregar corrientes mayores. Por cierto, que la tensión de esos pines es de 3.3 volts.

Con respecto a que tome decisiones la raspberry en base a los estados de los pines, ni dudarlo, se puede, previa configuración de ellos.

Tienes 24 terminales de entrada / salida de propósito general, con pull up y pull down independientes programables por software, suficientes para “jugar” hasta el aburrimiento con ellos.

http://electronicayciencia.blogspot.com/2016/11/conexion-gpio-de-raspberry-pi-3.html

https://tallerelectronica.com/2017/03/13/resistencias-pull-uppull-down-en-circuitos-digitales/

Saludos!!!

Muchas gracias por tu respuesta Fisgon.

Algo así me temía de lo poco que entendí cuando me dio por buscar algo sobre el tema. Y quizá por esa posibilidad de poder tostar mi juguete no seguí con ello.

Se nota la calidad de los textos que me has cmpartido, pero me pierdo enseguida. Es un lenguaje demasiado técnico y me cuesta mucho agarrar los conceptos. Uno es torpe para esto.

Por lo que veo en https://tallerelectronica.com/2017/03/13/resistencias-pull-uppull-down-en-circuitos-digitales/

y lo que veo en http://electronicayciencia.blogspot.com/2016/11/conexion-gpio-de-raspberry-pi-3.html

Podría ser algo como poner una resistencia de 4K7 ¿4.700 ohmios? entre 1 y 3 (PWR 3,3V y GPIO 02), y un puente entre 3 y 6 (GPIO 02 y MASA)?, y luego hacer un script que al iniciar lea el estado del GPIO 02? Sería así de sencillo?

Sí tengo miedo de ver salir humo de los circuitos y me siento lejos de entender bien lo que estoy haciendo.

Muchas gracias

No, el arreglo seria similar a la siguiente imagen que llamaremos Fig. 1 :

Nos vamos a valer de esta otra imagen del “mapa de pines” de varias raspberry según la versión y la llamaremos Fig. 2:

Imagen que tome de https://franciscomoya.gitbooks.io/taller-de-raspberry-pi/content/es/elems/gpio.html y que también te recomiendo su lectura.

Notaras que en la figura 1 están las dos posibles “arreglos” de un pin configurado como entrada.

En el primero, el pin GPIO pasa de 3.3 v a 0v cuando presionas S1
En el segundo, el pin GPIO pasa de 0v a 3.3 v cuando presionas S1

Por lo visto tu quieres implementar el primer caso, de alto a bajo, si nos valemos de la figura 2 veras que VCC de 3.3volts esta disponible en los pines 1 y 17, GND esta disponible en 6, 9, 14 etc.

Para ese arreglo, seria :
PIN1 (VCC 3.3)<----(RESISTOR DE 4K7)---->(UNIÓN (TOMA A PIN GPIO))<---------(SWITCH) ------>(GND) PIN 6

El nodo o punto de unión formado entre resistencia-switch (UNIÓN (TOMA A PIN GPIO)) sera el que que llevaras al pin que censaras su estado, que pasara de"ALTO" a “BAJO” cuando presiones o “cierres” S1 que es el switch.

Algo que también nos muestra la figura 2 (margen derecho inferior “Clave”) es que el PIN GPIO2 y GPIO3 de la raspberry esta “reservada” para I2c, pero cualquier otro PIN marcado en amarillo valdría.

Espero te aclare la duda.

Saludos!

Muchas gracias por tu explicacion paciencia.

Creo que voy entendiendo. Voy a leer lo que me recomiendas y espero se me aclaren dudas que aun me quedan.

De nada Javierbu, para eso es el foro, para aprender entre todos.

Saludos!!