MSP430 baserad Chronulator (med Launchpad chip) (11 / 12 steg)
Steg 11: Bestämma 32.768 kHz ladda Crystals kapacitans
Skillnader i krets layout på projektstyrelsen (eller PCB) komplicerar problemet genom att lägga till mer kapacitans. På plussidan har MSP430G2211 förmåga att tillhandahålla olika kapacitans värden till kretsen. Vi kan ändra kapacitans värde inom ett intervall av programvara. I koden finns följande rader. Vi kommer att välja en som bygger på resultatet av våra tester.
Crystal Cload kondensator justering - endast en rad av nästa fyra bör vara okommenterade
BCSCTL3 = LFXT1S_0 + XCAP_3; 32768kHz kristall, 12,5 pF
BCSCTL3 = LFXT1S_0 + XCAP_2; 32768kHz kristall, 10 pF
BCSCTL3 = LFXT1S_0 + XCAP_1; 32768kHz kristall, 6 pF
BCSCTL3 = LFXT1S_0 + XCAP_0; 32768kHz kristall, 1 pF
Konsekvenserna av ett felaktigt urval av C_load:
När C_load för en kristall är för hög svänger kristallen på en något lägre frekvens. På samma sätt när kapacitansen är alltför låg kommer kristallen svänger något snabbare. För en kristall 32.768 kHz, vi talar generellt om 1 eller 2 Hertz. En eller två Hertz, du säger, det låter inte så mycket. Vad är big deal?
Den MSP430 16-bitars timer återställs varje 2 ^ 15 eller 32.768 pulser. Om vi använder en kristall som ger exakt 32.768 pulser per sekund, sedan timern återställs varje sekund. Om kristallen faktiskt kör på 32766 pulser per sekund, är den effektiva MSP430 "andra"
1 SEK + 2/32766 SEK = 1 1/16383 SEK
Efter 16383 sekunder (~4.55 timmar) vore Chronulator en sekund bakom en klocka med en kristall som kör på 32 768 Hz. Med andra ord skulle det förlora en minut varje 11.375 dagar.
Crystal pulser tid att vara tid att vara snabb /
Frekvens av off 1 sec. off 1 min. Slow
----------------------------------------------------------------------------------------
32,766-2 4.55 timmar. 11.375 dagar Slow
32 767-1 9,50 timmar. 22.750 dagar Slow
32.768 0--ska hålla god tid--
32,769 1 9,50 timmar. 22.750 dagar Fast
32,770 2 4.55 timmar. 11.375 dagar Fast
Hur du väljer rätt värdet av C_load:
Steg 1:
Välj en klocka som håller mycket bra tid, eller använda din dator eller mobiltelefon klocka, vara din standard. Placera din standard bredvid Chronulator. Vänta tills din klocka "second hand ligger ungefär på 20 sekunder och snabbt ställa dina chronulator tid att bara en minut bakom din klocka. När klockan är begagnad metoder 12 (eller 60 om digital) trycker den chronulator minute increment-knappen för att sätta två klockor i sync. Eftersom du kommer sannolikt vara bort en sekund eller två, Observera både ur ytterligare en minut för att få den exakta andra att den Chronulator minut mätaren förskott ("fästingar"). Skriv ner datumet, tiden och andra av "fästingen". Du kommer inte ihåg.
Steg 2:
Vänta en dag eller två, sedan kontrollera om båda klockorna är fortfarande i synk. Om du inte är säker på att vänta ett par dagar, då bör om de är lediga, du kunna berätta. Om du fortfarande inte, sedan saker är ok och ingen justering behöver göras.
Steg 3:
Om klockorna har förlorat sync, justera C_load kapacitans genom att ändra en av kommenterade rader ovanför i c programmet och kommentera den inställning som var i bruk. Om din standard klocka är före Chronulator, är Chronulator långsam. Minska värdet kapacitans. Om din standard klocka är bakom Chronulator, är Chronulater snabb. Öka värdet för kapacitans.
Vad händer om din klocka är fortfarande snabbt och du kan inte öka i någon högre kapacitans? I det här fallet kan du lägga 2 mycket små kondensatorer (6-12 pF) från var och en av crystal leder till marken. Jag skulle bara prova en annan kristall. Om du vill lägga till kondensatorer kan du få dem från råttfångare (6 pf - råttfångare del # 81-RPE5C1h6R0D2P1B03 $0,18, 12 pF - råttfångare del # 81 - RPE5C2! 120J2P1Z03 $0,23).
Vad händer om din klocka är fortfarande långsamt och du kan inte minska kapacitansen någon lägre? I detta fall, kontrollera om du kan minska kapacitansen på brädan projekt. Detta kan göras genom att se till att kristallen är nära IC stift 12 och 13. Se också till att går för kristallen är kort. Om detta inte hjälper, skulle jag prova ett annat crystal från en annan källa.
Förresten, om du har en puls räknare, kan du göra ACLK tillgängliga på P1.0 med ett enkelt program (bifogas nedan) och kontrollera den crystal frekvens i projektstyrelsen direkt. Jag använde den här tekniken för att iaktta förändringar på min Launchpad / crystal setup. Jag tyckte att den rekommenderade inställningen av 12 pF (XCAP_3) var lite för hög C_load. Titta på de olika bilderna nedan för att se resultaten av olika XCAP inställningar. Du kanske undrar om min counter kalibrering. Jag känner mig väldigt bekväm att det är korrekt, eftersom jag kunde uppnå en 32766 Hz setup på min projektstyrelse / crystal kombination. Med denna installation observerade jag den 1 andra förlusten varje 4,55 timmar visas i tabellen ovan. När jag optimerat den för C_load (dvs. observerade freq = 32 768 Hz), klockan var rätt på pengarna.