Мазмуну:

Arduino жана Python Serial Communication - Баскычтоптун дисплейи: 4 кадам
Arduino жана Python Serial Communication - Баскычтоптун дисплейи: 4 кадам

Video: Arduino жана Python Serial Communication - Баскычтоптун дисплейи: 4 кадам

Video: Arduino жана Python Serial Communication - Баскычтоптун дисплейи: 4 кадам
Video: Lesson 05: Introduction to Serial Monitor | Robojax Arduino Step By Step Course 2024, Июль
Anonim
Arduino жана Python Serial Communication - Баскычтоптун дисплейи
Arduino жана Python Serial Communication - Баскычтоптун дисплейи

Бул долбоор Mac колдонуучулары үчүн жасалган, бирок ал Linux жана Windows үчүн да ишке ашырылышы мүмкүн, башкача болушу керек болгон жалгыз кадам - бул орнотуу.

1 -кадам: Программаны орнотуу

Программалык камсыздоону орнотуу
Программалык камсыздоону орнотуу
  1. Arduino жүктөө жана орнотуу ->
  2. Python 2.7ди жүктөп алып, орнотуңуз ->
  3. Python китепканасын жүктөп алыңыз "pyserial -2.7.tar.gz" ->
  4. Pyserial-2.7.tar.gz
  5. Терминалды ачыңыз жана териңиз:

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

sudo python setup.py орнотуу

Программалык камсыздоону орнотуу даяр!

2 -кадам: Кабелдөө

Электр өткөргүчтөрү
Электр өткөргүчтөрү
Электр өткөргүчтөрү
Электр өткөргүчтөрү
Электр өткөргүчтөрү
Электр өткөргүчтөрү
Электр өткөргүчтөрү
Электр өткөргүчтөрү
  1. Arduino Uno
  2. Sparkfun 12 баскыч баскычтобу

Электр өткөргүчтөрү тышкы резисторлорсуз жүргүзүлөт, анын ордуна мен микроконтроллердин ички Pullup-Resistors (Ардуинонун ички Pullup-Resistors 20K-Ohm 50K-Ohm маанисине ээ) колдондум

Ички Pullup-Resistors активдештирүү үчүн INPUT-Pins HIGHду кодго орнотуңуз

Эгерде сиз башка клавиатураны колдонсоңуз, туура зым үчүн маалымат баракчасын караңыз, антпесе ал микроконтроллериңизге зыян келтириши мүмкүн

3 -кадам: Arduino коду

Arduino коду
Arduino коду
  • Алгач ачкычтар үчүн chars-Matrixти аныктайбыз
  • Ариптакта 4 катарда жайгашкан кадимки которгуч туташтыргычтарды колдонот (7, 2, 3 жана 5 -казыктар) жана 3 мамыча (6, 8 жана 4 -казыктар), Arrays rowPins жана colPins катары аныкталат
  • Setup () функциясы

    • Serial.begin () менен сериялык дарбазаны ачыңыз;
    • Мамычаларды OUTPUT-Pins HIGH деп коюңуз
    • Буларды INPUT-Pins HIGH катары коюу үчүн Pullup-Resistors'ту иштетүү;
  • Getkey () функциясы

    • Ар бир сапты ТӨМӨН коюп, мамычалардын бири ТӨМӨН экендигин текшериңиз. Анткени Pullup-Resistors бир баскыч басылганга чейин баардык саптар БИЙИК. Басылган баскыч INPUT-пинде LOW-сигналын пайда кылат. Бул LOW бул сапта жана тилкеде басылган ачкычты көрсөтөт
    • Ачкыч бошотулганга чейин күтө туруңуз жана эч кандай баскыч басылбаса, клавиатура-Array же 0 кайтарат
    • Сигналды турукташтыруу үчүн кечигүүнү (debounceTime) колдонуңуз

4 -кадам: Python_2.7 коду

Python_2.7 коду
Python_2.7 коду
  • Сериялык китепкананы импорттоо
  • Туташкан = FALSE өзгөрмөсүн аныктаңыз, кийинчерээк бул өзгөрмө сериялык туташуунун бар же жок экендигин текшерүү үчүн колдонулат
  • Сериялык портту serial. Serial менен ачыңыз ("Сериялык портуңуздун аталышы", bod)

    • Сериялык портуңуздун атын алуу үчүн -> Arduino IDLEдеги Tools> Serial Port басыңыз
    • baud Arduino кодексиндегидей болушу керек
  • Убакыт өтүүчү тестте, эгер туташуу бар болсо же сериялык сигналды окубаса жана туташкан = TRUE өзгөрмөсүн орнотпосо, ал сериялык туташууга чейин айланат
  • Байланыштан кийин сериалды бир аз укурукта окуп, бул киргизүүнү "var" жаңы өзгөрмөсүнө коюңуз
  • портту ser.close () менен жабыңыз

Сунушталууда: