Oct
14

Cara Membaca String dari Serial di Arduino

10/14/2023 04:30 PM oleh Admin di Iot


Dalam tutorial singkat ini kita akan melihat bagaimana kita bisa membaca string input pengguna dari Arduino Serial Monitor atau terminal serial lainnya. Langkah cepat.

  • Tentukan serial_buffer_len yang akan menjadi input pengguna maksimal yang Anda harapkan.
  • Tetapkan baud rate serial yang diinginkan.
  • Periksa apakah kami memiliki data Serial menggunakan Serial.available().
  • Panggil fungsi read_serial_input() yang ditentukan pengguna untuk memuat serial_buffer.
//Serial buffer
#define serial_buffer_len  80
char serial_buffer[serial_buffer_len];
String user_input = "";

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

void loop() {
	if (Serial.available() > 0){
		if (read_serial_input(Serial.read(), serial_buffer, serial_buffer_len) > 0) {
			user_input = String(serial_buffer);
		}
		Serial.println("serial user input:" +user_input);	
	}
}

// funtion to read user serial input
int read_serial_input(int read_ch, char *buffer, int len) {
    static int pos = 0;  
    int rpos;   
    if (read_ch > 0) {
        switch (read_ch) {
            case '\r': // Ignore CR
                break;
            case '\n': // Return on new-line
                rpos = pos;
                pos = 0;  // Reset position index ready for next time
                return rpos;
            default:
                if (pos < len-1) {
                    buffer[pos++] = read_ch;
                    buffer[pos] = 0;
                }
        }
    }
    return 0;
}

Setelah mengunggah kode contoh, buka monitor serial dan masukkan sesuatu seperti hello world dan kemudian Anda akan melihatnya tercetak di monitor serial. Ini adalah cuplikan kode yang sangat berguna jika Anda ingin memasukkan string dari pengguna dan ingin melakukan tindakan terhadapnya.


Pikiran Anda

Mencari
SPONSOR
CRYPTOWATCH
IKUTI KAMI
PENGUMUMAN

Alat baru ditambahkan: Kalkulator Dimensi Zoom SVG.

SPONSOR