From e41f6e40aef54bc0ab7467f282a7004bb876df70 Mon Sep 17 00:00:00 2001 From: Ignacio Abundez Date: Thu, 24 Sep 2026 09:08:02 -0600 Subject: [PATCH 1/2] error catcher tested --- main.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/main.c b/main.c index ca352f1..e794e4e 100644 --- a/main.c +++ b/main.c @@ -6,6 +6,10 @@ int main (int argc, char *argv[]){ int fd; // export fd = open("/sys/class/gpio/chip0/export", O_WRONLY); + if (fd < 0){ + perror("Error opening the GPIO export path"); + return -1; + } write(fd,"17", 2); close(fd); @@ -32,9 +36,6 @@ int main (int argc, char *argv[]){ close(fd); - - - printf("Hello from Raspberry Pi!\n"); printf("Number of arguments: %d\n",argc); printf("Program is reciving: %s\n",argv[0]); From 40906b472d018d61431fb5ae76019838c81796a2 Mon Sep 17 00:00:00 2001 From: Ignacio Abundez Date: Thu, 24 Sep 2026 09:16:30 -0600 Subject: [PATCH 2/2] error catcher in all fds --- main.c | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/main.c b/main.c index e794e4e..cd11ae2 100644 --- a/main.c +++ b/main.c @@ -7,7 +7,7 @@ int main (int argc, char *argv[]){ // export fd = open("/sys/class/gpio/chip0/export", O_WRONLY); if (fd < 0){ - perror("Error opening the GPIO export path"); + perror("Error opening the GPIO path"); return -1; } write(fd,"17", 2); @@ -15,23 +15,39 @@ int main (int argc, char *argv[]){ //pin direction fd = open("/sys/class/gpio/chip0/gpio17/direction", O_WRONLY); + if (fd < 0){ + perror("Error opening the GPIO path"); + return -1; + } write(fd,"out", 3); close(fd); //pin value fd = open("/sys/class/gpio/chip0/gpio17/value", O_WRONLY); + if (fd < 0){ + perror("Error opening the GPIO path"); + return -1; + } write(fd,"1", 1); close(fd); sleep(1); fd = open("/sys/class/gpio/chip0/gpio17/value", O_WRONLY); + if (fd < 0){ + perror("Error opening the GPIO path"); + return -1; + } write(fd,"0", 1); close(fd); sleep(1); //unexport fd = open("/sys/class/gpio/chip0/unexport", O_WRONLY); + if (fd < 0){ + perror("Error opening the GPIO path"); + return -1; + } write(fd,"17", 2); close(fd);