Serial.readString() Fungsi Arduino

Serial Readstring Fungsi Arduino



Untuk memprogram papan mikropengawal pengaturcaraan Arduino digunakan. Salah satu fungsi utama pengaturcaraan Arduino ialah fungsi Serial.readString(). Dalam artikel ini, kita akan menyelami butiran fungsi ini, kes penggunaannya, dan cara ia boleh dilaksanakan dalam pengaturcaraan Arduino.

Memahami fungsi Serial.readString().

Fungsi Serial.readString() ialah sebahagian daripada Pustaka Serial Arduino, yang membolehkan komunikasi antara mikropengawal dan komputer atau peranti luaran lain.

Fungsi ini membolehkan mikropengawal membaca rentetan aksara yang dihantar daripada sambungan bersiri. Fungsi membaca data daripada penimbal bersiri dan mengembalikan data dalam bentuk objek String.







Fungsi ini diwarisi daripada kelas Stream.



Sintaks

Sintaks fungsi ini adalah seperti berikut:



bersiri. readString ( )

Parameter

Fungsi ini tidak mengambil sebarang parameter. Ia hanya membaca objek port bersiri.





Pulangan

Mengembalikan String yang mengandungi aksara yang diterima melalui port bersiri. Rentetan berakhir dengan aksara terakhir yang diterima, yang selalunya merupakan aksara baris baharu (\n). Jika tiada aksara tersedia dalam penimbal bersiri, fungsi mengembalikan rentetan kosong (“”).

Catatan: Jika aksara baris akhir tersedia dalam data, fungsi itu tidak akan ditamatkan lebih awal. Rentetan yang dikembalikan mungkin mengandungi aksara pemulangan pengangkutan.



Contoh Kod

Kod di bawah menunjukkan penggunaan fungsi Serial.readString() dalam pengaturcaraan Arduino:

Kod di bawah menunjukkan penggunaan fungsi Serial.readString() dalam pengaturcaraan Arduino:

batal persediaan ( ) {
bersiri. bermula ( 9600 ) ;
}
batal gelung ( ) {
bersiri. println ( 'Masukkan data:' ) ;
sementara ( bersiri. tersedia ( ) == 0 ) { } //tunggu data tersedia
Ujian rentetan = bersiri. readString ( ) ; //baca sehingga tamat masa
teststr. memangkas ( ) ; // alih keluar sebarang \r \n ruang putih dari hujung String
bersiri. cetak ( 'Input Data:' ) ;
bersiri. println ( teststr ) ;
jika ( teststr == 'hello' ) {
bersiri. println ( 'Hello kepada awak juga!' ) ;
} lain {
bersiri. println ( 'Maaf, saya tidak faham input awak.' ) ;
}
}

Di dalam persediaan() komunikasi bersiri fungsi didayakan menggunakan kadar baud 9600.

Di dalam gelung() fungsi, kod menggesa pengguna untuk memasukkan data dengan mencetak “Masukkan data:” ke monitor bersiri. Ia kemudian menunggu data tersedia dengan menyemak sama ada penimbal bersiri kosong menggunakan fungsi Serial.available().

Setelah data tersedia, kod membaca data sebagai String menggunakan fungsi Serial.readString() dan mengalih keluar sebarang aksara ruang putih di hujung String menggunakan fungsi trim().

Kod itu kemudian membandingkan String input dengan String 'hello'. Jika Rentetan input ialah “hello” , kod bertindak balas dengan mencetak “Hello kepada awak juga!” ke monitor bersiri. Jika tidak, ia mencetak 'Saya minta maaf, saya tidak faham input anda.' ke monitor bersiri. Fungsi gelung() kemudian berulang, menggesa pengguna untuk lebih banyak input.

Pengeluaran

Dalam output kita boleh melihat rentetan berbeza yang dibaca kod daripada pengguna dan memadankannya dengan rentetan 'hello'.

Kesimpulan

Fungsi Serial.readString() dalam Arduino membaca data bersiri yang dihantar dari komputer atau peranti lain ke papan. Menggunakan fungsi ini, kita boleh membaca dan membandingkan data rentetan bersiri input untuk menjana respons output seperti mengawal penderia dan peranti perkakasan.