Klawiatura dedykowana USB

Projekt i implementacja dedykowanej klawiatury USB.

Inspiracja

Czy zdarzyło się Wam kiedyś, że zwykła klawiatura komputera jest nieporęczna?

Jednemu z naszych kolegów w Kole się zdarzyło, co było inspiracją do zaprojektowania i wykonania poniżej opisanego projektu.

Problem w nieporęczności standardowej klawiatury polega na tym, że nie każdy posiada umiejętność pisania bezwzrokowego (nie patrząc na klawiaturę).

Obrazowa sytuacja wygląda następująco: potrzebujemy wykonać jakiś eksperyment w którym uczestnik musi ciągle patrzeć ma ekran komputera i klikać np. strzałki według tego co zauważy na ekranie, jeżeli przestanie patrzeć na ekran wyniki eksperymentu będą zakłamane.

Ponieważ kolega potrzebował przeprowadzić bardzo duża serię takich eksperymentów, a ich uczestnicy notorycznie przerywali ciągłość patrzenia na ekran szukając na klawiaturze odpowiedniego klawisza, zrodził się pomysł na zrobienie przycisków podobnych do tych w teleturniejach.

Hardware

Do wykonania przycisków podobnych do tych w teleturniejach ale imitujących klawiaturę i odpowiednie klawisze potrzebne są:

  • mikrokontroler ATmega8
  • gniazdo USB (np. typu B)
  • 2x kondensatory stałe 27p
  • 2x kondensatory stałe 100n
  • 1x kondensator elektrolityczny 10u
  • 2x diody prostownicze 1N4148
  • 2x rezystor 68 Ohm
  • 1x rezystor 2k2
  • 1x rezystor 10k
  • rezonator kwarcowy 12MHz

W zależności od tego czy chcemy się tylko pobawić czy wykonać projekt w formie końcowej potrzebujemy jeszcze:

  • w przypadku zabawy:
    • płytka prototypowa
  • w przypadku prototypu końcowego:
    • laminat miedziany jednostronny
    • możliwość wyfrezowania lub wytrawienia obwodu drukowanego

Opis połączeń….

..

..

..

Schemat…

..

..

..

 

hidkeys1
hidkeys2
hidkeys3

Firmware

Do obsługi komunikacji mikrokontrolera ATmega8 poprzez port USB wykorzystana został biblioteka V-USB (Virtual-USB).