Arduino Forum

International => Nederlands => Topic started by: Milan_V on Jul 03, 2020, 05:24 pm

Title: !OPGELOST! Waarde inlezen via de serële monitor
Post by: Milan_V on Jul 03, 2020, 05:24 pm
Hallo

Ik ben bezig met een projectje waarin ik gebruik van de seriële monitor om een waarde in te voeren.
Echter stoot ik op een probleem. Wanneer ik namelijk een waarde heb ingegeven, zet arduino automatisch nadat ik de waarde heb ingevoerd een nul in de seriële montitor. Met als gevolg dat het programma niet werkt volgens ik dat zou willen.
De arduino moet namelijk iets doen wanneer de waarde die ik heb ingegeven gelijk is een vooraf bepaalde waarde. Indien dit niet zo is, moet hij iets anders doen. Dat eerste doet hij perfect als ik de juiste waarde ingeef, maar direct erachter voert hij ook het tweede uit. Omdat de 0 die er direct wordt achtergezet niet gelijk is aan de voorafbepaalde waarde.

Met andere woorden, hoe zorg ik ervoor dat er geen nul wordt geplaatst?

Hier nog even de codes die ik gebruik voor mijn Seriële monitor:

if(Serial.available() > 0){
    input = Serial.parseInt();
    Serial.println(input);

Hoop dat iemand mij hierbij kan helpen.
Alvast Bedankt

Milan
Title: Re: Waarde inlezen via de serële monitor
Post by: sterretje on Jul 03, 2020, 05:36 pm
Je kunt de line-ending in de seriele monitor veranderen naar 'none'. Je probleem is zeer warschijnlijk dat je line-ending op <CR><LF> staat en het lezen van die twee resulteert erin dat parseInt een 0 terug geeft.

// Edit
Als je geen problemen hebt met engels kun je de updated Serial Input Basics (https://forum.arduino.cc/index.php?topic=396450.0) eens bestuderen om wat idees te krijgen voor een betrouwbare seriele communicatie.
Title: Re: !OPGELOST! Waarde inlezen via de serële monitor
Post by: Milan_V on Jul 03, 2020, 06:49 pm
Hey

Bedankt voor het snelle antwoord. Heb dit meteen even uitgetest en het werkt.
Dank je!