Talaan ng mga Nilalaman:

Serial Communication ng Arduino at Python - Display ng Keypad: 4 na Hakbang
Serial Communication ng Arduino at Python - Display ng Keypad: 4 na Hakbang

Video: Serial Communication ng Arduino at Python - Display ng Keypad: 4 na Hakbang

Video: Serial Communication ng Arduino at Python - Display ng Keypad: 4 na Hakbang
Video: When The Quiet Kid Does Your Homework ๐Ÿ’€ #electronics #arduino #engineering 2024, Hulyo
Anonim
Arduino at Python Serial Communication - Keypad Display
Arduino at Python Serial Communication - Keypad Display

Ang Proyekto na ito ay ginawa para sa mga gumagamit ng mac ngunit maaari rin itong ipatupad para sa Linux at Windows, ang tanging hakbang na dapat na magkakaiba ay ang pag-install.

Hakbang 1: Pag-install ng Software

Pag install ng software
Pag install ng software
  1. I-download at I-install ang Arduino ->
  2. I-download at I-install ang Python 2.7 ->
  3. I-download ang librong Python "pyserial-2.7.tar.gz" ->
  4. I-unzip ang pyserial-2.7.tar.gz
  5. Buksan ang Terminal at uri:

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

sudo python setup.py install

Handa na ang pag-install ng software!

Hakbang 2: Mga kable

Kable
Kable
Kable
Kable
Kable
Kable
Kable
Kable
  1. Arduino Uno
  2. Sparkfun 12 Button keypad

Ang mga kable ay tapos nang walang panlabas na resistors, sa halip ay ginamit ko ang panloob na Pullup-Resistors ng microcontroller (ang panloob na Pullup-Resistors ng Arduino ay may halagang 20K-Ohm hanggang 50K-Ohm)

Upang buhayin ang panloob na Pullup-Resistors itakda ang INPUT-Pins HIGH sa code

Kung gumamit ka ng isa pang Keypad tingnan ang sheet ng data para sa tamang mga kable, kung hindi man ay maaaring makapinsala sa iyong microcontroller

Hakbang 3: Arduino Code

Code ng Arduino
Code ng Arduino
  • Una naming tinukoy ang isang chars-Matrix para sa mga Susi
  • Ang keypad ay gumagamit ng normal na mga konektor ng switch na nakaayos sa 4 na mga hilera (Pins 7, 2, 3 at 5) at 3 mga haligi (Pins 6, 8 at 4), ay tinukoy bilang mga Array rowPins at colPins
  • Ang pag-andar ng setup ()

    • Buksan ang serial gate gamit ang Serial.begin ();
    • Itakda ang mga haligi bilang OUTPUT-Pins MATATAAS
    • I-aktibo ang Pullup-Resistors, upang gawin ang itinakdang mga hilera bilang INPUT-Pins HIGH;
  • Ang pagpapaandar ng getkey ()

    • Itakda ang bawat hilera LOW at subukan kung ang isa sa mga haligi ay mababa. Dahil sa ang Pullup-Resistors lahat ng mga hilera ay TAAS hanggang sa ang isang susi ay maitulak pababa. Ang itinulak na susi ay bubuo ng isang LOW-Signal sa INPUT-Pin. Ipinapahiwatig ng LOW na ito ang push key sa row at haligi na ito
    • Maghintay hanggang mailabas ang susi at ibalik ang char ng keymap-Array o 0 kung walang natulak na key
    • Gumamit ng isang pagkaantala (debounceTime) upang patatagin ang signal

Hakbang 4: Python_2.7 Code

Python_2.7 Code
Python_2.7 Code
  • I-import ang Serial Library
  • Tukuyin ang isang variable na konektado = MALI, sa paglaon ay ginagamit ang variable na ito upang subukan kung ang serial na koneksyon ay magagamit o hindi
  • Buksan ang Serial Port na may serial. Serial ("Pangalan ng iyong Serial Port", baud)

    • Upang makuha ang pangalan ng iyong pag-click sa serial port -> Mga Tool / Serial Port sa Arduino IDLE
    • ang baud ay dapat na kapareho ng sa Arduino Code
  • Sa isang habang pagsubok loop kung ang koneksyon ay magagamit o hindi sa pagbabasa ng serial signal at pagtatakda ng variable na konektado = TOTOO, loop ito hanggang sa makakuha ng serial connection
  • Matapos ang koneksyon basahin ang serial sa isang habang loop at ilagay ang input na ito sa isang bagong variable na "var"
  • isara ang port sa ser.close ()

Inirerekumendang: