Oct
14

كيفية قراءة السلاسل من المسلسل في اردوينو

10/14/2023 04:30 PM بواسطة Admin في Iot


سننظر في هذا البرنامج التعليمي السريع في كيفية قراءة سلاسل إدخال المستخدم من Arduino Serial Monitor أو المحطات التسلسلية الأخرى. خطوات سريعة.

  • حدد "serial_buffer_len" والذي سيكون الحد الأقصى لإدخال المستخدم الذي تتوقعه.
  • ضبط معدل الباود التسلسلي المطلوب.
  • تحقق مما إذا كانت لدينا بيانات تسلسلية متاحة باستخدام 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 وبعد ذلك ستراه مطبوعًا على الشاشة التسلسلية. يعد هذا مقتطف تعليمات برمجية مفيدًا جدًا في حالة رغبتك في إدخال سلاسل من المستخدم وترغب في تنفيذ إجراءات عليه.


افكارك

بحث
راعي
CRYPTOWATCH
تابعنا
الإعلانات

تمت إضافة أداة جديدة: حاسبة أبعاد تكبير SVG.

راعي