Elena Tosetti
/
Nucleo_toggle_ios_EXAMPLE
My GPIO tests
Fork of Nucleo_toggle_ios by
main.cpp
- Committer:
- ElenaTosetti
- Date:
- 2018-02-22
- Revision:
- 2:2ac6cdd61c87
- Parent:
- 0:04d55bfd084e
File content as of revision 2:2ac6cdd61c87:
#include "mbed.h" #include <string.h> #define BAUD_RATE 115200 DigitalOut PA9IOs(PA_9); DigitalOut PA10IOs(PA_10); DigitalOut PA11IOs(PA_11); DigitalOut PA12IOs(PA_12); DigitalOut PB4IOs(PB_4); DigitalOut PB5IOs(PB_5); DigitalOut PB6IOs(PB_6); DigitalOut PB7IOs(PB_7); DigitalOut PB12IOs(PB_12); DigitalOut PB13IOs(PB_13); DigitalOut PB14IOs(PB_14); DigitalOut PB15IOs(PB_15); DigitalOut PC6IOs(PC_6); DigitalOut PC7IOs(PC_7); DigitalOut PC8IOs(PC_8); DigitalOut PC9IOs(PC_9); Serial s(USBTX, USBRX); //default for nrf51 is p0.09 p0.11 // Command string char action[256]; char command[12]; unsigned short val; #define N_ITERATIONS 1120 void gpio_action(){ // for(i = 0; i <= 1119; i++) // { PA9IOs = 0; // SET PA9 PB4IOs = 0; // SET PB4 PC6IOs = 0; // SET PC6 PB12IOs = 0; // SET PB12 wait(10); // wait 440 seconds PA10IOs = 0; // SET PA10 PB5IOs = 0; // SET PB5 PC7IOs = 0; // SET PC7 PB13IOs = 0; // SET PB13 wait(2.5); // wait 2.5 seconds PA10IOs = 1; // RESET PA10 PB5IOs = 1; // RESET PB5 PC7IOs = 1; // RESET PC7 PB13IOs = 1; // RESET PB13 //} } int i; int run = 1; int main() { s.baud(BAUD_RATE); //Reset EN_1_1 and EN_1_2 PA9IOs = 1; // RESET PA9 PA10IOs = 1; // RESET PA10 //Reset EN_2_1 and EN_2_2 PB4IOs = 1; // RESET PB4 PB5IOs = 1; // RESET PB5 //Reset EN_3_1 and EN_3_2 PB12IOs = 1; // RESET PB12 PB13IOs = 1; // RESET PB13 //Reset EN_4_1 and EN_4_2 PC6IOs = 1; // RESET PC6 PC7IOs = 1; // RESET PC7 run: s.printf("Action:\r\n"); int count; s.scanf( "%s %d" , action, &count); if (strstr(action, "START") != NULL){ i = 0; s.printf("START command\r\n"); while(i<count && run){ s.printf("Start iteration %d\r\n", i); gpio_action(); s.printf("Done iteration %d\r\n", i); i++; } goto run; } else { s.printf("ERROR: %s unhandled action\r\n",action); } }