এই দ্রুত টিউটোরিয়ালে আমরা দেখব কিভাবে আমরা আরডুইনো সিরিয়াল মনিটর বা অন্যান্য সিরিয়াল টার্মিনাল থেকে ব্যবহারকারীর ইনপুট স্ট্রিং পড়তে পারি। দ্রুত পদক্ষেপ.
serial_buffer_len
সংজ্ঞায়িত করুন যা আপনি প্রত্যাশিত সর্বাধিক ব্যবহারকারীর ইনপুট হবে৷Serial.available()
ব্যবহার করে সিরিয়াল ডেটা উপলব্ধ আছে কিনা তা পরীক্ষা করুন।সিরিয়াল_বাফার
লোড করতে ব্যবহারকারীকে সংজ্ঞায়িত read_serial_input()
ফাংশন কল করুন।//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;
}
নমুনা কোড আপলোড করার পরে সিরিয়াল মনিটর খুলুন এবং হ্যালো ওয়ার্ল্ড এর মতো কিছু ইনপুট করুন এবং তারপরে আপনি এটি সিরিয়াল মনিটরে মুদ্রিত দেখতে পাবেন। এটি খুবই দরকারী কোড স্নিপেট যদি আপনি ব্যবহারকারীর কাছ থেকে স্ট্রিং ইনপুট করতে চান এবং এটিতে ক্রিয়া সম্পাদন করতে চান।