Sida 1 av 1
TGB -> PIC
Postat: 22 oktober 2006, 10:43:36
av persika
Är det någon här som vet ett finurligt sätt att koppla
ett 16-knappars tangentbord (xy-matris) till en PIC,
med att använda så få ben som möjligt ?
Postat: 22 oktober 2006, 11:44:25
av Rohan
Med ett antal motstånd så kan du använda ett ben, en adc.
I x-led sätter du motstånd med storlek 0, 1R, 2R och 3R. I y-led använder du 4R, 8R, 12R och 16R. När du trycker ner en knapp så sluts en krets med ett motstånd ur varje serie och du får exempelvis 2R + 12R = 14R. Sen får du se till att använda en AD-omvandlare för att kunna läsa ut något meningsfullt.
Så ett ben räcker.
Postat: 22 oktober 2006, 11:47:23
av oJsan
Låt säga att man använder följande teknik:
Roterande nolla på raderna (ut) och pullup-motstånd på kolumnerna (in).
Sekvensen för raderna består av fyra steg, vilket alltså teoretiskt kan realiseras med TVÅ bitar (med t.ex. ett skiftregister eller logikkretsar).
Ingångarna kan kodas enligt samma princip. De fyra möjliga kolumnerna kan ju ha fem tillstånd. (0x00, 0x01, 0x02, 0x04, 0x08). De fem kombinationerna kan representeras med TRE bitar. Rent elektriskt sett så kopplar du tre av kolumnerna direkt till tre bitar på mcu:n. Det fjärde kopplar du till två av de tre benen men via två dioder.
Svårt att förklara i ord, men om det låter som ett bra förslag så kan jag förklara bättre. =)
Totalt sett har du då minskat från åtta till fem ben. Vill du minska mer så finns det speciella tangentbordsavkodningschip som dessutom kan innehålla avstudsning.
Postat: 22 oktober 2006, 13:58:42
av exile
Lite förklaring på det som har sagts ovan ^^
länk
Postat: 22 oktober 2006, 23:14:17
av sodjan
> Är det någon här som vet......
Mycket möjligt, men även Microchip vet :
http://ww1.microchip.com/downloads/en/D ... 40040b.pdf
Postat: 25 oktober 2006, 12:57:24
av persika
Har sett det med motståndskopplingen på Microchip länken.
Det är ju enkelt o bra om man har AD i pic'en.
Om man är snål o väljer en pic utan AD, skulle man kunna koppla paketet med tgb+motstånd i en oscillatorkoppling, och istället mäta periodtiden med ett pic-ben. Oscillator med OP-förstärkare eller en inverterare typ 74HC14.
Postat: 25 oktober 2006, 13:24:01
av vfr
Flera lösningar med A/D-omvandlare fungerar med komparator också. T.ex den i PIC 16F628. Färre spänningsnivåer att detektera men samma grundprincip.
Rattknapparna till stereon på SAAB:ar fungerar med knapparna i en motståndskedja. Dessa kan läsas av med en 16F628 t.ex. Kräver bara en ingång.