Sida 1 av 2
Precition på intern osc i PIC
Postat: 22 oktober 2007, 16:40:37
av squiz3r
Hej. Jag byggde en timer av en PIC12F629 för några dagar sen, och trimmade in den med en delaylop till 7min. Nu idag när jag testade den (Idag är det ca. 5-10 grader värmare i rummet gisningsvis) går den ca. 10sekunder fel... Kan det bero på att värmen får osc'en att ändra frekvens så mycket??
Kan man hindra detta på nått vis? Extern kristal är helst inte att föredra då IO pinnarna inte kommer räcka till
Mvh.
Postat: 22 oktober 2007, 17:01:09
av oJsan
I databladet (s93 enligt deras numrering) står toleranserna...
10s på 7min är ca 2,4% fel... kanske finns det någon kalibreringsbit för oscillatorn, men tyvärr kan du nog inte räkna med att få det så jätteexakt med INTOSC.
Postat: 22 oktober 2007, 17:24:12
av sodjan
Låter helt normalt för 5-10 graders ändring. Tre alternativ :
- Acceptera felet.
- Häng på en kristall.
- Byt till en 12F683 som har en "bättre" INTOSC.
Postat: 22 oktober 2007, 17:34:57
av squiz3r
Nu testade jag i 4grader C (ute) och det inte allt för glada ressultatet var 12sekunder fel
Ska jag byta processor byter jag till en 16F628A och trycker fast en kristall. Jag har kollat lite i databladet, och kan inte hitta något om vilken precision man kan få om man kör en 628A på en kristall (19,17MHz). Nån som vet ungefär?
Mvh.
Postat: 22 oktober 2007, 17:42:10
av sodjan
> och det inte allt för glada ressultatet
Men fullständigt förväntat !!
> Nån som vet ungefär?
Ja, den som tillverkar/säljer *KRISTALLEN*.
Microchip har naturligtsvis inte en aning om vilken kristall som
man hänger på. Standardkristaller har 30 eller 50 ppm. För temp-
kurvor, se något datablad på en kristall...
EDIT: ELFA's kristalldatablad har tempkurvor.
Postat: 22 oktober 2007, 18:40:49
av blueint
Vilken precision har 12F683 ..?
Postat: 22 oktober 2007, 20:24:50
av bengt-re
628A på en kristall kan ge dig ppb noggranhet.... Kör med en OCXO på clkin och du har en mycket noggran klocka... PICen missar inga pulser utan kristallen eller oscillatorn bestämmer helt noggranheten (ja i kristallfallet påverkar tempdriften hos lastkondingarna en aning också)
Postat: 22 oktober 2007, 22:12:57
av sodjan
Postat: 23 oktober 2007, 09:14:33
av PHermansson
Ja det är en tumregel jag kör med - Är timingen viktig - extern kristall, är det inte så noga - INTOSC.
Postat: 23 oktober 2007, 12:13:50
av blueint
HFOSC Internal Calibrated HFINTOSC Frequency(2) 8.0 MHz 1% vid Vdd=3.5V
p128/176
Postat: 23 oktober 2007, 12:26:03
av sodjan
Jo, men svaret är inte så enkelt...
squiz3r vill uppenbarligen ha svaret över ett temperatur-spann,
och då *måste* han kolla detaljerna i databladet själv.
Det finns diagram som visar osc prec som funktion av temp
och matningsspänning. Svaret kan vara 1%, 2% eller något annat
beroende på squiz3r's förutsättningar.
Postat: 6 november 2007, 17:59:56
av squiz3r
Okej, jag håller på att försöka progga en 16F628A med extern HS-kristall. Men den vill inte fungera :/
Jag har kopplat in kristallen mellan de två OSCIN pinnarna, och kopplar 20pF kondingar till jord. Sen i mjukvaran har jag ändrat på __CONFIG snutten från "_INTOSC_NO_CLKOUT" (tror jag det är) till "_HS_OSC". Är det något mer man måste ändra
När jag kör ett blinka_LED program så lyser den konstant..
Mvh
Postat: 6 november 2007, 20:07:08
av net4all
Det kan väll vara så enkelt att kristallens frekvens är mycket högre än INTOSCs frekvens, om programmet är gjort för och testat med INTOSC (4MHz) och du sedan kör samma program fast med 20 Mhz......
Hinner inte se blinkningarna?
Postat: 6 november 2007, 21:12:15
av squiz3r
Det tycker jag inte. Kristallen är på 19MHz, alltså ungefär 5ggr så snabbt som intOSC. Och innan blinkade det rätt sakta. Men jag ska testa öka pausen ändå.
Om klockan inte ville gå ordentligt så borde ju inte LED'n tändas..
Mvh
Postat: 6 november 2007, 22:02:52
av sodjan
> Om klockan inte ville gå ordentligt så borde ju inte LED'n tändas..
Nej, det stämmer.
*Någonting* måste starta för att ställa om pinnen till utgång...