Съдържание:

Ръководство за използване на Raspberry Pi с клавиатура с един щифт: 9 стъпки
Ръководство за използване на Raspberry Pi с клавиатура с един щифт: 9 стъпки

Видео: Ръководство за използване на Raspberry Pi с клавиатура с един щифт: 9 стъпки

Видео: Ръководство за използване на Raspberry Pi с клавиатура с един щифт: 9 стъпки
Видео: Top 5 preinstalled useful Windows 10 programs 2024, Юли
Anonim
Ръководство за използване на Raspberry Pi с клавиатура с един щифт
Ръководство за използване на Raspberry Pi с клавиатура с един щифт

ОТКАЗ ОТ ОТГОВОРНОСТ: ТОВА Е РЪКОВОДСТВО ЗА УПОТРЕБА ЗА ОТВОРЕН ПРОДУКТ: ЕДИНИЧНАТА КЛАВИАТУРА. ТОВА НЕ Е ПРОЕКТ „Направи си сам“. АКО ИСКАТЕ ДА СЕ НАПРАВИТЕ ДОСКИТЕ, ФАЙЛОВЕТЕ НА ОРЛА МОЖЕ ДА СЕ НАМЕРАТ В КРАЯ НА УЧЕБНИКА

Какво представлява клавиатурата с един щифт?

Клавиатурата с един пин прави използването на матрична клавиатура много по -лесно и ви позволява да запазите ценните си I/O пинове за други цели. Матричната клавиатура с 16 бутона обикновено изисква 8 цифрови входа на микроконтролер или едноплатен компютър. Най-популярният Arduinos ви ограничава само до 14 цифрови пина, така че клавиатурата с 16 бутона ви оставя само 6 пина за останалата част от вашия проект. Този недостиг на ресурси може да доведе до скъп компромис с дизайна или до по-скъпа надстройка на микроконтролера. Модулът One Pin Keypad елиминира необходимостта от всички тези цифрови входове. Както подсказва името му, One Pin Keypad използва само един щифт (аналогов вход) плюс GND и VCC връзки, така че окабеляването на вашата клавиатура е лесно! За потребителите на Raspberry Pi (целевата аудитория за този урок) също се изисква аналогово -цифров конвертор ADS1115, който е наистина лесен за свързване. Пакетът Python с клавиатура с един пин (включен) също опростява програмирането, необходимо за обработка на входовете на клавиатурата, спестявайки ви повече време и усилия.

За Ръководство за използване на Arduino, щракнете тук.

Стъпка 1: Съберете всички части

Съберете всички части!
Съберете всички части!

За да започнете с дъската за клавиатура с One Pin, ще ви трябва:

  • Табло с клавиатура с един щифт
  • Arduino с някакъв вкус (в този случай беше използван Arduino Nano)
  • 3 кабела за джъмпер M/F,
  • 4 M/M ИЛИ още 4 M/F джъмпер кабела, в зависимост от типа на заглавията на вашия Raspberry Pi
  • Мембранна клавиатура с 16 бутона
  • Платка (тук се използва наистина малка)
  • Модул ADS1115 (от Adafruit или клонинг)
  • Raspberry Pi с интернет връзка и Raspbian OS (използвах Stretch)
  • Аксесоари за Raspberry Pi (HDMI кабел, захранване, ключове, монитор и т.н. зависи от вкуса на вашия Raspberry Pi)

Стъпка 2: Окабеляване

Електрически инсталации!
Електрически инсталации!
Електрически инсталации!
Електрически инсталации!

Свържете клавиатурата с един щифт според диаграмата на Fritzing, снимката или и двете, което предпочитате.

Моля, обърнете внимание: бележката на диаграмата Fritzing представлява клавиатурата с един щифт (а съкращенията GND VCC и AOUT означават изводите на платката с едноконтактна клавиатура)

Стъпка 3: Инсталиране на пакет на Python

Инсталиране на пакет на Python!
Инсталиране на пакет на Python!
Инсталиране на пакет на Python!
Инсталиране на пакет на Python!

Отворете терминален прозорец и въведете следните команди:

sudo apt-get update

тогава

pip3 инсталирайте Progetto-One-Pin-Keypad

да инсталирате пакета и необходимите му зависимости

Стъпка 4: Инсталиране на примерите

Инсталиране на примерите
Инсталиране на примерите

Създадох папка dev, в която да се съхранява хранилището под home/pi, ако искате да направите същото (това е напълно незадължително), изпълнете тази команда:

mkdir dev

след това, за да отидете в папката, въведете:

cd dev

И накрая, за да клонирате хранилището, въведете следната команда:

git clone

Стъпка 5: Активиране на I2C

Активиране на I2C
Активиране на I2C
Активиране на I2C
Активиране на I2C
Активиране на I2C
Активиране на I2C

ADS1115 ADC (аналогово-цифров преобразувател) разчита на I2C (Inter-Integrated Circuit) протокол за комуникация с Raspberry Pi, по подразбиране I2C шината е деактивирана, за да я активирате, въведете:

sudo raspi-config

който ще ви отведе до син прозорец за конфигурация, оттам, като използвате клавишите със стрелки и клавиша enter, изберете

  1. Опции за взаимодействие
  2. I2C
  3. След това слезте до

Съвет: Позоваването на екранните снимки по -горе може да помогне малко! Ако все още сте заседнали, не се страхувайте! Вижте това невероятно ръководство от Sparkfun!

Стъпка 6: Стартирайте Calibratethresholds

Стартирайте Calibratethresholds!
Стартирайте Calibratethresholds!

Придвижете се до хранилището, ако все още не сте го направили, и отидете в папката с примери, като използвате тези команди:

Съвет: въведете „cd Prog“, след това натиснете Tab, той трябва автоматично да попълни името на хранилището!

cd Progetto_One_Pin_Keypad_Python_Package

след това въведете:

cd примери

след това стартирайте примера calibratethresholds, като използвате тази команда:

python3 калибрира праговете

и следвайте инструкциите, показани на конзолата, за да калибрирате вашата платка. След като калибрирането премине през всички бутони, тествайте новите си аналогови стойности, за да видите дали работят, като натиснете някои бутони, когато бъдете подканени на „Begin.“, Ако новите стойности се окажат неточни, използвайте Ctrl C, за да убиете програмата и да я стартирате отново.

Примерът за калибриране трябва да ви предостави 2 реда код, които ще ви трябват в следващия пример, не забравяйте да държите конзолата отворена и/или да ги копирате и двете!

Стъпка 7: Променете и след това стартирайте Readkeypadwithtimeout

Променете и след това стартирайте Readkeypadwithtimeout
Променете и след това стартирайте Readkeypadwithtimeout
Променете и след това стартирайте Readkeypadwithtimeout
Променете и след това стартирайте Readkeypadwithtimeout
Променете и след това стартирайте Readkeypadwithtimeout
Променете и след това стартирайте Readkeypadwithtimeout

Сега, когато клавиатурата ви с един щифт е калибрирана, е време да я използвате. Въпреки че можете да направите това от командния ред с помощта на vi, аз лично предпочитам да използвам IDE като IDLE.

Отворете IDLE (ще искате версията на python3) и променете следните редове:

Помните ли онзи масив от аналогови стойности, който сте копирали? Заменете ред 13 (вижте по -долу) с тези новокалибрирани аналогови стойности.

# напр.: my_thresholds = [калибрираните стойности ще бъдат тук]

се заменя с това:

my_thresholds = [225, 2116, 3904, 5200, 6300, 7350, 8450, 9325, 10000, 10750, 11500, 12100, 12550, 13100, 13800, 14250]

След това добавете следващия ред код към след ред 23 (вижте по -долу):

keypad.useCalibratedThresholds (my_thresholds)

се добавя след ред 23:

# напр.: keypad.use_calibrated_thresholds (името на вашия масив)

правейки редове 22 до 24 да изглеждат така в крайна сметка:

# Ако се използват калибрирани стойности, използвайте_калибрирани_ прагове по -долу:

# напр.: keypad.use_calibrated_thresholds (името на вашия масив)

keypad.use_calibrated_thresholds (my_thresholds)

След като направите това, стартирайте кода и го тествайте, като натиснете някои бутони! Не се колебайте да адаптирате примерната скица към вашите проекти! Не забравяйте, че read_keypad_with_timeout връща натиснатия бутон като char и времето за изчакване е зададено в милисекунди! Ако не искате таймаут, използвайте клавиатурата. NO_TIMEOUT константа.

Стъпка 8: Как работи клавиатурата с един щифт

Как работи клавиатурата с един щифт
Как работи клавиатурата с един щифт
Как работи клавиатурата с един щифт
Как работи клавиатурата с един щифт

Голяма част от дизайна на клавиатурата с един щифт се основава на внедряването на делител на напрежение на Hari Wiguna за получаване на уникална аналогова стойност за всеки клавиш в 16 -пинова клавиатура. Дизайнът на клавиатурата с един пин остава почти същият, с няколко ощипвания. Ако искате страхотен урок за това как работи клавиатурата с един щифт, не се колебайте да разгледате страхотното видео на Hari Wiguna тук!

Стъпка 9: Заключение

Заключение
Заключение

В тази инструкция ние разгледахме как да започнете с вашата дъска за клавиатура с един щифт. Сега любопитните сред вас може би са се чудили защо примерната скица readKeypadInstanta никога не е била използвана, причината е, че тя не е толкова полезна, тъй като бутонът трябва да бъде натиснат, когато се извика, функцията readKeypadInstantaneous () се използва предимно за опростяване readKeypadWithTimeout () в библиотеката. Ако ви хване окото, не се колебайте да го разгледате. Честит хакване!

Ако имате въпроси, оставете коментар по -долу или ни изпратете имейл на [email protected]. Всичко най -добро, Progetto Company P. S. Както беше обещано, връзка към Eagle Files на борда.

Препоръчано: