در این مثال (صفحه کلید سریال با آردوینو ) ، برنامه آردوینو منتظر می ماند تا یک بایت از ورودی سریال دریافت کند. پس از دریافت، آردوینو کد مربوط به یک کلید را به سمت کامپیوتر برمیگرداند. کد برگشت داده شده یک واحد از کد دریافت کرده بیشتر است. مثلا اگر آردوینو “a” را دریافت کند، “b” را برمیگرداند. یا اگر عدد “1” را دریافت کند عدد “2” را برمیگرداند.
تذکر : زمانی که از تابع ()Keyboard.print استفاده می کنید، برد های آردوینو Leonardo، Micro یا Due به صفحه کلید دسترسی پیدا می کند. برای اطمینان از عدم تداخل عملکرد آردوینو با عملکرد کامپیوتر هنگام استفاده از صفحه کلید، پیش از فراخوانی تابع ()Keyboard.print از یک برنامه کنترلی مناسب به این منظور استفاده نمایید.
به طور خلاصه این برنامه پس از دریافت یک بایت از طریق پورت سریال، یک دستور صفحه کلید را متناسب با مقدار دریافت شده به سمت کامپیوتر ارسال می کند.
قطعات و وسایل مورد نیاز :
- 1 عدد برد آردوینو Leonardo ، Micro یا Due
مراحل :
تنها کافی است برد را توسط کابل USB به کامپیوتر خود متصل نمایید. کد زیر را مانند توضیحات قسمت نرم افزار آردوینو کامپایل و پروگرم کنید روی آردوینو و تمام.
نرم افزار آردوینو :
برنامه آردوینو را بر روی کامپیوتر خود باز نمایید. کدهای نوشته شده در این بخش مدار شما را کنترل می کند. یک sketch جدید با کلیک بر روی گزینه New ایجاد نمایید.
نکته : حتما توجه داشته باشید که باید فایل کتابخانه صفحه کلید Keyboard.h را به برنامه خود اضافه کنید.
مطابق شکل زیر فایل کتابخانه keypad را که در پوشه libraries هست در فایل برنامه خود paste کنید.
مثلا در ویندوز در مسیر زیر این کتابخونه موجود است :
C:\Program Files (x86)\Arduino\libraries\Keyboard\src
نکته : البته در ورژن های جدید به احتمال زیاد لازم نباشه چون خود نرم افزار تشخیص میده ولی بهتره فایل های لایبری را در کنار پروژه داشته باشید تا پروژه قابل حمل تر باشد…
کد آردوینو :
/* Keyboard test For the Arduino Leonardo, Micro or Due Reads a byte from the serial port, sends a keystroke back. The sent keystroke is one higher than what's received, e.g. if you send a, you get b, send A you get B, and so forth. Melec.ir */ #include "Keyboard.h" void setup() { // open the serial port: Serial.begin(9600); // initialize control over the keyboard: Keyboard.begin(); } void loop() { // check for incoming serial data: if (Serial.available() > 0) { // read incoming serial data: char inChar = Serial.read(); // Type the next ASCII value from what you received: Keyboard.write(inChar + 1); } }
نکات برنامه صفحه کلید سریال با آردوینو :
پس از آپلود برنامه بر روی برد، پنجره سریال را باز کرده و یا بایت را برای برد ارسال نمایید. برد یک واحد بیشتر از عدد بایت ارسال شده را به عنوان پاسخ ارسال می کند.
نکته خیلی مهم : این پروژه فقط و فقط یک مثال است و شما میتوانید کاربرد خاص خودتان را با کمک این کد خیلی خیلی ساده پیاده کنید.
نتایج :
برد آردوینو یک عدد یک بایتی را به عنوان پاسخ ارسال می کند که عدد آن یک واحد از عدد ارسال شده توسط پنجره سریال به آن بییشتر خواهد بود.
و به سادگی پروژه صفحه کلید سریال با آردوینو را انجام دادید به مطالب و پروژه بیشتر سایت مراجعه کنید تا مطالب بیشتری را انجام دهید و تمرین های زیاد باعث سرعت بخشیدن به کار های آتی شما خواهد شد.
اگر این نوشته برایتان مفید بود لطفا کامنت بنویسید.
با عرض سلام.و خسته نباشید
ی مدار طراحی کردم که از طریق برد صفحه کلید پی اس تو و یو اس بی که در مدار استفاده کرده ام یک سری اعداد را به کامپیوتر ارسال میکنه
الان میخام از اردوبنو استفاده کنم
ممنون میشه اگه راهنمایی کنید که اگه برنامه ای مثل صفحه کلید سریال با اردوبنو که توضیحاتش بالا داده شده را نوشته و در اردوبنو آپلود کنم کاراکترهای ارسال شده توسط اردوینو در محیط word قابل دریافت هستند با خیر
ممنون
برنامه بیخودی بود
یک مثال کابردی تر میزدین