elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  capturar salida llamada al sistema
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: capturar salida llamada al sistema  (Leído 1,513 veces)
yoelmend

Desconectado Desconectado

Mensajes: 11


Ver Perfil
capturar salida llamada al sistema
« en: 10 Julio 2017, 02:57 am »

Hola y disculpen mis preguntas de este dia es que este es el único foro c activo  ;-). Esta vez estoy intentando capturar una salida del sistema en un orangepi.

 Cuando digito" cat /sys/class/gpio/gpio1/value" en la consola la misma me devuelve un 0 o un 1.

sprintf(path, "/sys/class/gpio/gpio1/value");  en lenguaje c una forma de enviar el comando seria esta, mi pregunta es como capturo ese 1 o 0 que devuelve el sistema?


En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.497



Ver Perfil
Re: capturar salida llamada al sistema
« Respuesta #1 en: 10 Julio 2017, 03:15 am »

en general value es un archivo, puedes hacer como si leyeras un archivo normal


Código
  1.  
  2. char buff;
  3. FILE *file;
  4. file = fopen("/sys/class/gpio/gpio1/value", "r");
  5. if (file) {
  6.    fread(valor, 1, 1, file);
  7.    fclose(file);
  8. }
  9. int valor = 0;
  10.  
  11. if(buff == '0') {
  12. valor = 0
  13. }else{
  14. valor = 1
  15. }
  16.  
  17.  



hay librerías que simplifican esto como wiring pi , pero creo que es solo para raspberry



En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
yoelmend

Desconectado Desconectado

Mensajes: 11


Ver Perfil
Re: capturar salida llamada al sistema
« Respuesta #2 en: 10 Julio 2017, 04:00 am »

jajajajaj gracias amigo me ha iluminado la mente lo realize de esta forma.

Código
  1.     int valor;
  2.     FILE* fichero = fopen("/sys/class/gpio/gpio1/value","rt");
  3.     fscanf (fichero, "%d", &valor);
  4.     printf("valor: %i \n", valor);
................saludos!


· Los códigos deben ir en etiquetas GeSHi
>aquí las reglas del foro
-Engel Lex
« Última modificación: 10 Julio 2017, 04:02 am por engel lex » En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.497



Ver Perfil
Re: capturar salida llamada al sistema
« Respuesta #3 en: 10 Julio 2017, 04:04 am »

en el metodo fopen no conozco ese "rt" no se para que es la t... nunca lo he visto... y en general prefiero usar fread, porque es "mas seguro" (evita para aplicaciones, que hagan un buffer overflow o algo similar)
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
¿Capturar los datos de salida por pantalla del CMD en C/C++?
Programación C/C++
invisible_hack 4 8,709 Último mensaje 20 Mayo 2010, 19:49 pm
por [Zero]
capturar una llamada GSM y descifrarla [caos computer club] « 1 2 »
Hacking Mobile
imoen 14 13,166 Último mensaje 17 Diciembre 2011, 01:17 am
por imoen
Capturar entrada y salida de paquetes(Juego Online)
Programación Visual Basic
ZylarD 1 1,309 Último mensaje 2 Septiembre 2013, 01:28 am
por 79137913
Capturar entrada y salida de paquetes(Juego Online)
Programación C/C++
ZylarD 1 1,876 Último mensaje 2 Septiembre 2013, 09:24 am
por eferion
Llamada al sistema Select en S.O Linux
Programación C/C++
SDCC 3 1,054 Último mensaje 10 Marzo 2020, 23:47 pm
por RayR
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines