![Bir pinli klaviatura Raspberry Pi foydalanish bo'yicha qo'llanma: 9 qadam Bir pinli klaviatura Raspberry Pi foydalanish bo'yicha qo'llanma: 9 qadam](https://i.howwhatproduce.com/images/011/image-32632-j.webp)
Mundarija:
- 1 -qadam: Barcha qismlarni yig'ing
- 2 -qadam: simlarni ulash
- 3 -qadam: Python paketini o'rnatish
- 4 -qadam: misollarni o'rnatish
- 5 -qadam: I2C -ni yoqish
- 6 -qadam: Calibratethresholds -ni ishga tushiring
- 7 -qadam: O'zgartiring va keyin Readkeypadwithtimeout -ni ishga tushiring
- 8 -qadam: Bir pinli klaviatura qanday ishlaydi
- 9 -qadam: Xulosa
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-23 15:14
![Bir pinli klaviatura Raspberry Pi -dan foydalanish bo'yicha qo'llanma Bir pinli klaviatura Raspberry Pi -dan foydalanish bo'yicha qo'llanma](https://i.howwhatproduce.com/images/011/image-32632-1-j.webp)
Ogohlantirish: bu ochiq manba mahsuloti uchun qo'llanma: bitta pinli kalit. Bu DIY loyihasi emas. Agar siz taxtalarni o'zingiz qilishni xohlasangiz, burgut fayllari dars oxirida topilishi mumkin
Bir pinli klaviatura nima?
Bir pinli klaviatura matritsali klaviaturani ishlatishni ancha osonlashtiradi va qimmatli kirish -chiqish pinlarini boshqa maqsadlar uchun zaxiralash imkonini beradi. 16 tugmachali matritsali klaviatura, odatda, mikrokontroller yoki bitta platali kompyuterda 8 ta raqamli kirishni talab qiladi. Eng mashhur Arduinos sizni faqat 14 ta raqamli pin bilan cheklaydi, shuning uchun 16 tugmachali klaviatura sizga loyihangizning qolgan qismi uchun atigi 6 ta pinni qoldiradi. Bu manba etishmasligi dizaynning qimmatga tushishiga yoki qimmatroq mikrokontrollerni yangilashiga olib kelishi mumkin. Bir pinli klaviatura moduli bu raqamli kirishga bo'lgan ehtiyojni yo'q qiladi. Nomidan ko'rinib turibdiki, bitta pinli klaviatura faqat bitta pinli (analogli kirish) va GND va VCC ulanishlaridan foydalanadi, shuning uchun klaviaturani ulash juda oson! Raspberry Pi foydalanuvchilari uchun (bu o'quv qo'llanma uchun maqsadli auditoriya), shuningdek, ADS1115 analogini raqamli konvertorga o'tkazish talab qilinadi, bu simni ulash juda oson. Bir pinli klaviatura Python to'plami (shu jumladan) klaviatura kirishini qayta ishlash uchun zarur bo'lgan dasturlashni soddalashtirib, ko'proq vaqt va kuchingizni tejaydi.
Arduino -dan foydalanish bo'yicha qo'llanma uchun bu erni bosing.
1 -qadam: Barcha qismlarni yig'ing
![Barcha qismlarni yig'ing! Barcha qismlarni yig'ing!](https://i.howwhatproduce.com/images/011/image-32632-2-j.webp)
Bir pinli klaviatura bilan ishlashni boshlash uchun sizga kerak bo'ladi:
- Bir pinli klaviatura paneli
- Arduino o'ziga xos ta'mga ega (bu holda Arduino Nano ishlatilgan)
- 3 ta M/F o'tish kabeli,
- Raspberry Pi -dagi sarlavhalar turiga qarab 4 ta M/M OR 4 ta qo'shimcha M/F o'tish kabeli
- 16 tugmachali membranali klaviatura
- Non paneli (bu erda kichkinasi ishlatiladi)
- ADS1115 moduli (Adafruit yoki klondan)
- Internetga ulangan Raspberry Pi va Raspbian OS (men Stretch -dan foydalanganman)
- Raspberry Pi aksessuarlari (HDMI kabeli, quvvat manbai, dongles, monitor va boshqalar Raspberry Pi -ning ta'miga bog'liq)
2 -qadam: simlarni ulash
![Ulanish! Ulanish!](https://i.howwhatproduce.com/images/011/image-32632-3-j.webp)
![Ulanish! Ulanish!](https://i.howwhatproduce.com/images/011/image-32632-4-j.webp)
Bir pinli klaviaturani Fritzing diagrammasi, fotosurat yoki ikkalasiga ko'ra, xohlaganingizcha ulang.
E'tibor bering: Fritzing diagrammasidagi yozuv bitta pinli klaviaturani ifodalaydi (va GND VCC va AOUT qisqartmalari bitta pinli klaviatura taxtasini belgilaydi)
3 -qadam: Python paketini o'rnatish
![Python paketini o'rnatish! Python paketini o'rnatish!](https://i.howwhatproduce.com/images/011/image-32632-5-j.webp)
![Python paketini o'rnatish! Python paketini o'rnatish!](https://i.howwhatproduce.com/images/011/image-32632-6-j.webp)
Terminal oynasini oching va quyidagi buyruqlarni kiriting:
sudo apt-get yangilanishi
keyin
pip3 Progetto-One-Pin-Keypad-ni o'rnating
paketni va uning zarur bog'liqliklarini o'rnatish
4 -qadam: misollarni o'rnatish
![Misollarni o'rnatish Misollarni o'rnatish](https://i.howwhatproduce.com/images/011/image-32632-7-j.webp)
Men omborni home/pi ostida saqlash uchun dev papkasini yaratdim, agar siz ham shunday qilishni xohlasangiz (bu mutlaqo ixtiyoriy), bu buyruqni bajaring:
mkdir dev
keyin papkaga o'tish uchun quyidagilarni kiriting:
CD dev
Nihoyat, omborni klonlash uchun quyidagi buyruqni kiriting:
5 -qadam: I2C -ni yoqish
![I2C yoqish I2C yoqish](https://i.howwhatproduce.com/images/011/image-32632-8-j.webp)
![I2C yoqish I2C yoqish](https://i.howwhatproduce.com/images/011/image-32632-9-j.webp)
![I2C yoqish I2C yoqish](https://i.howwhatproduce.com/images/011/image-32632-10-j.webp)
ADS1115 ADC (Analog to Digital Converter) Raspberry Pi bilan muloqot qilish uchun I2C (Inter-Integrated Circuit) protokoliga tayanadi, sukut bo'yicha I2C avtobusi o'chirilgan, uni yoqish uchun quyidagilarni yozing:
sudo raspi-config
sizni ko'k konfiguratsiya oynasiga olib boradi, u erdan o'q tugmachalari va kirish tugmachasi yordamida tanlang
- Interfeys imkoniyatlari
- I2C
- Keyin pastga tushing
Maslahat: Yuqoridagi skrinshotlarga murojaat qilish biroz yordam berishi mumkin! Agar siz hali ham tiqilib qolsangiz, qo'rqmang! Sparkfun-dan olingan ajoyib usulga qarang!
6 -qadam: Calibratethresholds -ni ishga tushiring
![Calibratethresholds -ni ishga tushiring! Calibratethresholds -ni ishga tushiring!](https://i.howwhatproduce.com/images/011/image-32632-11-j.webp)
Agar siz hali bo'lmasa, omborga o'ting va quyidagi buyruqlar yordamida misollar papkasiga o'ting:
Maslahat: 'cd Prog' yozing va Tab tugmachasini bosing, u ombor nomini avtomatik to'ldirishi kerak!
CD Progetto_One_Pin_Keypad_Python_Package
keyin yozing:
cd misollar
Keyin, ushbu buyruq yordamida calibratethresholds misolini ishga tushiring:
python3 kalibrlash chegaralari
va taxtangizni sozlash uchun konsolda ko'rsatilgan ko'rsatmalarga amal qiling. Kalibrlash barcha tugmachalarni bosib o'tgandan so'ng, "boshlash" so'ralganda, ba'zi tugmachalarni bosib ishlashini tekshirish uchun yangi analog qiymatlaringizni tekshiring, agar yangi qiymatlar noto'g'ri ekanligi isbotlansa, dasturni o'chirish va ishga tushirish uchun Ctrl C tugmachasidan foydalaning. yana
Kalibrlash misoli sizga keyingi misolda kerak bo'ladigan 2 qatorli kodni berishi kerak, konsolni ochiq saqlashga va/yoki ikkalasini ham nusxalashga ishonch hosil qiling!
7 -qadam: O'zgartiring va keyin Readkeypadwithtimeout -ni ishga tushiring
![O'zgartiring va keyin Readkeypadwithtimeout -ni ishga tushiring O'zgartiring va keyin Readkeypadwithtimeout -ni ishga tushiring](https://i.howwhatproduce.com/images/011/image-32632-12-j.webp)
![O'zgartiring va keyin Readkeypadwithtimeout -ni ishga tushiring O'zgartiring va keyin Readkeypadwithtimeout -ni ishga tushiring](https://i.howwhatproduce.com/images/011/image-32632-13-j.webp)
![O'zgartiring va keyin Readkeypadwithtimeout -ni ishga tushiring O'zgartiring va keyin Readkeypadwithtimeout -ni ishga tushiring](https://i.howwhatproduce.com/images/011/image-32632-14-j.webp)
Endi bitta pinli klaviatura sozlanganda, uni ishlatish vaqti keldi. Siz buni vi yordamida buyruq satridan qilishingiz mumkin bo'lsa -da, men shaxsan IDLE kabi IDE dan foydalanishni afzal ko'raman.
IDLE -ni oching (sizga python3 versiyasi kerak bo'ladi) va quyidagi qatorlarni o'zgartiring:
Siz nusxa ko'chirgan analog qiymatlar qatorini eslaysizmi? 13 -qatorni (pastga qarang) yangi kalibrlangan analog qiymatlar bilan almashtiring.
# ex: my_thresholds = [sozlangan qiymatlar shu erda bo'ladi]
bu bilan almashtiriladi:
my_thresholds = [225, 2116, 3904, 5200, 6300, 7350, 8450, 9325, 10000, 10750, 11500, 12100, 12550, 13100, 13800, 14250]
Keyin, keyingi qatorni 23 -qatordan keyin qo'shing (pastga qarang):
keypad.useCalibratedThresholds (my_thresholds)
23 -qatordan keyin qo'shiladi:
# ex: keypad.use_calibrated_thresholds (sizning qator nomingiz)
oxirigacha 22 dan 24 gacha qatorlarni shunday qilish:
# Agar kalibrlangan qiymatlar ishlatilayotgan bo'lsa, quyida_kalibratsiyalangan_to'laklardan foydalaning:
# ex: keypad.use_calibrated_thresholds (sizning qator nomingiz)
keypad.use_calibrated_thresholds (my_thresholds)
Bu tugagandan so'ng, kodni ishga tushiring va ba'zi tugmachalarni bosib sinab ko'ring! Namunaviy eskizni o'z loyihalaringizga moslashtirishga jur'at eting! Esda tutingki, read_keypad_with_timeout tugmachasini char sifatida qaytaradi va tanaffus millisekundlarda o'rnatiladi! Vaqt tugashini xohlamasangiz, klaviaturadan foydalaning. NO_TIMEOUT doimiy.
8 -qadam: Bir pinli klaviatura qanday ishlaydi
![Bir pinli klaviatura qanday ishlaydi Bir pinli klaviatura qanday ishlaydi](https://i.howwhatproduce.com/images/011/image-32632-15-j.webp)
![Bir pinli klaviatura qanday ishlaydi Bir pinli klaviatura qanday ishlaydi](https://i.howwhatproduce.com/images/011/image-32632-16-j.webp)
Bir pinli klaviatura dizaynining ko'p qismi Xari Vigunaning 16 pinli klaviaturadagi har bir kalit uchun o'ziga xos analog qiymatini olish uchun kuchlanish bo'linishini amalga oshirishga asoslangan. Bir pinli klaviatura dizayni deyarli bir xil o'zgarishlarga ega. Agar siz bitta pinli klaviatura qanday ishlashini bilishni xohlasangiz, Xari Vigunaning ajoyib videosini bu erda ko'rishingiz mumkin!
9 -qadam: Xulosa
![Xulosa Xulosa](https://i.howwhatproduce.com/images/011/image-32632-17-j.webp)
Ushbu qo'llanmada biz bir pinli klaviatura bilan ishlashni qanday boshlashni ko'rib chiqdik. Sizni qiziqtirganlar, nima uchun readKeypadInstantaneous misol eskizining hech qachon ishlatilmagani haqida o'ylayotgandirsiz, chunki bu unchalik foydali emas, chunki tugma chaqirilganda uni bosish kerak, readKeypadInstantaneous () funktsiyasi asosan soddalashtirish uchun ishlatiladi. kutubxonada readKeypadWithTimeout (). Agar u sizning ko'zingizga tushsa, uni aylantirish uchun o'zingizni erkin his qiling. Baxtli xakerlik!
Agar sizda biron bir savol bo'lsa, quyida izoh qoldiring yoki [email protected] elektron pochta manziliga elektron pochta orqali yuboring. Hamma yaxshi, Progetto Company P. S. Va'da qilinganidek, boshqaruv kengashi burgut fayllariga havola.
Tavsiya:
Sol-EZ solenoid haydovchi to'plamidan foydalanish bo'yicha qo'llanma: 9 qadam
![Sol-EZ solenoid haydovchi to'plamidan foydalanish bo'yicha qo'llanma: 9 qadam Sol-EZ solenoid haydovchi to'plamidan foydalanish bo'yicha qo'llanma: 9 qadam](https://i.howwhatproduce.com/images/010/image-29052-j.webp)
Sol-EZ solenoid haydovchilar to'plamidan foydalanish bo'yicha qo'llanma: Ogohlantirishlar: bu mahsulot uchun qo'llanma: SOL-EZ solenoid haydovchilar to'plami. Bu DIY loyihasi emas. Sol-EZ solenoid haydovchi to'plami nima? Qisqasi, Sol-EZ elektromagnit drayverlar to'plami solenoidlardan foydalanishni ancha soddalashtiradigan to'plamlardir
LORA SX1278 RF433 -dan qanday foydalanish bo'yicha qo'llanma: 3 qadam
![LORA SX1278 RF433 -dan qanday foydalanish bo'yicha qo'llanma: 3 qadam LORA SX1278 RF433 -dan qanday foydalanish bo'yicha qo'llanma: 3 qadam](https://i.howwhatproduce.com/images/001/image-1652-27-j.webp)
LORA SX1278 RF433-dan qanday foydalanish bo'yicha qo'llanma: Ushbu qo'llanmada biz sizga LORA-SX1278 RF433-ni bir-biri bilan muloqotda bo'lishni o'rgatamiz
ESP32 Bluetooth bo'yicha qo'llanma - ESP32 ichki Bluetooth -dan qanday foydalanish kerak: 5 qadam
![ESP32 Bluetooth bo'yicha qo'llanma - ESP32 ichki Bluetooth -dan qanday foydalanish kerak: 5 qadam ESP32 Bluetooth bo'yicha qo'llanma - ESP32 ichki Bluetooth -dan qanday foydalanish kerak: 5 qadam](https://i.howwhatproduce.com/images/001/image-2002-15-j.webp)
ESP32 Bluetooth bo'yicha qo'llanma | ESP32 ning o'rnatilgan Bluetooth -dan qanday foydalanish kerak: Salom bolalar, chunki ESP32 kengashi WiFi bilan birga keladi & Bluetooth ham, lekin bizning asosiy loyihalarimiz uchun biz odatda faqat Wi -Fi -dan foydalanamiz, shuning uchun biz Bluetooth -dan foydalanmaymiz, shuning uchun men ESP32 -ning Bluetooth -dan foydalanish qanchalik osonligini ko'rsataman. Asosiy loyihalaringiz uchun
DHT11/ DHT22 sensorlarini W/ Arduino -dan foydalanish bo'yicha yangi boshlanuvchilar uchun qo'llanma: 9 qadam
![DHT11/ DHT22 sensorlarini W/ Arduino -dan foydalanish bo'yicha yangi boshlanuvchilar uchun qo'llanma: 9 qadam DHT11/ DHT22 sensorlarini W/ Arduino -dan foydalanish bo'yicha yangi boshlanuvchilar uchun qo'llanma: 9 qadam](https://i.howwhatproduce.com/images/005/image-12194-16-j.webp)
DHT11/ DHT22 datchiklarini W/ Arduino -dan foydalanish bo'yicha yangi boshlanuvchilar uchun qo'llanma: Siz bu va boshqa ajoyib darslarni ElectroPeak rasmiy veb -saytida o'qishingiz mumkin.Bu darsda siz DHT11 va DHT22 datchiklarini sozlashni, atrof -muhit harorati va namligini o'lchashni o'rganasiz. O'rganing: DHT11 va DHT22
ISP 6 pinli 8 pinli rozetkaga: 4 qadam
![ISP 6 pinli 8 pinli rozetkaga: 4 qadam ISP 6 pinli 8 pinli rozetkaga: 4 qadam](https://i.howwhatproduce.com/preview/how-and-what-to-produce/10960486-isp-6-pin-to-8-pin-socket-4-steps-j.webp)
ISP 6 -pinli 8 -pinli rozetkaga: Men bu loyihani asosan 8 pinli ulanishga ega bo'lgan ATTiny45 -ni dasturlashim kerak edi, mening USBtinyISP -da (Ladyada -dan) faqat 10 -pinli va 6 -pinli ulanish mavjud. Taxminan 3-4 hafta mobaynida Internetni aylanib chiqqach, hech narsa topolmadim