آموزش مبتدی الکترونیک

آموزش مانیتور سریال آردوینو؛ دیدن داده‌ها و عیب‌یابی

آموزش مانیتور سریال آردوینو
تصویر آموزشی از ویکی‌مدیا کامنز؛ برای مجوز و نام پدیدآورنده، صفحهٔ پرونده را ببینید.

در این آموزش مانیتور سریال آردوینو یاد می‌گیریم پیام‌های برنامه و مقدار ورودی آنالوگ را روی رایانه ببینیم. این ابزار برای فهمیدن وضعیت مدار و پیدا کردن خطا بسیار کاربردی است. برای انجام تمرین به برد آردوینو، کابل USB و نرم‌افزار Arduino IDE نیاز دارید؛ قطعهٔ اضافی لازم نیست.

مانیتور سریال آردوینو چیست؟

مانیتور سریال پنجره‌ای در محیط برنامه‌نویسی است که متن فرستاده‌شده از برد را نشان می‌دهد. در این تمرین مقدار پایهٔ A0 را می‌خوانیم. اگر A0 به چیزی وصل نباشد، مقدار آن ممکن است شناور و متغیر باشد؛ برای مشاهدهٔ معنادار، یک پتانسیومتر را مانند درس خواندن ورودی آنالوگ به A0 وصل کنید. اتصال پایه‌های کناری پتانسیومتر به 5V و GND و پایهٔ میانی به A0 برای بردهای ۵ ولتی مانند Uno R3 مناسب است؛ مشخصات برد خود را بررسی کنید.

کد نمایش مقدار ورودی آنالوگ

void setup() {
  Serial.begin(9600);
}
void loop() {
  int value = analogRead(A0);
  Serial.println(value);
  delay(200);
}

برنامه را روی برد بارگذاری کنید، سپس Serial Monitor را باز کنید و سرعت پنجره را روی 9600 baud بگذارید. عددها با چرخاندن پتانسیومتر تغییر می‌کنند. Serial.begin(9600) ارتباط را آغاز می‌کند و Serial.println مقدار را همراه با رفتن به خط بعد می‌فرستد. در Uno R3 مقدار خوانده‌شده معمولاً در بازهٔ صفر تا ۱۰۲۳ است؛ دقت ADC در بردهای دیگر می‌تواند متفاوت باشد.

اگر چیزی دیده نمی‌شود

ابتدا برد و درگاه درست را در IDE انتخاب کنید. سرعت مانیتور باید با کد یکی باشد. مطمئن شوید کد بدون خطا بارگذاری شده و کابل USB انتقال داده را پشتیبانی می‌کند. اگر عددها بی‌قاعده تغییر می‌کنند، اتصال A0 و زمین مشترک را بررسی کنید. از اتصال مستقیم ولتاژ بالاتر از محدودهٔ مجاز ورودی برد خودداری کنید.

تمرین و مسیر بعدی

مقدار ورودی را هر ۲۰۰ میلی‌ثانیه چاپ کنید و سپس فاصله را به ۱۰۰۰ تغییر دهید. تفاوت سرعت نمایش را ببینید. پس از این تمرین، در درس حسگر نور LDR همین پنجره را برای مشاهدهٔ نور به کار می‌بریم. برای نمایش داده بدون توقف برنامه، درس millis را بخوانید.

منبع تکمیلی: نمونه‌های ارتباط سریال آردوینو.