Serial.write()

Leírás

Bináris adatokat ír a soros portra. Ezeket az adatokat bájtként vagy bájtok sorozataként küldi el; egy szám számjegyeit képviselő karakterek elküldéséhez használja helyette a print() függvényt.

Szintaxis

Serial.write(val)
Serial.write(str)
Serial.write(buf, len)

Paraméterek

Serial: soros port objektum. Tekintse meg az egyes kártyákhoz elérhető soros portok listáját a Serial főoldalon.
val: egyetlen bájtként küldendő érték.
str: egy bájtsorozatként küldendő karakterlánc.
buf: bájtok sorozataként küldendő tömb.
len: a tömbből küldendő bájtok száma.

Visszatérési érték

A write() a megírt bájtok számát adja vissza, bár ennek a számnak a beolvasása nem kötelező. Adattípus: size_t.

Példa

void setup() {
  Serial.begin(9600);
}

void loop() {
  Serial.write(45); // egy byte küldése 45-ös értékkel

  int bytesSent = Serial.write("hello");  //a "hello" string küldése és visszakapjuk a string hosszát.
}

Megjegyzések és figyelmeztetések

Az Arduino IDE 1.0 óta a soros átvitel aszinkron. Ha van elég üres hely az átviteli pufferben, a Serial.write() visszatér, mielőtt bármilyen karaktert soros úton továbbítana. Ha az átviteli puffer megtelt, akkor a Serial.write() blokkolja, amíg lesz elég hely a pufferben. A Serial.write() hívások blokkolásának elkerülése érdekében először ellenőrizheti az átviteli pufferben lévő szabad terület mennyiségét az availableForWrite() segítségével.