arduino code-durchlauf

Gast #3969814
Lesenswert?

Hallo,
ich habe mal eine frage zum ablauf eines durchlaufes.
ich habe den beispielcode um daten per Serial.read() einzulesen
1
int incomingByte = 0;   // for incoming serial data
2

3
void setup() {
4
  Serial.begin(9600);     // opens serial port, sets data rate to 9600 bps
5
}
6

7
void loop() {
8

9
  // send data only when you receive data:
10
  if (Serial.available() > 0) {
11
    // read the incoming byte:
12
    incomingByte = Serial.read();
13

14
    // say what you got:
15
    Serial.print("I received: ");
16
    Serial.println(incomingByte, DEC);
17
  }
18
}

dazu hätte ich jetzt zwei fragen. Was macht der controller, wenn er in 
der zeile
incomingByte = Serial.read();
ist? bleibt er dort stehen? also wartet er dort so lange, bis etwas 
kommt?
Das zweite wäre, was genau ich eingebe. gebe ich eine 1 rein, bekomme 
ich eine 49 heraus. bei 2 -> 50 usw. a ist 97.
Das werde ich aber wohl noch rausfinden.
(Firma: RUB) #3969821
Lesenswert?

Max schrieb:
> Das zweite wäre, was genau ich eingebe. gebe ich eine 1 rein, bekomme
> ich eine 49 heraus. bei 2 -> 50 usw. a ist 97.
> Das werde ich aber wohl noch rausfinden.
Stichwor: ASCII-Code 
(http://de.wikipedia.org/wiki/American_Standard_Code_for_Information_Interchange)
Du gibts keine 1 sondern eine '1', also den String bzw. den Charakter 
'1', ein. Die 49 die du siehst, ist der ASCII-Code fuer die '1', 50 ist 
der ASCII-Code fuer die '2', usw.

Max schrieb:
> Was macht der controller, wenn er in
> der zeile
> incomingByte = Serial.read();
> ist? bleibt er dort stehen? also wartet er dort so lange, bis etwas
> kommt?
http://arduino.cc/en/Serial/Read
1
Returns
2

3
the first byte of incoming serial data available (or -1 if no data is available) - int

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren