Съдържание:
- Стъпка 1: Съберете всички части
- Стъпка 2: Окабеляване
- Стъпка 3: Инсталиране на пакет на Python
- Стъпка 4: Инсталиране на примерите
- Стъпка 5: Активиране на I2C
- Стъпка 6: Стартирайте Calibratethresholds
- Стъпка 7: Променете и след това стартирайте Readkeypadwithtimeout
- Стъпка 8: Как работи клавиатурата с един щифт
- Стъпка 9: Заключение
Видео: Ръководство за използване на Raspberry Pi с клавиатура с един щифт: 9 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:51
ОТКАЗ ОТ ОТГОВОРНОСТ: ТОВА Е РЪКОВОДСТВО ЗА УПОТРЕБА ЗА ОТВОРЕН ПРОДУКТ: ЕДИНИЧНАТА КЛАВИАТУРА. ТОВА НЕ Е ПРОЕКТ „Направи си сам“. АКО ИСКАТЕ ДА СЕ НАПРАВИТЕ ДОСКИТЕ, ФАЙЛОВЕТЕ НА ОРЛА МОЖЕ ДА СЕ НАМЕРАТ В КРАЯ НА УЧЕБНИКА
Какво представлява клавиатурата с един щифт?
Клавиатурата с един пин прави използването на матрична клавиатура много по -лесно и ви позволява да запазите ценните си 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
Отворете терминален прозорец и въведете следните команди:
sudo apt-get update
тогава
pip3 инсталирайте Progetto-One-Pin-Keypad
да инсталирате пакета и необходимите му зависимости
Стъпка 4: Инсталиране на примерите
Създадох папка dev, в която да се съхранява хранилището под home/pi, ако искате да направите същото (това е напълно незадължително), изпълнете тази команда:
mkdir dev
след това, за да отидете в папката, въведете:
cd dev
И накрая, за да клонирате хранилището, въведете следната команда:
git clone
Стъпка 5: Активиране на I2C
ADS1115 ADC (аналогово-цифров преобразувател) разчита на I2C (Inter-Integrated Circuit) протокол за комуникация с Raspberry Pi, по подразбиране I2C шината е деактивирана, за да я активирате, въведете:
sudo raspi-config
който ще ви отведе до син прозорец за конфигурация, оттам, като използвате клавишите със стрелки и клавиша enter, изберете
- Опции за взаимодействие
- I2C
- След това слезте до
Съвет: Позоваването на екранните снимки по -горе може да помогне малко! Ако все още сте заседнали, не се страхувайте! Вижте това невероятно ръководство от Sparkfun!
Стъпка 6: Стартирайте Calibratethresholds
Придвижете се до хранилището, ако все още не сте го направили, и отидете в папката с примери, като използвате тези команди:
Съвет: въведете „cd Prog“, след това натиснете Tab, той трябва автоматично да попълни името на хранилището!
cd Progetto_One_Pin_Keypad_Python_Package
след това въведете:
cd примери
след това стартирайте примера calibratethresholds, като използвате тази команда:
python3 калибрира праговете
и следвайте инструкциите, показани на конзолата, за да калибрирате вашата платка. След като калибрирането премине през всички бутони, тествайте новите си аналогови стойности, за да видите дали работят, като натиснете някои бутони, когато бъдете подканени на „Begin.“, Ако новите стойности се окажат неточни, използвайте Ctrl C, за да убиете програмата и да я стартирате отново.
Примерът за калибриране трябва да ви предостави 2 реда код, които ще ви трябват в следващия пример, не забравяйте да държите конзолата отворена и/или да ги копирате и двете!
Стъпка 7: Променете и след това стартирайте 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 на борда.
Препоръчано:
Как да прочетете множество аналогови стойности, използвайки един аналогов щифт: 6 стъпки (със снимки)
Как да прочетете множество аналогови стойности с помощта на един аналогов щифт: В този урок ще ви покажа как да четете множество аналогови стойности, използвайки само един аналогов входен щифт
Включена верига за изключване с UC. Бутон с едно натискане. Един щифт. Дискретен компонент .: 5 стъпки
Включена верига за изключване с UC. Бутон с едно натискане. Един щифт. Дискретен компонент.: Здравейте на всички, търсех верига за включване/изключване в мрежата. Всичко, което намерих, не беше това, което търсех. Говорих си сам, задължително има начин за това. Това ми беше необходимо. -Само един бутон за включване и изключване.-Трябва да използвам само
Клавиатура с един щифт 4 × 4: 10 стъпки
Клавиатура с един щифт 4 × 4: Всеки път, когато видя клавиатура, тя идва с много щифтове, това е голяма загуба на вашите щифтове Arduino, така че можем ли да пуснем клавиатура с един и само един щифт?. Отговорът е тук
100+ превключвателя в един щифт на Arduino: 6 стъпки (със снимки)
100+ превключвателя в един щифт на Arduino: Въведение Изчерпали ли сте входните щифтове? Не се притеснявайте, тук има решение без регистри за смяна. В това видео ще научим за свързването на повече от 100 превключвателя към един щифт на Arduino
Свързване на няколко бутона към един щифт на Arduino: 4 стъпки
Свързване на множество бутони към един щифт на Arduino: Здравейте всички, Когато вашите проекти на Arduino са надраснали мигащи светодиоди, може да се окажете в нужда от някои допълнителни щифтове. Ще ви покажа един трик, който можете да използвате, където можете да имате няколко бутона, всички свързани към един и същ аналогов щифт