0 Membros e 1 Visitante estão a ver este tópico.
int pwn_esq = (5);int pwn_dir = (6);void setup(){ Serial.begin(9600); pinMode (3, OUTPUT); pinMode (4, OUTPUT); pinMode (7, OUTPUT); pinMode (8, OUTPUT); pinMode (pwn_esq, OUTPUT); pinMode (pwn_dir, OUTPUT); }void loop(){ if ( Serial.available() > 0) { char inByte = Serial.read(); delay(10); if (inByte == '*') { int len = 5; char inString[len]; for (int i = 0; i <= len; i++) { inString[i] = Serial.read(); } // Motores / Direcção if ((inString[0] == 0 + 0x30) && (inString[1] == 0 + 0x30)) { // Mortor esquerda parado digitalWrite(3, LOW); digitalWrite(4, LOW); // Motor direita parado digitalWrite(7, LOW); digitalWrite(8, LOW); } else if ((inString[0] == 1 + 0x30) && (inString[1] == 0 + 0x30)) { // Mortor esquerda frente digitalWrite(3, LOW); digitalWrite(4, HIGH); analogWrite (pwn_esq, 255); // Motor direita frente digitalWrite(7, LOW); digitalWrite(8, HIGH); analogWrite (pwn_dir, 255); } else if ((inString[0] == 2 + 0x30) && (inString[1] == 0 + 0x30)) { // Mortor esquerda tras digitalWrite(3, HIGH); digitalWrite(4, LOW); analogWrite (pwn_esq, 255); // Motor direita tras digitalWrite(7, HIGH); digitalWrite(8, LOW); analogWrite (pwn_dir, 255); } else if ((inString[0] == 0 + 0x30) && (inString[1] == 1 + 0x30)) { // Mortor esquerda tras digitalWrite(3, HIGH); digitalWrite(4, LOW); analogWrite (pwn_esq, 255); // Motor direita frente digitalWrite(7, LOW); digitalWrite(8, HIGH); analogWrite (pwn_dir, 255); } else if ((inString[0] == 1 + 0x30) && (inString[1] == 1 + 0x30)) { // Mortor esquerda parado digitalWrite(3, LOW); digitalWrite(4, LOW); // Motor direita frente digitalWrite(7, LOW); digitalWrite(8, HIGH); analogWrite (pwn_dir, 255); } else if ((inString[0] == 2 + 0x30) && (inString[1] == 1 + 0x30)) { // Mortor esquerda parado digitalWrite(3, LOW); digitalWrite(4, LOW); // Motor direita tras digitalWrite(7, HIGH); digitalWrite(8, LOW); analogWrite (pwn_dir, 255); } else if ((inString[0] == 0 + 0x30) && (inString[1] == 2 + 0x30)) { // Mortor esquerda frente digitalWrite(3, LOW); digitalWrite(4, HIGH); analogWrite (pwn_dir, 255) // Motor direita tras digitalWrite (7, HIGH); // -----> O ERRO É A PARTIR DAQUI <----- digitalWrite(8, LOW); analogWrite (pwn_dir, 255); } else if ((inString[0] == 1 + 0x30) && (inString[1] == 2 + 0x30)) { // Mortor esquerda frente digitalWrite(3,LOW); digitalWrite(4,HIGH); analogWrite (pwn_dir, 255) // Motor direita parado digitalWrite(7,LOW); digitalWrite(8,LOW); } else if ((inString[0] == 2 + 0x30) && (inString[1] == 2 + 0x30)) { // Mortor esquerda tras digitalWrite(3,HIGH); digitalWrite(4,LOW); analogWrite (pwn_dir, 255) // Motor direita parado digitalWrite(7,LOW); digitalWrite(8,LOW); } } }}
int inString[len]; for (int i = 0; i <= len; i++) { inString[i] = Serial.read(); }
analogWrite (pwn_dir, 255); // Motor direita tras digitalWrite (7, HIGH); // -----> O ERRO É A PARTIR DAQUI <-----
Supostamente tens vários erros:1º (neste tenho algumas duvidas mas acho que está correcto como tenho)Código: [Seleccione] int inString[len]; for (int i = 0; i <= len; i++) { inString[i] = Serial.read(); }2º faltam-te ; em todos os analogWrite a partir de aquiCódigo: [Seleccione] analogWrite (pwn_dir, 255); // Motor direita tras digitalWrite (7, HIGH); // -----> O ERRO É A PARTIR DAQUI <-----
error: expected';' before 'digitalWrite'in function 'void loop()':error: expected ';' before 'digitalWrite'
2º faltam-te ; em todos os analogWrite a partir de aqui
int pwn_esq = (5);int pwn_dir = (6);void setup(){ Serial.begin(9600); pinMode (3, OUTPUT); pinMode (4, OUTPUT); pinMode (7, OUTPUT); pinMode (8, OUTPUT); pinMode (pwn_esq, OUTPUT); pinMode (pwn_dir, OUTPUT); }void loop(){ if ( Serial.available() > 0) { char inByte = Serial.read(); delay(10); if (inByte == '*') { int len = 5; char inString[len]; for (int i = 0; i <= len; i++) { inString[i] = Serial.read(); } // Motores / Direcção if ((inString[0] == 0 + 0x30) && (inString[1] == 0 + 0x30)) { // Mortor esquerda parado digitalWrite(3, LOW); digitalWrite(4, LOW); // Motor direita parado digitalWrite(7, LOW); digitalWrite(8, LOW); } else if ((inString[0] == 1 + 0x30) && (inString[1] == 0 + 0x30)) { // Mortor esquerda frente digitalWrite(3, LOW); digitalWrite(4, HIGH); analogWrite (pwn_esq, 255); // Motor direita frente digitalWrite(7, LOW); digitalWrite(8, HIGH); analogWrite (pwn_dir, 255); } else if ((inString[0] == 2 + 0x30) && (inString[1] == 0 + 0x30)) { // Mortor esquerda tras digitalWrite(3, HIGH); digitalWrite(4, LOW); analogWrite (pwn_esq, 255); // Motor direita tras digitalWrite(7, HIGH); digitalWrite(8, LOW); analogWrite (pwn_dir, 255); } else if ((inString[0] == 0 + 0x30) && (inString[1] == 1 + 0x30)) { // Mortor esquerda tras digitalWrite(3, HIGH); digitalWrite(4, LOW); analogWrite (pwn_esq, 255); // Motor direita frente digitalWrite(7, LOW); digitalWrite(8, HIGH); analogWrite (pwn_dir, 255); } else if ((inString[0] == 1 + 0x30) && (inString[1] == 1 + 0x30)) { // Mortor esquerda parado digitalWrite(3, LOW); digitalWrite(4, LOW); // Motor direita frente digitalWrite(7, LOW); digitalWrite(8, HIGH); analogWrite (pwn_dir, 255); } else if ((inString[0] == 2 + 0x30) && (inString[1] == 1 + 0x30)) { // Mortor esquerda parado digitalWrite(3, LOW); digitalWrite(4, LOW); // Motor direita tras digitalWrite(7, HIGH); digitalWrite(8, LOW); analogWrite (pwn_dir, 255); } else if ((inString[0] == 0 + 0x30) && (inString[1] == 2 + 0x30)) { // Mortor esquerda frente digitalWrite(3, LOW); digitalWrite(4, HIGH); analogWrite (pwn_dir, 255); // Motor direita tras digitalWrite (7, HIGH); // -----> O ERRO É A PARTIR DAQUI <----- digitalWrite(8, LOW); analogWrite (pwn_dir, 255); } else if ((inString[0] == 1 + 0x30) && (inString[1] == 2 + 0x30)) { // Mortor esquerda frente digitalWrite(3,LOW); digitalWrite(4,HIGH); analogWrite (pwn_dir, 255); // Motor direita parado digitalWrite(7,LOW); digitalWrite(8,LOW); } else if ((inString[0] == 2 + 0x30) && (inString[1] == 2 + 0x30)) { // Mortor esquerda tras digitalWrite(3,HIGH); digitalWrite(4,LOW); analogWrite (pwn_dir, 255); // Motor direita parado digitalWrite(7,LOW); digitalWrite(8,LOW); } } }}