Sisukord:
2025 Autor: John Day | [email protected]. Viimati modifitseeritud: 2025-01-13 06:57
2 võimalust 16 klahvistiku klahvistiku haldamiseks minimaalsete nööpnõeltega.
1. samm: sissejuhatus
Töötasin hiljuti viisi, kuidas hallata Arduino klooniga ühendatud 4x4 puutetundliku klaviatuuri maatriksit. Määratud punktid olid:
-kasutada atmega328p 8 tihvti asemel ainult 4+1 tihvti
-lisada LCD -ekraani 4x20 CHAR link I2C kaudu (2 tihvti)
-digitaalsete ja analoogväljundite juhtimiseks.
Niisiis, kui teil on palju asju, mida kontrollida patu koguse I/O abil.
2. samm. Kasutatavad asjad:
Ostsin oma arduino kloonil ekraani ühendamiseks SDA (A4) ja SCL (A5) tihvtidega 4x20 tähemärgise LCD -ekraani ja I2C mooduli adapteri.
Ma kasutan kuulsat ja nüüdseks vananenud MM74C922N: 8 kuni 4 muundurit, mis sobivad 4x4 maatriksi klaviatuuriga.
Lõin arduino klooni atmega328p baasil ja programmeerisin HE10 pistiku (SPI siin) ja USBasp kaabli kaudu.
3. samm: skeem ja juhatus:
Plaat on valmistatud:
-LCD -klahvistikku saab kasutada ainult koos Arduino IDE -ga, LDmicro (redeliprogrammeerimine) puhul pole see võimalik
-MM74C922N plaat: 16 nuppu, mis on kodeeritud 16 binaarväärtusele 4 bitil DCBA. Kui nuppu vajutatakse: sinine LED süttib ja DCBA -le ilmub väärtus (A on LSB). Nupu vabastamisel: sinine LED -tuli kustub ja väärtus nullitakse DCBA -l.
-Arduino atmega238p klooniplaat.
Samm 4: LDmicro kasutamine koos redeliprogrammeerimisega:
Sisestatav kood koosneb neljast väärtusest 16 klahvivajutatud väärtuse vahel, seega 16x16x16x16 kombinatsioonid.
Kui olete SFC joonistanud, peate selle tõlkima LADDER -i, kasutades ühte minu meetodist
juhised:
www.instructables.com/id/Arduino-tomation-…
Pärast sisestamist kompileerige see nimega xxxx.hex ja laadige see alla KHAZAMA allalaadijaga.
LCD -ekraani ei saa LDmicro programmeerida.
Annan LDmicro zip'i koos eskiisi SERRURE.id ja allalaadijaga KHAZAMA.
Samm: Arduino IDE 1.8.x kasutamine koos Mightycore'i ja SMlibiga:
Tõlgin SFC olekumasinaks. Siis kasutasin Arduino IDE -d, mille sees oli Mightycore ja SM raamatukogu.
Näitan sõnumit: ERROR, WAITING, UNLOCK, state (saavutatud), klahvivajutuse väärtus LCD diplay'il.
Annan teile visandi ja SM libi. Mightycore'i jaoks vaadake seda:
www.instructables.com/id/Arduino-18x-Clone…
6. samm: lõpetuseks:
Need on kaks võimalust 16 klahvistiku haldamiseks ja hea järjestuse leidmiseks kulus mul mitu tundi, kuid nüüd töötab see hästi. Peate järgima neid samme:
-1 tuvastab DA -tihvti tõusvas servas klahvivajutuse
-2 lugege DCBA -l loodud väärtust ja võrrelge seda heaga
Kui see kindlasti ei tööta.
Tänan kõiki huvitavaid õpetusi võrgus.