سننظر في هذا البرنامج التعليمي السريع في كيفية قراءة سلاسل إدخال المستخدم من Arduino Serial Monitor أو المحطات التسلسلية الأخرى. خطوات سريعة.
Serial.available()
.read_serial_input()
التي حددها المستخدم لتحميل 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;
}
بعد تحميل نموذج التعليمات البرمجية، افتح الشاشة التسلسلية وأدخل شيئًا مثل hello World وبعد ذلك ستراه مطبوعًا على الشاشة التسلسلية. يعد هذا مقتطف تعليمات برمجية مفيدًا جدًا في حالة رغبتك في إدخال سلاسل من المستخدم وترغب في تنفيذ إجراءات عليه.