Serial.print() ir Serial.println() yra dvi dažniausiai naudojamos komandos nuosekliajam ryšiui „Arduino“. Šiame straipsnyje bus aptarti skirtumai tarp Serial.print() ir Serial.println() ir kaip jie veikia jūsų Arduino projektą.
Turinys
- Kas yra serijinis ryšys
- Serial.print()
- Serial.println()
- Skirtumas tarp Serial.print() ir Serial.println()
- Išvada
Kas yra serijinis ryšys
Prieš pasinerdami į skirtumus tarp Serial.print() ir Serial.println() , pirmiausia išsiaiškinkime, ką serijinis ryšys yra. Serijinis ryšys yra duomenų perdavimo ir priėmimo procesas. Naudodamiesi šiuo „Arduino“, vienu metu galite perkelti vieną duomenų bitą naudodami nuosekliojo ryšio protokolą. „Arduino“ mes naudojame serijinį objektą, kad keistume duomenis su kompiuteriu naudodami USB prievadą.
Serijinis ryšys yra būtinas norint derinti ir stebėti Arduino projekto elgesį. Galite naudoti jį norėdami atspausdinti jutiklio rodmenis, derinti kodą arba rodyti pranešimus kompiuterio ekrane.
Serial.print()
Serial.print() yra funkcija, kuri siunčia duomenis į nuoseklųjį prievadą nuolatiniu srautu. Tai leidžia siųsti duomenis kaip eilutę, simbolį arba skaitinę reikšmę. Pavyzdžiui, nurodytas kodas siunčia eilutę ' Labas pasauli! “ į Arduino nuoseklųjį prievadą:
Serial.print ( 'Labas pasauli!' ) ;
Serial.print() duomenų pabaigoje neprideda jokių eilučių lūžių ar karietų grįžimų, todėl duomenys nuolat spausdinami toje pačioje eilutėje.
Serial.println()
Serial.println() yra panašus į Serial.print() , bet duomenų pabaigoje prideda eilutės lūžio simbolį (\n). Tai mums parodo kiekvieną kartą Serial.println() Iškviečiama funkcija, kitas spausdinimo sakinys prasidės nauja eilutė. Pavyzdžiui, nurodytas kodas siunčia eilutę ' Labas pasauli! “ ir prideda eilutės lūžių:
Serial.println ( 'Labas pasauli!' ) ;
Tai atspausdins ' Labas pasauli! “ serijiniame Arduino terminale.
Skirtumas tarp Serial.print() ir Serial.println()
Pagrindinis skirtumas tarp Serial.print() ir Serial.println() ar tai Serial.print() siunčia duomenis nuolatiniu srautu, tuo tarpu Serial.println() siunčia duomenis su eilutės pertrauka pabaigoje.
Dabar apžvelgsime pavyzdinį kodą, paaiškinantį abiejų šių funkcijų veikimą.
Serial.print() Pavyzdys
Toliau pateikiamas kodas, paaiškinantis naudojimą Serial.print() :
tuščias nustatymas ( ) {Serialas.begin ( 9600 ) ; // inicijuokite nuoseklųjį ryšį 9600 sparta
}
tuščia kilpa ( ) {
int randomValue = atsitiktinis ( 0 , 1023 ) ; // generuoti atsitiktinę vertę tarp 0 ir 1023
Serial.print ( 'Atsitiktinė reikšmė: ' ) ; // atsispausdinti etiketę
Serial.print ( atsitiktinė vertė ) ; // spausdinkite atsitiktinę reikšmę naujoje eilutėje
delsimas ( 2000 m ) ; // laukti dėl 500 milisekundžių prieš spausdinant dar kartą
}
Šis kodas inicijuoja nuoseklųjį ryšį su 9600 sparta naudojant setup() funkciją. Tada funkcija loop() generuoja atsitiktinio sveikojo skaičiaus reikšmę nuo 0 iki 1023, naudodama funkciją random() ir išsaugo ją kintamojo pavadinime atsitiktinė vertė .
The Serial.print() tada funkcija naudojama etiketei spausdinti ' Atsitiktinė reikšmė: “ į nuoseklųjį monitorių, po to faktinė atsitiktinė reikšmė, kuri spausdinama toje pačioje eilutėje be naujo eilutės simbolio naudojant Serial.print() .
The delsimas() funkcija naudojama pristabdyti ciklo vykdymą 2000 milisekundžių (2 sekundėms).
Išvestis
Išvestyje matome, kad visos reikšmės išspausdintos vienoje eilutėje be jokios eilutės pertraukos.
Serial.println() Pavyzdys
Pateiktas kodas parodo, kaip naudojamas Serial.println() funkcija Arduino.
tuščias nustatymas ( ) {Serialas.begin ( 9600 ) ; // inicijuokite nuoseklųjį ryšį 9600 sparta
}
tuščia kilpa ( ) {
int randomValue = atsitiktinis ( 0 , 1023 ) ; // generuoti atsitiktinę vertę tarp 0 ir 1023
Serial.print ( 'Atsitiktinė reikšmė: ' ) ; // atsispausdinti etiketę
Serial.println ( atsitiktinė vertė ) ; // spausdinkite atsitiktinę reikšmę naujoje eilutėje
delsimas ( 2000 m ) ; // laukti dėl 500 milisekundžių prieš spausdinant dar kartą
}
Kodas skirtas Serial.println() yra panašus į aukščiau pateiktą Serial.print() kodas. Vienintelis skirtumas yra atsitiktinės reikšmės, kurios generuojamos ir išspausdinamos su eilutės lūžiu, kurio trūksta Serial.print() kodas.
Išvestis
Visos reikšmės spausdinamos naujoje eilutėje, kaip mes naudojome Serial.print() vietoj Serial.println() :
Išvada
Serijinis ryšys yra esminis Arduino programavimo aspektas. The Serial.print() ir Serial.println() funkcijos yra naudingos rodant duomenis Arduino Serial terminale. Suprasdami skirtumą tarp jų ir tinkamai juos naudodami, galėsite derinti kodą ir susisiekti su išoriniais įrenginiais.