Knapp-problem

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Rocky_AL
Inlägg: 617
Blev medlem: 7 december 2006, 15:14:50
Ort: Stockholm

Knapp-problem

Inlägg av Rocky_AL »

Har en koppling med en PIC16F887 där jag har några knappar multiplexade. De är kopplade 2x5. 2 portar är utgångar och 5 portar är ingångar, så totalt har jag 10 knappar. Som avkoppling har jag ett 10kΩ från samtliga 7 portar ner till gnd.

Nu till problemet. När knapp nr. 2 trycks ned så tror picen att knapp 1 trycks ned. trycker man på knapp nr. 1 så tror picen även denna gång att knapp nr. 1 trycks ned. Samma problem verkar uppstå mellan knapp 6 och knapp 7.

Kopplar man bort sladden (ca 15cm lång) mellan knapparna och picen och istället kör med en labbsladd direkt till inputen så fungerar det perfekt. Jag har kollat alla lödningar på knapparna och sladden verkar vara hel överallt.

Vad kan problemet vara?

edit: Problemet försvinner ibland då man håller ett finger på på ena lödön på den knapp man inte trycker på.
Ex. så fungerar det ibland då man håller fingret på input 1 när man trycker på knapp 2.
Användarvisningsbild
$tiff
Inlägg: 4941
Blev medlem: 31 maj 2003, 19:47:52
Ort: Göteborg
Kontakt:

Inlägg av $tiff »

Du multiplexar för snabbt?
Lite svårt att säga utan ett mer precis schema på hur du kopplat. Om du har löst drällande sladdar som inte är parade signal-jord så får du lätt intressanta fenomen (reaktiva) med branta flanker från knapparna.
Rocky_AL
Inlägg: 617
Blev medlem: 7 december 2006, 15:14:50
Ort: Stockholm

Inlägg av Rocky_AL »

har en 20MHz kristall till picen. Multiplexningen är gjord så att trycks knapp 2 ned så kollas inte knapparna 3-10. Dvs, alla knappar med nr. högre än den man trycker på, kollas inte så länge man håller ned knappen. Så knapparna kollas av ca 30 000 gånger/s då knapp 2 trycks ned. Är det för fort? Ska prova att sänka hastigheten. Det är ju onödigt att kolla så ofta ändå.

Edit: provade att köra en halv sekund mellan svepen nu, smma problem uppstår ändå. Men som sagt det verkar fungera då man håller fingret på knappen (se ovan) Kan det vara för dålig avkoppling?
Användarvisningsbild
$tiff
Inlägg: 4941
Blev medlem: 31 maj 2003, 19:47:52
Ort: Göteborg
Kontakt:

Inlägg av $tiff »

Man brukar avkoppla med kondensatorer, du skrev att du avkopplade med 10kΩ. Intressant. Kondensatorn sitter normalt över matningen på elektriska komponenter som orsakar strömspikar.

Felet måste inte vara helt i hårdvaran, du kan ha haft otur när du tänkte fram koden också, t.ex. för lite delay mellan switchning och avläsning någonstans, etc.
Rocky_AL
Inlägg: 617
Blev medlem: 7 december 2006, 15:14:50
Ort: Stockholm

Inlägg av Rocky_AL »

Menar inte avkoppla. Jag menar att jag har pull-down. :wacko:

Edit: Du hade rätt angående oturen med koden. Koden är sådan att en av de 2 utgångarna slås på, därefter börjar knapparna kollas av. Det var helt enkelt för kort tid mellan det att utgången slogs på och att ingångarna kollades. När jag lade på en väntloop så lade jag den innan porten slogs på så tiden var ändå för kort mellan utgången och ingången :x . Det var antagligen därför bara knapp nr 1 och 2 krånglade. Samma sak för 6 och 7 (som är knapp 1 och 2 fast med den andra utgången)

tack för hjälpen.
Skriv svar