Foutmelding

Arduino specifieke Software
Gebruikers-avatar
Berichten: 6
Geregistreerd: 18 Mrt 2020, 23:47

Foutmelding

Berichtdoor Baspiet » 05 Mei 2020, 13:51

Hallo.
Ik ben nog een weinig ervaren beginner en doe een poging om 2 dc motoren met knoppen te besturen.
Hiervoor heb ik een motor schild gekocht bij Elecrow. het is het tweekanaals H-bridge mosfet motorschild.
Mijn schets is afgeleid van de voorbeelschets die ik bij het schild ontving en werkte zoals geleverd goed.
Na mijn aanpassingen krijg ik de volgende foutmelding zowel voor de Arduino Mega als de Uno:

Arduino:1.8.12 (Windows Store 1.8.33.0) (Windows 10), Board:"Arduino Mega or Mega 2560, ATmega2560 (Mega 2560)"
exit status 1
Fout bij het compileren voor board Arduino Mega or Mega 2560.

Mijn schets ziet er mogelijk wat omslachtig en amateuristisch uit. Maar dat mocht de pret niet drukken.

// motor controller elecrow mosfet-Hbridge

void setup()
{
int Button1L = A0;
int Button1R = A1;
int Button2L = A2;
int Button2R = A3;

//Afstandbediening pin
pinMode (Button1L, INPUT);
pinMode (Button1R, INPUT);
pinMode (Button2L, INPUT);
pinMode (Button2R, INPUT);

int buttonState1;
int buttonState2;
int buttonState3;
int buttonState4;

buttonState1 = LOW;
buttonState2 = LOW;
buttonState3 = LOW;
buttonState4 = LOW;

//De pinnen van het motorshield:
//motor 1
pinMode(4, OUTPUT);
pinMode(5, OUTPUT); // Draairichting
pinMode(9, OUTPUT); // Speed control

// Motor_2
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(10, OUTPUT); // Speed control

//Activeer de Motor Shield output;
pinMode(6, OUTPUT);
digitalWrite(6, LOW);

void loop(); {

digitalRead (Button1L);
if (Button1L == HIGH)
{buttonState1 == (Button1L);}
if (buttonState1 == HIGH)
{digitalWrite(6, HIGH);
analogWrite(9,200); // zet de motor1 speed
digitalWrite(4,LOW);
digitalWrite(5,HIGH); // zet de draairichting rechtsom
}
else
{digitalWrite (6, LOW);}

digitalRead (Button1R);
if (Button1R == HIGH)
{buttonState1 == (Button1R);}
if (buttonState2 == HIGH)
{digitalWrite(6, HIGH);
analogWrite(9,200); // zet de motor1 speed
digitalWrite(4,HIGH);
digitalWrite(5,LOW); // zet de draairichting linksom
}
else
{digitalWrite (6, LOW);}
digitalRead (Button2L);
if (Button2L == HIGH)
{buttonState3 == (Button2L);}
if (buttonState1 == HIGH)
if
(buttonState3 == HIGH)
{ digitalWrite(6, HIGH);
analogWrite(9,200); // zet de motor1 speed
digitalWrite(7,LOW);
digitalWrite(8,HIGH); // zet de draairichting rechtsom
}
else
{digitalWrite (6, LOW);}
digitalRead (Button2R);
if (Button2R == HIGH)
{buttonState4 == (Button2R);}
if (buttonState1 == HIGH)
{ digitalWrite(6, HIGH);
analogWrite(9,200); // zet de motor1 speed
digitalWrite(7,HIGH);
digitalWrite(8,LOW); // zet de draairichting van motor1
}
else
{digitalWrite (6, LOW);}
}
}

WAT DOE IK FOUT? ( ik hoop, niet alles)
Soms is het leven echt wel enigszins reuze leuk.

Advertisement

Gebruikers-avatar
Berichten: 631
Geregistreerd: 15 Nov 2015, 11:54

Re: Foutmelding

Berichtdoor Gij Kieken » 05 Mei 2020, 14:34

Je hebt de declaraties van verschillende variabelen in de Set-up geplaatst.
De bedoeling was voorzeker ze globaal te maken.
Dus verplaats ze boven jou Set-up .

Berichten: 4067
Geregistreerd: 16 Okt 2013, 14:31
Woonplaats: s hertogenbosch

Re: Foutmelding

Berichtdoor shooter » 05 Mei 2020, 22:14

er gaan een paar dingen fout: je kunt is je preferences verbose en zo aan zetten, dan krijg je foutmeldingen op het scherm, begin dan met de bovenste rode melding en repareer deze en ga zo verder.
cpp code
void setup()
{// deze naar boven de setup anders zijn ze alleen lokaal in de setup te gebruiken
int pinButton1L = A0;
int pinButton1R = A1;
int pinButton2L = A2;
int pinButton2R = A3;

//Afstandbediening pin // dit mag zo staan, maar is niet nodig
pinMode (pinButton1L, INPUT);
pinMode (Button1R, INPUT);
pinMode (Button2L, INPUT);
pinMode (Button2R, INPUT);
// ook dit naar boven dan zijn ze globaal
int buttonState1;
int buttonState2;
int buttonState3;
int buttonState4;

buttonState1 = LOW;
buttonState2 = LOW;
buttonState3 = LOW;
buttonState4 = LOW;

//De pinnen van het motorshield:
//motor1
// 4,5,9 kun je ook met define doen bovenin of met een byte definieeren. bijv #define m1enable 4 etc

pinMode(4, OUTPUT);
pinMode(5, OUTPUT); // Draairichting
pinMode(9, OUTPUT); // Speed control

// Motor_2
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(10, OUTPUT); // Speed control

//Activeer de Motor Shield output;
pinMode(6, OUTPUT);
digitalWrite(6, LOW);

void loop(); {

buttonstate1L=digitalRead (pinButton1L); //variabele zetten
if (Buttonstate1L == HIGH)
{digitalWrite(6, HIGH);
analogWrite(9,200); // zet de motor1 speed
digitalWrite(4,LOW);
digitalWrite(5,HIGH); // zet de draairichting rechtsom
}
else
{digitalWrite (6, LOW);}
// de rest is aan jou
digitalRead (Button1R);
if (Button1R == HIGH)
{buttonState1 == (Button1R);}
if (buttonState2 == HIGH)
{digitalWrite(6, HIGH);
analogWrite(9,200); // zet de motor1 speed
digitalWrite(4,HIGH);
digitalWrite(5,LOW); // zet de draairichting linksom
}
else
{digitalWrite (6, LOW);}
digitalRead (Button2L);
if (Button2L == HIGH)
{buttonState3 == (Button2L);}
if (buttonState1 == HIGH)
if
(buttonState3 == HIGH)
{ digitalWrite(6, HIGH);
analogWrite(9,200); // zet de motor1 speed
digitalWrite(7,LOW);
digitalWrite(8,HIGH); // zet de draairichting rechtsom
}
else
{digitalWrite (6, LOW);}
digitalRead (Button2R);
if (Button2R == HIGH)
{buttonState4 == (Button2R);}
if (buttonState1 == HIGH)
{ digitalWrite(6, HIGH);
analogWrite(9,200); // zet de motor1 speed
digitalWrite(7,HIGH);
digitalWrite(8,LOW); // zet de draairichting van motor1
}
else
{digitalWrite (6, LOW);}
}
}
paul deelen
shooter@home.nl

Gebruikers-avatar
Berichten: 6
Geregistreerd: 18 Mrt 2020, 23:47

Re: Foutmelding

Berichtdoor Baspiet » 05 Mei 2020, 23:00

Bedankt Shooter.
Je hebt er veel werk van gemaakt om mij verder te helpen.
Hier kan ik wat mee en leer er weer veel van
Morgen ga ik er meteen mee aan de slag :lol:

Gr... Baspiet
Soms is het leven echt wel enigszins reuze leuk.

Gebruikers-avatar
Berichten: 6
Geregistreerd: 18 Mrt 2020, 23:47

Re: Foutmelding

Berichtdoor Baspiet » 06 Mei 2020, 14:02

Shooter en Gij bedankt. :)
Aanbevolen veranderingen en verder nog wat vereenvoudigingen toegepast.
Daarna liep Arduino volledig vast.
Uitgebreide foutmelding was hier een prima tip :idea:
Het bleek dat mijn Java versie out of date was.
Na installatie van een update kan ik de schets compileren. Alles werkt als een tierelier ( hoop ik )
Nu kan ik beginnen aan de bedrading. dan zie ik wel of het in de de praktijk ook voldoet.
Soms is het leven echt wel enigszins reuze leuk.

Gebruikers-avatar
Berichten: 631
Geregistreerd: 15 Nov 2015, 11:54

Re: Foutmelding

Berichtdoor Gij Kieken » 06 Mei 2020, 18:04

Is altijd leuk om ruggespraak te krijgen.
Als alles voorgekauwd is, is het leuk als iets werkt, tot er iets niet lukt, maar als je het zelf doet zoals nu het geval leer je ook nog wat bij.
Zou zo zeggen doe zo voort leuke hobby.

Terug naar Arduino software

Wie is er online?

Gebruikers in dit forum: Google Adsense [Bot] en 20 gasten