Código
código do arduino Arduino
buffer char [67]; byte Pino02 =2; byte Pino03 =3; byte Pino04 =4; byte Pino05 =5; byte Pino06 =6; byte Pino07 =7; byte Pino12 =12; byte Pino13 =13; vazio setup () {Serial.begin (9600); Serial.flush (); pinMode (Pino02, OUTPUT); pinMode (Pino03, OUTPUT); pinMode (Pino04, OUTPUT); pinMode (Pino05, OUTPUT); pinMode (Pino06, OUTPUT); pinMode (Pino07, OUTPUT); pinMode (9, SAÍDA); pinMode (10, SAÍDA); pinMode (12, SAÍDA); pinMode (13, OUTPUT);} void loop () {if (Serial.available ()> 0) {int index =0; delay (100); // deixe o buffer encher int numChar =Serial.available (); if (numChar> 65) {numChar =65; } while (numChar -) {buffer [index ++] =Serial.read (); } splitString (buffer); }} void splitString (char * data) {Serial.print ("Dados inseridos:"); Serial.println (dados); parâmetro char *; parâmetro =strtok (dados, ","); while (parâmetro! =NULL) {setLED (parâmetro); parâmetro =strtok (NULL, ","); } // Limpa o texto e os buffers seriais for (int x =0; x <66; x ++) {buffer [x] ='\ 0'; } Serial.flush ();} void setLED (char * data) {if (data [0] =='A') {analogWrite (9, 50); analogWrite (10, 50); digitalWrite (Pino02, LOW); digitalWrite (Pino03, HIGH); digitalWrite (Pino04, HIGH); digitalWrite (Pino05, LOW); digitalWrite (12, ALTO); digitalWrite (13, BAIXO); } // İLERİSOL if (data [0] =='C') {analogWrite (9, 50); analogWrite (10, 50); digitalWrite (Pino02, HIGH); digitalWrite (Pino03, LOW); digitalWrite (Pino04, LOW); digitalWrite (Pino05, HIGH); digitalWrite (12, ALTO); digitalWrite (13, BAIXO); } // İLERİSAĞ if (data [0] =='B') {analogWrite (9, 25); analogWrite (10, 25); digitalWrite (Pino02, HIGH); digitalWrite (Pino03, LOW); digitalWrite (Pino04, HIGH); digitalWrite (Pino05, LOW); digitalWrite (12, BAIXO); digitalWrite (13, ALTO); } // GERİ1 if (data [0] =='M') {analogWrite (9, 75); analogWrite (10, 75); digitalWrite (Pino02, HIGH); digitalWrite (Pino03, LOW); digitalWrite (Pino04, HIGH); digitalWrite (Pino05, LOW); digitalWrite (12, BAIXO); digitalWrite (13, ALTO); } // GERİ2 if (data [0] =='N') {analogWrite (9, 125); analogWrite (10, 125); digitalWrite (Pino02, HIGH); digitalWrite (Pino03, LOW); digitalWrite (Pino04, HIGH); digitalWrite (Pino05, LOW); digitalWrite (12, BAIXO); digitalWrite (13, ALTO); } // GERİ3 if (data [0] =='P') {analogWrite (9, 175); analogWrite (10, 175); digitalWrite (Pino02, HIGH); digitalWrite (Pino03, LOW); digitalWrite (Pino04, HIGH); digitalWrite (Pino05, LOW); digitalWrite (12, BAIXO); digitalWrite (13, ALTO); } // GERİ4 if (data [0] =='L') {analogWrite (9, 225); analogWrite (10, 225); digitalWrite (Pino02, HIGH); digitalWrite (Pino03, LOW); digitalWrite (Pino04, HIGH); digitalWrite (Pino05, LOW); digitalWrite (12, BAIXO); digitalWrite (13, ALTO); } // GERİ5 if (data [0] =='D') {analogWrite (9, 25); analogWrite (10, 25); digitalWrite (Pino02, LOW); digitalWrite (Pino03, HIGH); digitalWrite (Pino04, LOW); digitalWrite (Pino05, HIGH); digitalWrite (12, ALTO); digitalWrite (13, BAIXO); } // İLERİ1 if (data [0] =='H') {analogWrite (9, 75); analogWrite (10, 75); digitalWrite (Pino02, LOW); digitalWrite (Pino03, HIGH); digitalWrite (Pino04, LOW); digitalWrite (Pino05, HIGH); digitalWrite (12, ALTO); digitalWrite (13, BAIXO); } // İLERİ2 if (data [0] =='I') {analogWrite (9, 125); analogWrite (10, 125); digitalWrite (Pino02, LOW); digitalWrite (Pino03, HIGH); digitalWrite (Pino04, LOW); digitalWrite (Pino05, HIGH); digitalWrite (12, ALTO); digitalWrite (13, BAIXO); } // İLERİ3 if (data [0] =='K') {analogWrite (9, 175); analogWrite (10, 175); digitalWrite (Pino02, LOW); digitalWrite (Pino03, HIGH); digitalWrite (Pino04, LOW); digitalWrite (Pino05, HIGH); digitalWrite (12, ALTO); digitalWrite (13, BAIXO); } // İLERİ4 if (data [0] =='L') {analogWrite (9, 225); analogWrite (10, 225); digitalWrite (Pino02, LOW); digitalWrite (Pino03, HIGH); digitalWrite (Pino04, LOW); digitalWrite (Pino05, HIGH); digitalWrite (12, ALTO); digitalWrite (13, BAIXO); } // İLERİ5 if (data [0] =='U') {digitalWrite (Pino02, LOW); digitalWrite (Pino03, LOW); digitalWrite (Pino04, LOW); digitalWrite (Pino05, LOW); digitalWrite (12, BAIXO); digitalWrite (13, BAIXO); } // DUR if (data [0] =='E') {analogWrite (9, 50); analogWrite (10, 50); digitalWrite (Pino02, LOW); digitalWrite (Pino03, HIGH); digitalWrite (Pino04, LOW); digitalWrite (Pino05, HIGH); } // YAVAŞ İLERİ if (data [0] =='F') {analogWrite (9, 50); analogWrite (10, 50); digitalWrite (Pino02, HIGH); digitalWrite (Pino03, LOW); digitalWrite (Pino04, HIGH); digitalWrite (Pino05, LOW); } // YAVAŞ GERİ}