این مثال نحوه خواندن یک پین ورودی آنالوگ را نشان میدهد، نتیجه را در محدوده 0 تا 255 ترسیم میکند و سپس از آن نتیجه برای تنظیم مدولاسیون پهنای پالس (PWM) یک پایه خروجی برای کمنور یا روشن کردن LED استفاده میکند.
جریان
تصویر با استفاده از Fritzing ایجاد شده است . برای نمونه مدارهای بیشتر، صفحه پروژه فریتزینگ را ببینید
یک پایه را از دیگ خود به 5 ولت، پایه مرکزی را به پایه آنالوگ 0 و پایه باقیمانده را به زمین وصل کنید. در مرحله بعد، یک مقاومت محدود کننده جریان 220 اهم را به پین دیجیتال 9 با یک LED به صورت سری وصل کنید. پایه بلند و مثبت (آند) LED باید به خروجی مقاومت وصل شود و پایه کوتاهتر و منفی (کاتد) به زمین متصل شود.
شماتیک
کد
در برنامه زیر، پس از اعلام دو تخصیص پین (آنالوگ 0 برای پتانسیومتر و 9 دیجیتال برای LED شما) و دو متغیر، sensorValue
و outputValue
تنها کاری که در تابع setup انجام می دهید، شروع ارتباط سریال است.
در مرحله بعد، در حلقه اصلی کد، sensorValue
مقدار آنالوگ خام را که از پتانسیومتر وارد می شود، ذخیره می کند. از آنجایی که آردوینو دارای analogRead
وضوح 0-1023 و analogWrite
وضوح 0-255 است، این داده های خام پتانسیومتر قبل از استفاده از آن برای کاهش نور LED باید مقیاس شوند.
برای اندازه گیری این مقدار، از تابعی به نام استفاده کنید map()
outputValue = map(sensorValue, 0, 1023, 0, 255);
سخت افزار مورد نیاز