Nu kommer ni säkert att skratta åt mig. Antingen för att svaret är enkelt eller för att det redan besvarats. Fast då kommer ni antagligen att bli irriterade på mig istället.
Egentligen har jag två frågor
Ett: Hur kopplar jag matrisen till en mikrokontroller?
Ett exempelschema hade varit fint
Två: Hur ska programmet bete sig?
Edit: Varför postade jag tråden här? Det var ju ogenomtänkt.
Knappsats i matris?
Enklaste sättet är att ansluta de fyra raderna till fyra output pinnar på CPUn
de fyra kolumnerna ansluter du sen till fyra input pinnar.
Du börjar sen med att skicka ut 0001 till utporten
och läser av inporten.
Sen skickar du ut 0010 till utporten
och läser av inporten
och sen 0100 och till sist 1000
inporten visar 0000 om ingen knapp är intryckt i den rad du valt med utporten. Visar den tex 0100 betyder det att andra knappen i den valda raden är intrykt. Detta måste altså göras efter varje gång utporten ändras!!
Detta system klarar bara av EN knapp nertryckt åt gången.
Trycker du ner tex 1 och 9 kommer det se ut som 3 och 7 också är nedtryckt... INTE BRA..
Hoppas detta förklarar lite hur det hela är tänkt
de fyra kolumnerna ansluter du sen till fyra input pinnar.
Du börjar sen med att skicka ut 0001 till utporten
och läser av inporten.
Sen skickar du ut 0010 till utporten
och läser av inporten
och sen 0100 och till sist 1000
inporten visar 0000 om ingen knapp är intryckt i den rad du valt med utporten. Visar den tex 0100 betyder det att andra knappen i den valda raden är intrykt. Detta måste altså göras efter varje gång utporten ändras!!
Detta system klarar bara av EN knapp nertryckt åt gången.
Trycker du ner tex 1 och 9 kommer det se ut som 3 och 7 också är nedtryckt... INTE BRA..
Hoppas detta förklarar lite hur det hela är tänkt
-
- Inlägg: 3663
- Blev medlem: 11 september 2004, 09:30:42
- Ort: gbg
- Kontakt:
Gör som jag: Bygg din egen knappsats.
Du behöver: 12 st små "tangentbordknappar" och en platta.
Koppling: BCD
Komplett koppligsschmena utan *, 0 och #:
*: Dioder till 8:an och 2:an
0: Dioder till 8:an , 2:an och 1:an
#: Dioder till 8:an och 4:an

Du lägger bara en signal "hög" från PICen som du kopplar på gemensam.
Sedan drar du ner alla 4 kablar (pulldown) genom att lägga 4 st 4,7 kohm resistors från de 4 utgångarna ner mot jord.
Sedan har du 4 utgångar. Så här ser de ut:
---DCBA
1: 0001
2: 0010
3: 0011
4: 0100
5: 0101
6: 0110
7: 0111
8: 1000
9: 1001
(Står ej med i schemat men du fattar nog hur man gör dem)
*: 1010
0: 1011
#: 1100
[/code]
Du behöver: 12 st små "tangentbordknappar" och en platta.
Koppling: BCD
Komplett koppligsschmena utan *, 0 och #:
*: Dioder till 8:an och 2:an
0: Dioder till 8:an , 2:an och 1:an
#: Dioder till 8:an och 4:an

Du lägger bara en signal "hög" från PICen som du kopplar på gemensam.
Sedan drar du ner alla 4 kablar (pulldown) genom att lägga 4 st 4,7 kohm resistors från de 4 utgångarna ner mot jord.
Sedan har du 4 utgångar. Så här ser de ut:
---DCBA
1: 0001
2: 0010
3: 0011
4: 0100
5: 0101
6: 0110
7: 0111
8: 1000
9: 1001
(Står ej med i schemat men du fattar nog hur man gör dem)
*: 1010
0: 1011
#: 1100
[/code]