Jag har en koppling uppkopplad på ett kopplingsdäck där bland annat en pic processor ska tända upp ett antal lysdioder när pic:en får en 1:a på något motsvarande ben.
Detta fungerar fint men så i bland lyser dioderna utan att jag tycker att jag har startat någon. Så av en ren tillfällighet märkte jag att dom tänds när jag släcker ljuset i mitt badrum.
Hur i all värden kan detta inträffa
Strömbrytaren som antingen lägger en 0:a eller en 1:a på pic:en är kopplad som den högra på bilden och kretsen drivs av en transformator från vägguttaget.
Prova med att lägga en kondensator på spänningsmatningen, du får nog störningar från nätet genom din "transformator".
Är spänningen stabbad från "transformatorn"
Med tanke på att både Pic- och Avr-chip oftast har en intern pullup på pinnar satta som input så skulle jag definitivt använda mig av den vänsta kopplingen istället.
Så som du har det nu så får inputten (när strömbrytaren är öppen) nån mysko spänning på sig. 10 K mot jord och X K till plus. Om nu det interna motståndet X är väldigt högt (>100K) så kanske det inte spelar nån större roll. Men tänk dig vad dom händer om det interna motståndet är på 10K det också - då har du 2.5 volt på inputpinnen när strömbrytaren är öppen.
Nu är jag inte övertygad om att det är detta som är ditt problem i det här fallet. Bättre avstörning kanske kan vara en bättre gissning. 200uF före stabben och 0.1uF efter kanske kan snygga upp det hela.
Hur som helst är ett grundläggande designtips att alltid ha "pullmotstånd" mot plus och jumprar/strömbrytare mot jord.
Pullup:en som finns på PIC:ar finns endast på en port (PORTB) och är inte enabled som default. Så i detta fall tvivlar jag på att det är det som är felet, men jag kan hålla med om att det är bättre med pullup.
Vid frånslag/tillslag av kontakter så blir det oftas gnistbildning. Detta fenomen genererar högfrekventa störningar så det borde räcka med att du lägger ett LP-filter på matningen!
Två alternativ är sanna. Du kan koppla en pullup motstånd samt skriva en rutin (t.ex: studsning om du använder interrupt eller också en kort delay direkt efter till-/frånswitchning). En {L7805CP +5V artnr: 73-262-75 pris 12:50 } regulator anser jag ett måste när man håller på med MCU. Spänningsregulator från Elfa.
Har provat med den vänstra bilden av koppling innan och då blev det ingen påverkan när jag släckte ljuset så jag återgår troligen till detta, verkar vara den enklaste lösningen. Jag använder mig av en spänningsregulator.
Om jag vill motverka störningar med en kondensator, hur kopplar jag bäst in den då?
Har du provat att driva PICen med en separat spänningskälla. Typ ett batteri, och kolla om felet kvarstår. Om den gör så har du antingen fel i koden, PICen eller strömbrytaren.
Jag tvivlar på att felet kvarstår om jag driver det med batteri och det blir ju lite svårt att testa det för batteriet påverkas knappast av strömbrytaren i mitt badrum.
Om du testar att köra med ett batteri och ser att din prototyp uppför sig så som du har tänkt, då vet du med säkerhet att det är inget fel i programmet, eller kopplingen. På så sätt kan du begränsa din sökning efter felet med utgångspunkt "BADRUMMET"
Eller?