Página 1 de 1

Duda sobre seteo de GPIO

Publicado: 03 Jul 2016, 02:50
por leoctam
Estimados

Como dije en mi post de presentación. Tengo una duda existencial, se puede setear el modo de un GPIO en "out" de forma permanente y que no cambie su modo (a in) al reiniciar la RPi???

Tengo claro cómo se hace vía línea de comandos (uso la librería wiringpi). Lo que quiero es dejarla por defecto en "out"

Muchas gracias por su atención y desde ya agradezco todos sus comentarios.

Saludos
Leoctam

Re: Duda sobre seteo de GPIO

Publicado: 03 Jul 2016, 19:51
por Kike
YO Creo que no se puede :triste
Que me desmienta algun mejor entendido del tema :|(
Nada es imposible jeje,, siento no poder ayudarte.
Un saludo!

Re: Duda sobre seteo de GPIO

Publicado: 03 Jul 2016, 23:32
por ismaDev
No se si se podrá hacer, ¿Pero y si haces un script que te ejecute en cada inicio un pequeño código que lo haga?

Re: Duda sobre seteo de GPIO

Publicado: 04 Jul 2016, 15:49
por leoctam
Rece preguntándole a dios si se podía hacer... como no me respondió, recurrí a investigar por google, y llegue a la conclusión que al parecer no es posible, así que me cree un scrip en piton (más conocido como python... jajajajaj). (más info aquí) Adjunto codigo:

Código: Seleccionar todo

#!/usr/bin/env python
#gpio-setup.py
### BEGIN INIT INFO
# Provides:          gpio-setup.ch
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Setup mode gpio
# Description:       Setup gpio 22/27/17/4 mode out
### END INIT INFO

import RPi.GPIO as GPIO
#Definimos el modo BCM
GPIO.setmode(GPIO.BCM)
#Definimos los pines GPIO como salida
GPIO.setup(4, GPIO.OUT)
GPIO.setup(17, GPIO.OUT)
GPIO.setup(27, GPIO.OUT)
GPIO.setup(22, GPIO.OUT)
Recordar dar los permisos de ejecución correspondientes. En mi caso yo lo deje agregado con el inicio del sistema.

Una cosa interesante que encontré, fue que se pueden ejecutar comandos shell directamente desde php... Que impresionante es la technologia!!!
:)

Así que como... mi solitaria neurona adquirió más peso, decidí utilizar lo aprendido, con una funcionalidad básica, pero que la andaba buscando:

Código: Seleccionar todo

if(isset($_GET)){
	 $status_port1 = shell_exec("gpio -g read 22");
	 $status_port2 = shell_exec("gpio -g read 27");
	 $status_port3 = shell_exec("gpio -g read 17");
	 $status_port4 = shell_exec("gpio -g read 4");
 }
Leo el estado de los pines y muestro el dato por pantalla, bueno, esto relacionado a mi pequeño proyecto de una RPi PDU. Esto me imprime 0 o 1, y ahora me estoy cabeceando en como poder transformar esa variable en On/Off, pero por algún motivo que pronto descubriré, no me hace el cambio. Si alguien me ayuda… lo tendre en mis oraciones.