Innehållsförteckning:

Exempel på skåp med Arduino Matrix -knappsats 4x4: 6 steg
Exempel på skåp med Arduino Matrix -knappsats 4x4: 6 steg

Video: Exempel på skåp med Arduino Matrix -knappsats 4x4: 6 steg

Video: Exempel på skåp med Arduino Matrix -knappsats 4x4: 6 steg
Video: RFID Technology Explained 2024, Juli
Anonim
Exempel på skåp med Arduino Matrix -knappsats 4x4
Exempel på skåp med Arduino Matrix -knappsats 4x4

2 sätt att hantera en knappsats med 16 knappar med minst stift.

Steg 1: Intro

Jag har nyligen arbetat med ett sätt att hantera en 4x4 -knappsatsmatris ansluten till en Arduino -klon. Börvärdena var:

-för att bara använda 4+1 stift istället för 8 stift på atmega328p

-för att lägga till en LCD -display 4x20 CHAR -länk via I2C (2 stift)

-för att styra digitala och analoga utgångar.

Så att ha många saker att kontrollera med en synd i I/O.

Steg 2: Saker att använda:

Saker att använda
Saker att använda

Jag köpte en LCD -display 4x20 tecken och en I2C -modul adaptor för att ansluta skärmen med SDA (A4) och SCL (A5) stift på min arduino klon.

Jag använder den berömda och nu föråldrade MM74C922N: en 8 till 4 sätt omvandlare passar till 4x4 matris knappsats.

Jag skapade en klon av arduino baserad på atmega328p och programmerad via en HE10 -kontakt (SPI -buss) och en USBasp -kabel.

Steg 3: Schematisk och styrelsen:

Schematisk och styrelsen
Schematisk och styrelsen
Schematisk och styrelsen
Schematisk och styrelsen

Styrelsen är gjord av:

-LCD -knappsatsen används endast med Arduino IDE, inte möjligt med LDmicro (stege -programmering)

-kortet MM74C922N: 16 tryckknappar kodade för 16 binära värden på 4 bitars DCBA. När du trycker på en knapp: lyser den blå lysdioden och ett värde visas på DCBA (A är LSB). När en knapp släpps: den blå lysdioden tänds och värdet återställs till noll på DCBA.

-klonbrädet Arduino atmega238p.

Steg 4: Använda LDmicro With Ladder Programming:

Använda LDmicro With Ladder Programming
Använda LDmicro With Ladder Programming
Använda LDmicro With Ladder Programming
Använda LDmicro With Ladder Programming
Använda LDmicro With Ladder Programming
Använda LDmicro With Ladder Programming

Koden som ska matas in består av 4 värden bland 16 knapptryckta värden så 16x16x16x16 kombinationer.

När du har ritat SFC måste du sedan översätta den till LADDER med metoden som anges i en av mina

instruktioner:

www.instructables.com/id/Arduino-tomation-…

När du har skrivit det, kompilerar du det som xxxx.hex och laddar det sedan ner med KHAZAMA -nedladdare.

LCD -skärmen kan inte programmeras på LDmicro.

Jag ger LDmicro zip med skissen SERRURE.id i den och KHAZAMA -nedladdaren.

Steg 5: Använda Arduino IDE 1.8.x med Mightycore och SMlib:

Använda Arduino IDE 1.8.x med Mightycore och SMlib
Använda Arduino IDE 1.8.x med Mightycore och SMlib

Jag översätter SFC till en tillståndsmaskin. Sedan använde jag Arduino IDE med Mightycore och SM -biblioteket inuti.

Jag visar meddelande som: FEL, VÄNTNING, LÅS UPP, tillstånd nådd, värdet på knapptryckningen på LCD -displayen.

Jag ger dig skissen och SM lib. För Mightycore titta på detta:

www.instructables.com/id/Arduino-18x-Clone …

Steg 6: Avsluta:

Det här är två sätt att hantera de 16 knappsatserna och det tog mig flera timmar att hitta den bra sekvensen men nu fungerar det bra. Du måste respektera dessa steg:

-1 upptäcker en knapptryckning på en stigande kant av DA -stiftet

-2 läs värdet som genereras på DCBA och jämför med det goda

Om det inte kommer att fungera.

Tack till all intressant handledning på nätet.

Rekommenderad: