Mündəricat:
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
Minimum sancaqlar olan 16 düyməni idarə etmək üçün 2 yol.
Addım 1: Giriş
Bu yaxınlarda bir Arduino klonuna bağlı 4x4 toxunma klaviatura matrisini idarə etmək yolunda çalışdım. Ayar nöqtələri belə idi:
-atmega328p üzərindəki 8 sancaq yerinə yalnız 4+1 sancaqlar istifadə etmək
-I2C vasitəsi ilə 4x20 CHAR bir LCD Ekran əlavə etmək üçün (2 pin)
-rəqəmsal və analoq çıxışlara nəzarət etmək.
Beləliklə, günah miqdarında I/O ilə idarə ediləcək çox şeyə sahib olmaq.
Addım 2: İstifadə ediləcək şeylər:
Arduino klonumdakı ekranı SDA (A4) və SCL (A5) pinləri ilə birləşdirmək üçün 4x20 simvolu olan bir LCD ekran və I2C modulu adaptoru aldım.
Məşhur və artıq köhnəlmiş MM74C922N -dən istifadə edirəm: 4x4 matrix klaviatura üçün uyğun 8 -dən 4 -ə qədər çevirici.
Atmega328p əsasında bir arduino klonu yaratdım və HE10 konnektoru (SPI avtobusu) və USBasp kabeli ilə proqramlaşdırıldım.
Addım 3: Şematik və lövhə:
Lövhə hazırlanır:
-LCD klaviatura yalnız Arduino IDE ilə istifadə olunur, LDmicro ilə mümkün deyil (Ladder proqramlaşdırma)
MM74C922N lövhəsi: 4 bit DCBA üzərində 16 ikili dəyərdə kodlaşdırılmış 16 düymə. Bir düyməyə basıldıqda: mavi LED işıqları yanır və DCBA -da bir dəyər görünür (A LSB -dir). Bir düymə buraxıldıqda: mavi LED işıqları sönür və dəyər DCBA -da sıfıra endirilir.
-Arduino atmega238p klon lövhəsi.
Addım 4: Merdiven Proqramlaşdırma ilə LDmicro istifadə edin:
Daxil ediləcək kod 16 düyməyə sıxılmış 16 dəyərdən 4 dəyərdən ibarətdir, buna görə 16x16x16x16 birləşmə.
SFC -ni çəkdikdən sonra, birində verilən metodla LADDER -ə çevirmək məcburiyyətindəsiniz
təlimatlar:
www.instructables.com/id/Arduino-tomation-…
Yazdıqdan sonra xxxx.hex olaraq tərtib edin və sonra KHAZAMA yükləyicisi ilə yükləyin.
LCD displey LDmicro -da proqramlaşdırıla bilməz.
İçindəki SERRURE.id eskizi və KHAZAMA yükləyicisi ilə LDmicro zip verirəm.
Addım 5: Mightycore və SMlib ilə Arduino IDE 1.8.x istifadə edin:
SFC -ni dövlət maşınına çevirirəm. Sonra içərisində Mightycore və SM kitabxanası olan Arduino IDE -dən istifadə etdim.
Mesajı göstərirəm: ERROR, WAITING, UNLOCK, status çatdı, LCD diplaydakı düymələrin dəyəri.
Sizə eskiz və SM libini verirəm. Mightycore üçün buna baxın:
www.instructables.com/id/Arduino-18x-Clone…
Addım 6: Nəticə çıxarın:
Bunlar 16 klaviaturanı idarə etməyin iki yoludur və yaxşı ardıcıllığı tapmaq mənim üçün bir neçə saat çəkdi, amma indi yaxşı işləyir. Bu addımlara hörmətlə yanaşmalısınız:
-1 DA pininin yüksələn kənarında bir düyməni basıldığını aşkar edin
-2 DCBA -da yaradılan dəyəri oxuyun və yaxşı ilə müqayisə edin
Şübhəsiz ki, işləməyəcək.
Şəbəkədəki bütün maraqlı dərslərə görə.