Obsah:

Sériová komunikácia Arduino a Python - displej klávesnice: 4 kroky
Sériová komunikácia Arduino a Python - displej klávesnice: 4 kroky

Video: Sériová komunikácia Arduino a Python - displej klávesnice: 4 kroky

Video: Sériová komunikácia Arduino a Python - displej klávesnice: 4 kroky
Video: Simple Real-Time Force Sensor Serial Data Plotting in Python (Matplotlib) 2024, Júl
Anonim
Sériová komunikácia Arduino a Python - displej klávesnice
Sériová komunikácia Arduino a Python - displej klávesnice

Tento projekt je vytvorený pre používateľov počítačov Mac, ale je možné ho implementovať aj pre systémy Linux a Windows. Jediným krokom, ktorý by sa mal líšiť, je inštalácia.

Krok 1: Inštalácia softvéru

Inštalácia softvéru
Inštalácia softvéru
  1. Stiahnite a nainštalujte Arduino ->
  2. Stiahnite a nainštalujte Python 2.7 ->
  3. Stiahnite si knižnicu Python „pyserial -2.7.tar.gz“->
  4. Rozbaľte súbor pyserial-2.7.tar.gz
  5. Otvorte terminál a zadajte:

cd /users/"Your-User-Account"/Downloads/pyserial-2.7

sudo python setup.py install

Inštalácia softvéru pripravená!

Krok 2: Zapojenie

Elektrické vedenie
Elektrické vedenie
Elektrické vedenie
Elektrické vedenie
Elektrické vedenie
Elektrické vedenie
Elektrické vedenie
Elektrické vedenie
  1. Arduino Uno
  2. 12 -tlačidlová klávesnica Sparkfun

Zapojenie sa vykonáva bez externých odporov, namiesto toho som použil vnútorné odpínače mikrokontroléra (vnútorné odpínače Arduino majú hodnotu 20K-Ohm až 50K-Ohm)

Ak chcete aktivovať vnútorné odpínače, nastavte v kóde VSTUPNÉ PINY NA VYSOKÉ

Ak použijete inú klávesnicu, pozrite sa na technický list pre správne zapojenie, inak by mohlo dôjsť k poškodeniu vášho mikrokontroléra

Krok 3: Arduino kód

Arduino kód
Arduino kód
  • Najprv pre kľúče definujeme maticu znakov
  • Klávesnica používa normálne prepínacie konektory, ktoré sú usporiadané v 4 radoch (piny 7, 2, 3 a 5) a 3 stĺpcoch (piny 6, 8 a 4), sú definované ako polia riadkov a kolíkov.
  • Funkcia setup ()

    • Otvorte sériovú bránu pomocou Serial.begin ();
    • Nastaviť stĺpce ako VÝSTUPNÉ PINY VYSOKÉ
    • Aktivujte vyťahovacie odpory, aby sa toto nastavilo ako VSTUPNÉ PINY VYSOKÉ;
  • Funkcia getkey ()

    • Nastavte každý riadok na NÍZKU a vyskúšajte, či je jeden zo stĺpcov NÍZKY. Pretože vyťahovacie rezistory sú všetky rady VYSOKÉ, kým nie je stlačený jeden kláves. Stlačený kláves generuje NÍZKY signál na vstupnom pine. Táto NÍZKA označuje stlačený kláves v tomto riadku a stĺpci
    • Počkajte, kým sa kláves neuvoľní a nevráti znak mapy kľúča-pole alebo 0, ak nebol stlačený žiadny kláves
    • Na stabilizáciu signálu použite oneskorenie (debounceTime)

Krok 4: Kód Python_2.7

Kód Python_2.7
Kód Python_2.7
  • Importujte sériovú knižnicu
  • Definujte pripojenú premennú = FALSE, neskôr sa táto premenná používa na testovanie, či je sériové pripojenie k dispozícii alebo nie
  • Otvorte sériový port so sériovým portom. (Sériový port („Názov vášho sériového portu“, baud)

    • Ak chcete získať názov svojho sériového portu, kliknite na -> Nástroje/Sériový port v Arduino IDLE
    • baud by mal byť rovnaký ako v kóde Arduino
  • V chvíľkovom teste slučky, ak je pripojenie k dispozícii alebo nečíta sériový signál a nastavuje premennú pripojenú = TRUE, bude sa slučkovať, kým nezíska sériové pripojenie.
  • Po pripojení prečítajte sériu v slučke a tento vstup vložte do novej premennej „var“
  • zatvorte port pomocou ser.close ()

Odporúča: