آموزش آردوینو

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

keay-board-ardoino
نوشته شده توسط علیرضا قربانی

به وسیله پردازنده‌ی ۳۲u4 که بر روی  برد های آردوینو Leonardo , Zero و DUE وجود دارد‌‌، می‌توانید یک موس و یا کیبورد مجازی بر روی آردوینو خود ایجاد کنید  و به وسیله‌ی آن بتوانید تمام کار‌هایی را که با موس و کیبورد کامپیوترتان انجام دهید اینبار با آردوینو خود انجام دهید.به وسیله‌ی کتابخانه keyboard می‌توانید توابع مربوط به صفحه کلید کامپیوتر را به وسیله‌ی آردوینو به کامپیوتر ارسال کنید.در ادامه آموزش با  مرجع تخصصی آردوینو ، دیجی اسپارک همراه باشید.

 


معرفی توابع کتابخانه kEYBOARD


لیست توابع کتابخانه keyboard  به صورت زیر می‌باشد که به توضیح هرکدام می‌پردازیم:

  • Keyboard.begin()
  • Keyboard.end()
  • Keyboard.press()
  • Keyboard.print()
  • Keyboard.println()
  • Keyboard.release()
  • Keyboard.releaseAll()
  • Keyboard.write()

 

 


Keyboard.begin()


این تابع حتما باید در ابتدای کار برای معرفی آردوینو به عنوان کیبورد به کامپیوتر باید صدا زده شود. شکل کلی این تابع به صورت زیر می‌باشد و باید در setup آردوینو صدا زده شود.

برای مثال یک کلید را مطابق شکل زیر به آردوینو متصل کنید و کد زیر را بر روی آن آپلود کنید سپس یک ادیتور متن مانند نوت‌پد یا وورد باز کنید و کلید متصل به آردینو را فشار دهید و نتیجه را مشاهده کنید.

آموزش کتابخانه keyboard آردوینو

void setup() {
  // make pin 2 an input and turn on the
  // pullup resistor so it goes high unless
  // connected to ground:
  pinMode(2, INPUT_PULLUP);
  Keyboard.begin();
}

void loop() {
  //if the button is pressed
  if(digitalRead(2)==LOW){
    //Send the message
    Keyboard.print("Hello!");
  }
}

 

 


Keyboard.write()


این تابع مانند این می‌ماند که کلیدی را از روی کیبورد کامپیوتر فشار دهیم و سپس دستمان را برداریم.ساختار کلی این تابع به صروت زیر می‌باشد:

 

Keyboard.write(character)

که به جا‌ی‎   characterمی‌توانید کاراکتر مورد نظر خود را درون کوتیشین قرار دهید یا آن را به صورت کداسکی کاراکتر، کد هگزادسیمال و یا به صورت باینری وارد نمایید. برای مثال برای جاپ کاراتر A می‌توانید به صورت ۴ شکل زیر عمل کنید:

 

Keyboard.write(65);			// sends ASCII value 65, or A
Keyboard.write('A');			// same thing as a quoted character
Keyboard.write(0x41);		// same thing in hexadecimal
Keyboard.write(0b01000001);	// same thing in binary (weird choice, but it works)

 

ای مثال یک کلید را مطابق شکل زیر به آردوینو متصل کنید و کد زیر را بر روی آن آپلود کنید سپس یک ادیتور متن مانند نوت‌پد یا وورد باز کنید و کلید متصل به آردینو را فشار دهید ، همانطور که مشاهده میکنید با هر بار فشار دادن کلید کاراکتر ‘A’ درون ادیتور نوشته می‌ شود.

آموزش کتابخانه keyboard آردوینو

 

void setup() {
  // make pin 2 an input and turn on the
  // pullup resistor so it goes high unless
  // connected to ground:
  pinMode(2, INPUT_PULLUP);
  Keyboard.begin();
}

void loop() {
  //if the button is pressed
  if(digitalRead(2)==LOW){
    //Send an ASCII 'A',
    Keyboard.write(65);
  }
}

 

در قسمت‌های بعدی به آموزش بقیه توابع کتابخانه keyboard می‌پردازیم.

درباره نویسنده

علیرضا قربانی

علیرضا قربانی هستم دانشجوی مهندسی پزشکی. چیزهای خیلی زیادی رو در دنیا دوست دارم. یک گیک هستم و یشه گفت یک هکر. نه به معنی دزدی پسورد و ایمیل مردم. به معنی عشق به دونستن و عشق به تحقیق درباره خیلی از چیزهایی که می بینم و می‌شنوم. اگر بخوام علاقه‌مندی‌ درجه یکم رو نام ببرم میتونم بگم برنامه نویسی و بعد از اون امبدد سیستم ها.

تبادل نظر و رفع عیب با ثبت دیدگاه

۲۳ دیدگاه

    • با سلام
      همانطور که در ابتدای این آموزش اشاره گردیده است، کاربرد کتابخانه کیبورد بر روی بردهای Zero، Leonardo و DUE می باشد. برای اینکه بتوان بر روی برد UNO از کتابخانه کیبورد استفاده کنید و یا مانند یک کیبورد از آن بهره بگیرید، لازم است فریم ورک آن را تغییر دهید. به زودی آموزشی در ارتباط با این موضوع قرار خواهد گرفت.

  • ممنون ببخشید من روی اردینیو یونو زدم خطا میده چیکار کنم اگر جوابو به ایمیلم بدید ممنون میشم
    چون نمیشه بیام سایتو چک کنمس

    • با سلام
      در این خصوص رفع عیب از همین طریق امکان پذیر است. ارور دریافتی را از همین طریق ارسال کنید تا بررسی شود.

      • با سلام
        من میخام برای یک شرکت ی مداری درست کنم که تعدادی حروف و کاراکترهای اینتر و f1به کامپیوتر ارسال بشه
        اردوینو لئوناردو گرفتم و برای ارسال موارد ذکر شده مشکلی وجود ندارد
        چون تعداد سفارش زیاد است هزینه خیلی زیاد میشه
        با توجه به مطلبی که فرمودید که با تغییر فریم ورک میشه با اردوینو uno این کار را انجام داد اگه راهنمایی کنید ممنون میشم
        اگه ممکنه به ایمیل یا خط خودم پیام بدید تماس بگیرم باهاتون

        • با سلام
          کاربر گرامی در این خصوص درخواست خود را از طریق پرتال پشتیبانی فروشگاه ارسال کنید تا راهنمایی شود.

  • سلام
    من تخصصی تو زمینه الکترونیک و برنامه نویسی ندارم
    ولی قصد دارم برای نرم افزارهای پیانو یه صفحه کلید برای خودم درست کنم که چینشش مثل خود پیانو باشه
    می شه با این برد این کار رو انجام داد و یه صفحه کلید فیزیکی درست کرد باهاش؟؟

    • با سلام
      برد آردوینو UNO قابلیت اتصال تا ۱۴ کلید را دارد و این مورد در آردوینو های دیگر متفاوت خواهد بود.

  • سلام میشه همین پروژه رو روی اردینو نانو انجام داد میشه کد آن رو بزارید ولی با این تقییر که صدای کامپیوتر رو با یک دکمه کم و با یک دکمه دیگه زیاد شه میشه از پین های d11وd12و gnd استفاده کنید ممنون میشم اگه کد رو هم قرار دهید چون تازه کار هستم و کمی درباره ی نسخه ی نانو میدونم

  • ببخشید منظورم این بود که با این پین ها کنترل شود هم کم شدن صدا هم زیاد شدن آن
    البته اگر شما با پین های دیگر کد می‌سازید مشکلی نیست