Estoy escribiendo un programa para controlar los pines GPIO en mi raspberryPi con C++ y tengo dificultades para exportar con el siguiente código:
char pathString[256]; sprintf(pathString, "%s/export", "/sys/class/gpio"); ofstream exporterFile(pathString); exporterFile << pinNumber; exporterFile.close()Esto funciona y exporta con éxito el pin, pero esto no establece la dirección:
sprintf(pathString, "%sgpio%d/direction", "/sys/class/gpio", pinNumber); ofstream directionFile(pathString); directionFile << pinDirection; directionFile.close();Por alguna razón no puedo escribir en el archivo, quizás no tenga los privilegios correctos. Mi pregunta es, ¿es ese el problema y, de ser así, cómo lo soluciono para poder escribir en el archivo?
Gracias por adelantado
Debe ser root o ejecutar su programa con sudo para usar los pines GPIO. Sin embargo, recomendaría usar la biblioteca cableadopi http://wiringpi.com/ para acceder a GPIO desde c/c++. Es fácil de usar y eleva un poco el nivel de abstracción. También te permite hacer cosas como PWM. Un programa que usa cableadopi también debe ejecutarse con sudo.