Arduino alfabet code

IDE gerelateerde berichten
Berichten: 1
Geregistreerd: 20 Feb 2018, 17:36

Arduino alfabet code

Berichtdoor florisTUD123 » 20 Feb 2018, 17:45

Goedemiddag,

Ik ben met een project bezig en daar heb ik een code nodig waarbij als ik een letter van het alfabet invul, de volgende letter wordt gegeven door het programma.

Dus:
Als de gebruiker een letter (a tot y) intypt, moet het programma met de volgende letter van het alfabet antwoorden.

De volgende code is een beginnetje alleen kom ik er niet verder uit.

char getNextLetter (char L){
return L+1;
}
void setup() {
Serial.begin(9600);
}
void loop() {
if (Serial.available() >0 {
}
}


Is er toevallig toevallig iemand hier die wel snapt hoe ik verder moet?

Gr.
Floris

Advertisement

Gebruikers-avatar
Berichten: 2655
Geregistreerd: 06 Aug 2016, 01:03

Re: Arduino alfabet code

Berichtdoor Koepel » 20 Feb 2018, 18:33

Welkom op dit forum.

Hier heb je een begin, je mag er zelf een functie van maken.

cpp code
void setup() 
{
Serial.begin(9600);

Serial.println( "We zijn begonnen, type teken(s) gevolgd door enter");
}

void loop()
{
if( Serial.available() > 0)
{
int inChar = Serial.read();
if( isprint( inChar))
{
Serial.print( (char) (inChar + 1));
}
}
}


De Serial.read() wordt in een 'int' gelezen. Het is natuurlijk een byte, maar soms kan het handig zijn om daar een 'int' te kiezen. Dan krijg je dus iets raars, dat de variabele "inChar" geen 'char' is maar een 'int'.
De "isprint()" is een standaard 'c' functie.
Door "isprint()" te gebruiken, filter ik de CarriageReturn en LineFeed er uit, dan ben ik daar mooi van af.
Omdat de Serial library een buffer van 32 of 64 byte heeft, kun je meerdere tekens per keer doen. Die komen in de buffer terecht en worden één voor één verwerkt.

Terug naar Arduino IDE

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 8 gasten