diff --git a/init.c b/init.c index fcff677..488e21e 100644 --- a/init.c +++ b/init.c @@ -32,6 +32,7 @@ #include "serial.h" #include "stm32.h" #include "port.h" +#include "utils.h" struct gpio_list { struct gpio_list *next; @@ -237,11 +238,13 @@ static int gpio_sequence(struct port_interface *port, const char *s, size_t l) if (!delimiter) { /* actual gpio/port signal driving */ if (gpio < 0) { gpio = -gpio; - fprintf(stdout, " setting port signal %.3s to %i\n", sig_str, level); + fprintf(stdout, " setting port signal %.3s to %i... ", sig_str, level); ret = (port->gpio(port, gpio, level) != PORT_ERR_OK); + printStatus(stdout, ret); } else { - fprintf(stdout, " setting gpio %i to %i\n", gpio, level); + fprintf(stdout, " setting gpio %i to %i... ", gpio, level); ret = (drive_gpio(gpio, level, &gpio_to_release) != 1); + printStatus(stdout, ret); } } diff --git a/utils.c b/utils.c index 271bb3e..4bfba17 100644 --- a/utils.c +++ b/utils.c @@ -43,3 +43,10 @@ uint32_t le_u32(const uint32_t v) { ((v & 0x000000FF) << 24); return v; } + +void printStatus(FILE *fd, int condition){ + if(condition) + fprintf(fd, "Error!\n"); + else + fprintf(fd, "OK\n"); +} diff --git a/utils.h b/utils.h index a8d37d2..07395d3 100644 --- a/utils.h +++ b/utils.h @@ -22,9 +22,12 @@ #define _H_UTILS #include +#include char cpu_le(); uint32_t be_u32(const uint32_t v); uint32_t le_u32(const uint32_t v); +void printStatus(FILE *fd, int condition); + #endif