
Mündəricat:
- Addım 1: Bütün hissələri toplayın
- Addım 2: Kabel çəkmə
- Addım 3: Python Paketinin Quraşdırılması
- Addım 4: Nümunələrin Qurulması
- Addım 5: I2C -nin aktivləşdirilməsi
- Addım 6: Calibratethresholds'u işə salın
- Addım 7: dəyişdirin və sonra Readkeypadwithtimeout işləyin
- Addım 8: Bir pinli klaviatura necə işləyir
- Addım 9: Nəticə
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-23 12:54

DISCLAIMER: BU AÇIQ KAYNAK MƏHSULU ÜÇÜN KULLANIM KILAVUZUDUR: BİR PİN KEYPAD. BU DIY DIY PROJESİ DEYİL. Lövhələri özünüz etmək istəsəniz, təlimin sonunda qartal faylları tapıla bilər
Bir pinli klaviatura nədir?
Bir Pin Klaviatura, matrisli bir klaviatura istifadə etməyi çox asanlaşdırır və qiymətli I/O sancaqlarınızı başqa məqsədlər üçün saxlamağa imkan verir. 16 düyməli matrisli bir klaviatura adətən bir mikrokontrolördə və ya tək lövhəli kompüterdə 8 rəqəmsal giriş tələb edir. Ən populyar Arduinos, sizi yalnız 14 rəqəmsal pinlə məhdudlaşdırır, buna görə də 16 düyməli bir klaviatura, layihənizin qalan hissəsi üçün sizə yalnız 6 sancaq qoyur. Bu qaynaq çatışmazlığı baha başa gələn dizayn dəyişikliyinə və ya daha bahalı mikrokontrolörün təkmilləşdirilməsinə səbəb ola bilər. One Pin Keypad modulu bütün bu rəqəmsal girişlərə olan ehtiyacı aradan qaldırır. Adından da göründüyü kimi, bir pinli klaviatura yalnız bir pin (analoq giriş) üstəgəl GND və VCC əlaqələrindən istifadə edir, buna görə də klaviaturanızın naqillərini çəkmək bir anlıqdır! Raspberry Pi istifadəçiləri üçün (bu dərs üçün hədəf auditoriya) eyni zamanda tel etmək çox asan olan ADS1115 rəqəmsal çeviriciyə ehtiyac var. Bir Pin Klaviatura Python Paketi (daxil olmaqla), klaviatura girişlərini emal etmək üçün lazım olan proqramlaşdırmanı asanlaşdıraraq daha çox vaxtınıza və səyinizə qənaət edir.
Arduino İstifadə Kılavuzu üçün bura vurun.
Addım 1: Bütün hissələri toplayın

Bir pinli klaviatura lövhənizlə işə başlamaq üçün sizə lazım olacaq:
- Bir pinli klaviatura lövhəsi
- Bir növ arduino (bu vəziyyətdə bir Arduino Nano istifadə edildi)
- 3 M/F keçid kabeli,
- Raspberry Pi -də hansı tip başlıqların olduğuna görə 4 M/M OR 4 əlavə M/F keçid kabeli
- 16 düyməli membran klaviatura
- Çörək lövhəsi (Burada həqiqətən kiçik bir istifadə olunur)
- ADS1115 Modulu (Adafruit və ya klondan)
- İnternet bağlantısı olan bir Raspberry Pi və Raspbian OS (Stretch istifadə etdim)
- Raspberry Pi Aksesuarları (HDMI Kabeli, enerji təchizatı, dongles, monitor və s. Raspberry Pi -nin dadından asılıdır)
Addım 2: Kabel çəkmə


Bir pinli klaviaturanı Fritzing diaqramına, fotoşəkilə və ya hər ikisinə, istədiyiniz kimi bağlayın.
Diqqət yetirin: Fritzing diaqramındakı qeyd One Pin Klaviaturanı təmsil edir (və GND VCC və AOUT kısaltmaları Bir Pin Klaviatura lövhəsinin pinoutlarını təyin edir)
Addım 3: Python Paketinin Quraşdırılması


Bir terminal pəncərəsi açın və aşağıdakı əmrləri yazın:
sudo apt-get yeniləməsi
sonra
pip3 Progetto-One-Pin-Keypad qurun
paketi və lazımi asılılıqları qurmaq
Addım 4: Nümunələrin Qurulması

Eyni şeyi etmək istəyirsinizsə (bu tamamilə isteğe bağlıdır), home/pi altında bir depo yerləşdirmək üçün bir qovluq yaratdım:
mkdir dev
sonra qovluğa getmək üçün yazın:
cd dev
Nəhayət, depo klonlaşdırmaq üçün aşağıdakı əmri daxil edin:
git klonu
Addım 5: I2C -nin aktivləşdirilməsi



ADS1115 ADC (Analogdan Rəqəmsal Dönüştürücü), Raspberry Pi ilə əlaqə qurmaq üçün I2C (İnteqrasiya edilmiş Dövrə) protokoluna əsaslanır, standart olaraq I2C avtobusu söndürülür, onu aktivləşdirmək üçün yazın:
sudo raspi-config
sizi mavi bir konfiqurasiya pəncərəsinə aparacaq, oradan ox düymələrini və giriş düyməsini istifadə edərək seçin
- İnterfeys Seçimləri
- I2C
- Sonra aşağı en
İpucu: Yuxarıdakı ekran görüntülərinə müraciət etmək bir az kömək edə bilər! Hələ də sıxışmısınızsa, qorxmayın! Sparkfun-dan bu heyrətamiz üsula baxın!
Addım 6: Calibratethresholds'u işə salın

Hələ etməmisinizsə, depoya gedin və bu əmrləri istifadə edərək nümunələr qovluğuna gedin:
İpucu: 'cd Prog' yazın, sonra Tab vurun, depo adını avtomatik tamamlamalıdır!
cd Progetto_One_Pin_Keypad_Python_Package
sonra yazın:
cd nümunələri
Sonra, bu əmri istifadə edərək calibratethresholds nümunəsini işə salın:
python3 kalibrləmə həddi
lövhənizi kalibr etmək üçün konsolda göstərilən təlimatları izləyin. Kalibrləmə bütün düymələri gəzdikdən sonra, "Başla" istədikdə bəzi düymələrə basaraq işlədiyini yoxlamaq üçün yeni analoq dəyərlərinizi sınayın. Yeni dəyərlərin qeyri -dəqiq olduğunu sübut edirsə, proqramı öldürmək və işə salmaq üçün Ctrl C istifadə edin. yenidən.
Kalibrləmə nümunəsi, növbəti nümunədə ehtiyac duyacağınız 2 kod xətti ilə təmin etməlidir, konsolu açıq saxladığınızdan və/və ya hər ikisini kopyaladığınızdan əmin olun!
Addım 7: dəyişdirin və sonra Readkeypadwithtimeout işləyin



İndi bir pinli klaviaturanız kalibrləndikdən sonra onu istifadəyə verməyin vaxtıdır. Bunu vi istifadə edərək əmr satırından edə bilsən də, şəxsən IDLE kimi bir IDE istifadə etməyi üstün tuturam.
IDLE -ni açın (python3 versiyasını istəyəcəksiniz) və aşağıdakı sətirləri dəyişdirin:
Kopyaladığınız analoq dəyər dizisini xatırlayırsınız? 13 -cü sətri (aşağıya baxın) yeni kalibrlənmiş analoq dəyərlərlə əvəz edin.
# ex: my_thresholds = [kalibr edilmiş dəyərlər burada olardı]
bununla əvəz olunur:
my_thresholds = [225, 2116, 3904, 5200, 6300, 7350, 8450, 9325, 10000, 10750, 11500, 12100, 12550, 13100, 13800, 14250]
Sonra, 23 -cü sətirdən sonra növbəti kod satırını əlavə edin (aşağıya baxın):
keypad.useCalibratedThresholds (my_thresholds)
23 -cü sətirdən sonra əlavə olunur:
# ex: keypad.use_calibrated_thresholds (serial adınız)
22 ilə 24 -cü sətirlərin sonunda belə görünməsi:
# Əgər kalibrlənmiş dəyərlər istifadə olunursa, aşağıda_kalibrasiya edilmiş eşiklərdən istifadə edin:
# ex: keypad.use_calibrated_thresholds (serial adınız)
keypad.use_calibrated_thresholds (my_thresholds)
Bunu etdikdən sonra kodu işə salın və bəzi düymələrə basaraq sınayın! Nümunə eskizini layihələrinizə uyğunlaşdırmaqdan çekinmeyin! Read_keypad_with_timeout -un basıldığı düyməni simvol olaraq geri qaytardığını və zaman aşımının milisaniyələrdə qurulduğunu unutmayın! Bir fasilə istəmirsinizsə, klaviatura istifadə edin. NO_TIMEOUT sabit.
Addım 8: Bir pinli klaviatura necə işləyir


Bir Pin Klaviatura dizaynının çoxu, Hari Wiguna'nın 16 pinli klaviaturada hər bir düymə üçün bənzərsiz bir analog dəyər əldə etmək üçün bir gərginlik bölücü tətbiqinə əsaslanır. Bir Pin Klaviatura dizaynı, bir neçə düzəlişlə böyük ölçüdə eyni olaraq qalır. Bir Pin Klaviaturanın necə işlədiyinə dair böyük bir dərs istəsəniz, burada Hari Wiguna'nın zəhmli videosunu yoxlamaqdan çekinmeyin!
Addım 9: Nəticə

Bu təlimatda, bir pinli klaviatura lövhənizlə necə başlayacağınızı izah etdik. İndi aranızdakı maraqlananlar, ReadKeypadInstantaneous nümunə eskizinin niyə heç vaxt istifadə edilmədiyini, bunun o qədər də faydalı olmaması ilə maraqlanırsınız, çünki düymə çağırıldıqda ona basmaq lazımdır, readKeypadInstantaneous () funksiyası əsasən sadələşdirmək üçün istifadə olunur. kitabxanada readKeypadWithTimeout (). Gözünüzə dəyirsə, onu fırlatmaq üçün çekinmeyin. Xoşbəxt Hacking!
Hər hansı bir sualınız varsa, aşağıda bir şərh buraxın və ya [email protected] ünvanına bizə e -poçt göndərin. Hər vaxtınız xeyir, Progetto Company P. S. Söz verildiyi kimi, idarə heyətinin Qartal Fayllarına bir keçid.
Tövsiyə:
Sol-EZ Solenoid Sürücü Kiti İstifadə Kılavuzu: 9 addım

Sol-EZ Solenoid Sürücü Kiti İstifadə Kılavuzu: DİQQƏT: BU MƏHSUL ÜÇÜN KULLANIM KILAVUZU: SOL-EZ SOLENOID SÜRÜCÜ KITİ. BU DIY DIY PROJESİDİR. Sol-EZ Solenoid Sürücü Kiti nədir? Bir sözlə, Sol-EZ Solenoid Sürücü Kitləri, solenoidlərin istifadəsini xeyli asanlaşdıran dəstlərdir
Bir pin 4 × 4 klaviatura: 10 addım

Bir Pin 4 × 4 Tuş Klaviaturası: Hər dəfə bir klaviatura gördüyümdə bir çox sancaqla gəlir, bu Arduino sancaqlarınızın böyük bir tullantıdır, buna görə də tək bir pinlə klaviatura işlədə bilərikmi? Cavab burada
DHT11/ DHT22 Sensorlarını W/ Arduino İstifadə etmək üçün Başlayanlar Kılavuzu: 9 addım

DHT11/ DHT22 Sensorlarını W/ Arduino İstifadə etmək üçün Başlayanlar Kılavuzu: Bu və digər möhtəşəm dərsləri ElectroPeak -in rəsmi saytında oxuya bilərsinizBaxış Bu dərsdə DHT11 və DHT22 sensorlarının necə qurulacağını və ətraf mühitin temperaturu və rütubətini ölçməyi öyrənəcəksiniz. Öyrənin: DHT11 və DHT22
Bir klip istifadə edərək klaviatura sındırması: 8 addım (şəkillərlə)

Bir Klip istifadə edərək Klaviatura Hack: Bunu tanıyırsınızmı: kompüterə mətn yazırsınız və birdən -birə, sHIFT KEY düyməsini vurduqdan sonra, bütün mətnlər böyük hərflərdədir? Bunun səbəbi, "Shift" düyməsinə və "Caps Lock" a təsadüfən toxunmağınızdır. Bu, həqiqətən
8051 ilə Klaviatura Arayüzü və 7 Segmentdə Klaviatura Nömrələrini Göstərmək: 4 Addım (Şəkillərlə)

8051 ilə Klaviatura Arayüzü və 7 Segmentdə Klaviatura Nömrələrini Göstərmək: Bu dərslikdə 8051 ilə klaviaturanı necə birləşdirə biləcəyimizi və klaviatura nömrələrini 7 seqmentli ekranda necə göstərəcəyimizi izah edəcəyəm