Kul med PIC församling - episod 7 (2 / 3 steg)
Steg 2: hårdvara
Diagrammet visar den 12F683 som vi har använt i några av de tidigare episoderna men denna krets fungerar lika samt med många andra PIC versioner. Du behöver bara ansluta till motsvarande stift om du använder en annan version PIC. De enda nödvändiga komponenterna att skapa långa tidsgränser är de komponenter som är ansluten till stift 7. Lysdioderna och deras strömbegränsande motstånd lades till bara för att ge oss en visuell indikation på tiden mellan wake-ups. Mikrochip ansökan Obs AN879 innehåller massor av bra information om hårdvara och mjukvara för att använda denna funktion. 220 ohm motståndet används för att begränsa toppströmmen kommer från PIC när laddning kondensatorn. AN879 rekommenderar minst 200 ohm när du använder kondensatorer större än 50pf.
220 ohm motståndet har en obetydlig inverkan på dröjsmål tidpunkten på grund av ultra-hög motsvarande motståndet interna för PIC. I själva verket har PIC en inre nuvarande sink av om 140nA så timeout kan beräknas som ungefär 30ms per nano-farad vid 5 volt. Eftersom egenskaperna för den valda kondensatorn kommer att variera över tid och temperatur, kan inte vi få mycket exakt timeout. Då igen, är vårt mål att få lång timeout så onoggrannhet är nog inte kritiska. En av de saker du bör tänka på är läckaget ström (självurladdning) på kondensatorn, särskilt om du väljer ett värde större än 1uf. Som en tumregel, keramiska kondensatorer har de lägsta läckage nuvarande, tantalums nästa lägst, och electrolytics är sämst. I mitt experiment använde jag keramik för värden under 1uf och tantalums för värden 1uf och högre. 47uf kondensatorn jag Visa i diagrammet är den största jag har försökt, helt enkelt eftersom det är den största tantal jag hittade i min skräp låda. Om du kör beräkningarna, det bör ge en 23.5 minut timeout men min faktiska gick ca 26 minuter. En 10uf kondensatorn gav mig 5,5 minuter (uppskattningsvis 5 minuter), en 1uf gav mig 32 sekunder (uppskattningsvis 30 sekunder) och en 0.1uf gav mig drygt 3 sekunder (uppskattningsvis 3 sekunder).
Som tidigare nämnts, ger två lysdioder i diagrammet en visuell indikation om du vill tid förseningen. Jag använde en röd och en grön så det var mycket uppenbart när växeln hade inträffat. Som kom väl till pass på mycket lång timeout eftersom jag kunde bara smygtitt en tillfällig från andra sidan rummet.