INHOUDSOPGAWE:
2025 Outeur: John Day | [email protected]. Laas verander: 2025-01-13 06:56
2 maniere om 'n 16 drukknoppies met 'n minimum aantal penne te bestuur.
Stap 1: Inleiding
Ek het onlangs gewerk aan 'n manier om 'n 4x4 -aanraakklaviermatriks te bestuur wat gekoppel is aan 'n Arduino -kloon. Die setpunte was:
-om slegs 4+1 penne te gebruik in plaas van 8 penne op die atmega328p
-om 'n LCD Display 4x20 CHAR -skakel via I2C by te voeg (2 penne)
-om digitale en analoog uitsette te beheer.
Dus, met baie dinge om te beheer met 'n sonde I/O.
Stap 2: Dinge om te gebruik:
Ek het 'n LCD -skerm 4x20 karakters en 'n I2C -module -aanpassing gekoop om die skerm aan te sluit met SDA (A4) en SCL (A5) penne op my arduino -kloon.
Ek gebruik die beroemde en nou verouderde MM74C922N: 'n omskakelaar van 8 tot 4 maniere wat by die 4x4 -matriks -bedieningspaneel pas.
Ek het 'n kloon van die arduino gemaak op grond van die atmega328p en geprogrammeer via 'n HE10 -aansluiting (SPI -bus) en 'n USBasp -kabel.
Stap 3: Skematiese en die raad:
Die bord is gemaak van:
-Die LCD -toetsbord gebruik slegs met Arduino IDE, nie moontlik met LDmicro (Ladder programmering)
-die MM74C922N bord: 16 drukknoppies gekodeer op 16 binêre waardes op 4 bis DCBA. As 'n knoppie ingedruk word: die blou led brand en 'n waarde verskyn op DCBA (A is die LSB). As 'n knoppie loskom: die blou led brand af en die waarde word op DCBA op nul teruggestel.
-die Arduino atmega238p kloonbord.
Stap 4: Gebruik LDmicro Met Ladder -programmering:
Die kode wat ingevoer moet word, bestaan uit 4 waardes onder 16 sleuteldrukwaardes, dus kombinasies van 16x16x16x16.
Sodra u die SFC geteken het, moet u dit in LADDER vertaal met die metode wat in een van my gegee word
instruksies:
www.instructables.com/id/Arduino-tomation-…
Sodra dit getik is, stel dit op as xxxx.hex en laai dit dan af met KHAZAMA downloader.
Die LCD -skerm kan nie op LDmicro geprogrammeer word nie.
Ek gee LDmicro -zip met die skets SERRURE.id daarin en die KHAZAMA -aflaaier.
Stap 5: Gebruik Arduino IDE 1.8.x Met Mightycore en SMlib:
Ek vertaal die SFC in 'n staatsmasjien. Toe gebruik ek Arduino IDE met die Mightycore en SM biblioteek binne.
Ek vertoon 'n boodskap soos: FOUT, WAG, ONTSLUIT, bereik toestand, waarde van die sleutels wat op die LCD -skerm gedruk word.
Ek gee jou die skets en die SM lib. Kyk na Mightycore hierna:
www.instructables.com/id/Arduino-18x-Clone…
Stap 6: Om af te sluit:
Dit is twee maniere om die 16 -klavier te bestuur, en dit het my 'n paar uur geneem om die goeie volgorde te vind, maar nou werk dit goed. U moet hierdie stappe respekteer:
-1 bespeur 'n druk op 'n stygende rand van die DA -pen
-2 lees die waarde wat op DCBA gegenereer word, en vergelyk dit met die goeie waarde
Tensy dit beslis nie sal werk nie.
Dankie aan alle interessante tutoriale op die internet.