logo

Arduino Serial.read() i Serial.write()

Arduino Serial.read()

The Serial.read() u Arduinu čita dolazne serijske podatke u Arduinu. The int ovdje se koristi tip podataka. Vraća prvi podatkovni bajt pristiglih serijskih podataka. Također vraća -1 kada podaci nisu dostupni na serijskom portu.

Sintaksa koja se koristi u Arduino programiranju je Serial.read(),

Gdje,

serijski : Označava objekt serijskog porta.

Arduino Serial.read() i Serial.write()

Podaci se pohranjuju u obliku bajtova, gdje je 1 bajt = 8 bita.

Shvatimo s primjerom.

Razmotrite donji kôd.

arraylist u Javi
 int arrivingdatabyte; void setup( ) { Serial.begin(9600); } void loop( ) { if(Serial.available( ) > 0) { arrivingdatabyte = Serial.read( ); // It will read the incoming or arriving data byte Serial.print('data byte received:'); Serial.println(arrivingdatabyte); } } 

Gornji kod jasno objašnjava da se Serial.available() koristi za dobivanje dostupnog broja bajtova ako je veći od 0. Funkcija Serial.read() će pročitati podatke iz bajta podataka i ispisati poruku ako podaci je primljeno. Podaci se šalju sa serijskog monitora na Arduino.

Serial.readString()

Čita dolazne serijske podatke iz serijskog međuspremnika u nizu. The Niz ovdje se koristi tip podataka.

Arduino Serial.read() i Serial.write()

Shvatimo s primjerom.

Razmotrite donji kôd.

 String b; void setup( ) { Serial.begin(4800); } void loop( ) { while( Serial.available( ) ) { b = Serial.readString( ); Serial.println(b); } } 

Gornji kod jasno objašnjava da je Serial.readString() koristi se za čitanje serijskih podataka u niz. Ovdje naveden niz je b .

java char u int

Podaci u funkciji Serial čitaju se kao niz u gornjem kodu.

Kako se serijski podaci čitaju pomoću Serial.readString( ) i Serial.read( )?

Funkcija Serial.read() čita podatke u smislu bajtova, dok Serial.readString() čita podatke u smislu niza.

Serial.write( )

Šalje binarne podatke na serijski port u Arduinu. Podaci putem Serial.write šalju se kao niz bajtova ili jedan bajt. Tip podataka je veličina_t .

Funkcija Serial.write() vratit će broj zapisanih bajtova.

Ako želimo poslati znamenke brojeva predstavljene znakovima, trebamo koristiti funkciju Serial.print() umjesto Serial.write().

Arduino Serial.read() i Serial.write()

Serial.write() je deklariran u tri formata, koji su prikazani u nastavku:

  • napisati ( str )
  • napisati (vrijednost)
  • pisati (međuspremnik, dužina)

Gdje,

Serijski : Označava objekt serijskog porta.

str : str znači niz, koji šalje podatke kao niz bajtova.

pufer : To je polje koje se koristi za slanje podataka kao niza bajtova.

što je java hashmap

vrijednost : Šalje podatke Arduinu kao jedan bajt.

samo : Označava broj bajtova koji se mogu poslati iz niza.

Shvatimo na jednostavnom primjeru.

Razmotrite donji kôd.

 void setup( ) { Serial.begin(14400); } void loop( ) { Serial.write(55); // the specified value is 55. // Serial.write( ) send the data as a byte with this value (55). int Bytestosend = Serial.write( ' Arduino' ); // It sends the Arduino string. //The length of the string is a return parameter in this function. }