با استفاده از این روش، به شما نشان خواهم داد که چگونه می توانید به 5 ورودی (یا حتی بیشتر) از طریق 1 پین آردوینو دسترسی داشته باشید. این دکمه ها فقط در صورتی به درستی خوانده می شوند که در هر زمان فقط یکی از آنها فشار داده شود.
همانطور که آن را مرور می کنیم، اطلاعات پس زمینه ای را که باید بدانید توضیح می دهم، تا زمانی که بتوانید یک دکمه را پلک بزنید، یک سوئیچ را بخوانید و یک ورودی آنالوگ را بخوانید، خوب خواهید بود. اگر نمی توانید هیچ یک از اینها را انجام دهید، در مراحل مربوطه نیز شما را در مسیر درست راهنمایی می کنم.
مرحله 1: لیست قطعات
این بسیار ساده است:
1 x آردوینو (بدیهی است)
1 x 100K مقاومت (قهوهای مشکی زرد)
1 x 1K مقاومت (قهوهای مشکی قرمز)
1 x 10K مقاومت (قهوهای مشکی نارنجی)
1 x 33K مقاومت (نارنجی نارنجی نارنجی)
1 x 68K Resistor (نارنجی نارنجی) )
4 سوئیچ دکمه فشاری
تعدادی سیم برای اتصال همه آن
می توانید از هر دکمه فشاری که ممکن است در اطراف خود دارید استفاده کنید، و مقادیر مقاومت مهم نیستند. بعداً در مورد این بیشتر توضیح دهید. مرحله 2: تئوری - چگونه دکمه ها معمولاً خوانده می شوند.
مرحله 2: تئوری - چگونه دکمه ها به طور معمول خوانده می شوند.
اجازه می دهد ابتدا به نحوه خواندن یک دکمه نگاه کنیم. در ساده ترین شکل آن، دکمه خود را مانند مدار نشان داده شده وصل می کنید.
همانطور که می بینید، به 1 پایه ورودی و 1 مقاومت برای هر دکمه نیاز دارید، و سپس می توانید وضعیت را در طرح آردوینو خود با استفاده از thi بررسی کنید.
من تمام تنظیمات و غیره را نشان نمی دهم... بدیهی است که شما باید همه چیز را اعلام کنید و پین را به عنوان ورودی تنظیم کنید و غیره. می توانید مثال کامل را در وب سایت آردوینو ببینید .
اگر فقط از 1 یا 2 دکمه استفاده می کنید خوب است، اما اگر به 10 دکمه نیاز دارید چه؟ این پین های IO بسیار کمی برای هر کاری که ممکن است بخواهید انجام دهید باقی می ماند.
مرحله 3: تئوری - دکمه های متعدد در یک پین
بنابراین چگونه می توان چندین دکمه را روی یک پین قرار داد؟
شما تقلب می کنید! راز این کار استفاده از پین ورودی آنالوگ است نه دیجیتال.
می توانید با مطالعه این آموزش آردوینو در مورد نحوه عملکرد ورودی آنالوگ مطالعه کنید . در اصل، چیزی که باید بدانید این است که وقتی 0 ولت روی پین آنالوگ وجود دارد، analogRead() مقدار 0 را برمی گرداند و اگر 5 ولت باشد، analogRead مقدار 1023 را برمی گرداند. برای هر ولتاژ بین 0 ولت و 5 ولت، analogRead عددی متناسب با ولتاژ برمی گرداند.