Serial.print() és Serial.println() ez a két leggyakrabban használt parancs soros kommunikációhoz az Arduino-ban. Ez a cikk bemutatja a különbségeket Serial.print() és Serial.println() és hogyan hatnak ezek az Arduino projektre.
Tartalomjegyzék
- Mi a soros kommunikáció
- Serial.print()
- Serial.println()
- Különbség a Serial.print() és a Serial.println() között
- Következtetés
Mi a soros kommunikáció
Mielőtt belemerülnénk a különbségekbe Serial.print() és Serial.println() , először értsük meg, mit soros kommunikáció van. Soros kommunikáció az adatok továbbításának és fogadásának folyamata. Ezzel az Arduino-val egyszerre egy bit adatot tud továbbítani a soros kommunikációs protokoll segítségével. Az Arduinóban a Serial objektumot használjuk adatcserére a számítógéppel USB-porton keresztül.
Soros kommunikáció elengedhetetlen egy Arduino projekt hibakereséséhez és viselkedésének figyeléséhez. Használhatja szenzorok kinyomtatására, hibakeresési kódra vagy üzenetek megjelenítésére a számítógép képernyőjén.
Serial.print()
Serial.print() egy olyan funkció, amely folyamatos adatfolyamban küld adatokat a soros portra. Lehetővé teszi az adatok elküldését karakterláncként, karakterként vagy számértékként. Például a megadott kód egy karakterláncot küld ' Helló Világ! ” az Arduino soros porthoz:
Serial.print ( 'Helló Világ!' ) ;
Serial.print() nem ad sortörést vagy kocsivisszaadást az adatok végére, így az adatok folyamatosan ugyanarra a sorra kerülnek nyomtatásra.
Serial.println()
Serial.println() hasonló Serial.print() , de egy sortörés karaktert (\n) ad hozzá az adatok végéhez. Ez minden alkalommal megmutatja nekünk Serial.println() függvény meghívásakor a következő print utasítás egy új sorban kezdődik. Például a megadott kód elküldi a ' Helló Világ! ” és egy sortörést ad hozzá:
Serial.println ( 'Helló Világ!' ) ;
Ez kinyomtatja a „ Helló Világ! ” az Arduino soros terminálján.
Különbség a Serial.print() és a Serial.println() között
Az elsődleges különbség a között Serial.print() és Serial.println() az, hogy a Serial.print() folyamatos adatfolyamban küldi az adatokat, míg Serial.println() sortöréssel a végén küldi az adatokat.
Most bemutatjuk a példakódot, amely elmagyarázza mindkét függvény működését.
Serial.print() Példa
Az alábbiakban található a kód, amely elmagyarázza a használatát Serial.print() :
üres beállítás ( ) {Serial.begin ( 9600 ) ; // soros kommunikáció inicializálása itt 9600 átviteli sebesség
}
üres hurok ( ) {
int randomValue = véletlenszerű ( 0 , 1023 ) ; // között véletlenszerű értéket generál 0 és 1023
Serial.print ( 'Véletlen érték:' ) ; // nyomtassa ki a címkét
Serial.print ( randomValue ) ; // nyomtatja ki a véletlenszerű értéket egy új sorba
késleltetés ( 2000 ) ; // várjon számára 500 ezredmásodperccel az újbóli nyomtatás előtt
}
Ez a kód inicializálja a soros kommunikációt 9600-as adatátviteli sebességgel a setup() függvényben. A loop() függvény ezután egy véletlenszerű egész értéket generál 0 és 1023 között a random() függvény segítségével, és eltárolja a változó nevében randomValue .
A Serial.print() A funkció ezután a címke kinyomtatására szolgál Véletlenszerű érték: ” a soros monitorra, majd az aktuális véletlenszerű értéket, amely ugyanabba a sorba kerül, új sorkarakter nélkül. Serial.print() .
A késleltetés() A funkció a ciklus végrehajtásának szüneteltetésére szolgál 2000 ezredmásodpercre (2 másodpercre).
Kimenet
A kimenetben láthatjuk, hogy az összes érték egyetlen sorban kerül kinyomtatásra sortörés nélkül.
Serial.println() Példa
A megadott kód a használatát mutatja be Serial.println() funkció az Arduino-ban.
üres beállítás ( ) {Serial.begin ( 9600 ) ; // soros kommunikáció inicializálása itt 9600 átviteli sebesség
}
üres hurok ( ) {
int randomValue = véletlenszerű ( 0 , 1023 ) ; // között véletlenszerű értéket generál 0 és 1023
Serial.print ( 'Véletlen érték:' ) ; // nyomtassa ki a címkét
Serial.println ( randomValue ) ; // nyomtatja ki a véletlenszerű értéket egy új sorba
késleltetés ( 2000 ) ; // várjon számára 500 ezredmásodperccel az újbóli nyomtatás előtt
}
A kód ehhez Serial.println() hasonló a fentihez Serial.print() kód. Az egyetlen különbség itt a véletlenszerű értékek, amelyek generálása és kinyomtatása sortöréssel történik, amely hiányzik a Serial.print() kód.
Kimenet
Minden érték új sorban kerül kinyomtatásra, ahogyan eddig is használtuk Serial.print() ahelyett Serial.println() :
Következtetés
Soros kommunikáció az Arduino programozás alapvető eleme. A Serial.print() és Serial.println() A funkciók hasznosak az adatok megjelenítéséhez az Arduino Serial terminálon. A köztük lévő különbség megértése és megfelelő használata segíthet a kód hibakeresésében és a külső eszközökkel való kommunikációban.