Knuff i rätt riktning - extern oscillator eller ej
- Magnus_K
- EF Sponsor
- Inlägg: 5854
- Blev medlem: 4 januari 2010, 17:53:25
- Ort: Skogen mellan Uppsala-Gävle
Knuff i rätt riktning - extern oscillator eller ej
Hej!
Helst vill jag inte använda en extern oscillator, men jag försöker förstå hur mycket det påverkar om jag använder en eller ej.
Jag vill mäta en inkommande puls med så hög upplösning som möjligt och försöker klura ut hur mycket det skiljer mellan extern oscillator eller utan.
MCU:n i fråga är en ATmega328P (datablad).
Tänkte använda Timer1 som är 16 bitar men sen tar det lite stopp. Sitter och kikar på schemat på sidan 150 och blir mest förvirrad.
Någon som kan knuffa i rätt riktning?
Helst vill jag inte använda en extern oscillator, men jag försöker förstå hur mycket det påverkar om jag använder en eller ej.
Jag vill mäta en inkommande puls med så hög upplösning som möjligt och försöker klura ut hur mycket det skiljer mellan extern oscillator eller utan.
MCU:n i fråga är en ATmega328P (datablad).
Tänkte använda Timer1 som är 16 bitar men sen tar det lite stopp. Sitter och kikar på schemat på sidan 150 och blir mest förvirrad.
Någon som kan knuffa i rätt riktning?
Re: Knuff i rätt riktning - extern oscillator eller ej
8 MHz vs 16 MHz för extern osc. Blir det en faktor två i timern, tror det.
Det sägs att precisionen på den interna 8 MHz-oscillatorn inte är världens bästa.
Har sett exempel där vanlig seriekommunikation ska spåra ur pga det. Men har inte
råkat ut för det själv de gånger jag kört utan exten osc.
Nu har jag fått tag i en hög med ytmonterade osc. så jag brukar löda dit en och
undviker interna 8 MHz. Det strular också om man har en cpu som är inställd
med intern osc och vill ändra fusarna till extern osc. Då måste man ändå
ha en 8 MHz extern klocksignal. Adafruit har en lösning https://github.com/adafruit/ArduinoISP
Det sägs att precisionen på den interna 8 MHz-oscillatorn inte är världens bästa.
Har sett exempel där vanlig seriekommunikation ska spåra ur pga det. Men har inte
råkat ut för det själv de gånger jag kört utan exten osc.
Nu har jag fått tag i en hög med ytmonterade osc. så jag brukar löda dit en och
undviker interna 8 MHz. Det strular också om man har en cpu som är inställd
med intern osc och vill ändra fusarna till extern osc. Då måste man ändå
ha en 8 MHz extern klocksignal. Adafruit har en lösning https://github.com/adafruit/ArduinoISP
Re: Knuff i rätt riktning - extern oscillator eller ej
Aruino har ju Atmega328 från början med 16 MHz kristall (extern) Där finns det kommando (pulseIn()) som mäter med några Micros marginal, skulle detta passa i upplösning? Jag tror den använder 16 bit timer från början.
- Magnus_K
- EF Sponsor
- Inlägg: 5854
- Blev medlem: 4 januari 2010, 17:53:25
- Ort: Skogen mellan Uppsala-Gävle
Re: Knuff i rätt riktning - extern oscillator eller ej
Ja det är lite det här jag blir helt förvirrad över... Har också hört varningens ord om den seriella kommunikationen.hawkan skrev:8 MHz vs 16 MHz för extern osc. Blir det en faktor två i timern, tror det.
Det sägs att precisionen på den interna 8 MHz-oscillatorn inte är världens bästa.
Har sett exempel där vanlig seriekommunikation ska spåra ur pga det. Men har inte
råkat ut för det själv de gånger jag kört utan exten osc.
Nu har jag fått tag i en hög med ytmonterade osc. så jag brukar löda dit en och
undviker interna 8 MHz. Det strular också om man har en cpu som är inställd
med intern osc och vill ändra fusarna till extern osc. Då måste man ändå
ha en 8 MHz extern klocksignal. Adafruit har en lösning https://github.com/adafruit/ArduinoISP
Fördelen är att min MCU kommer endast vistas i 20-25C så temperaturpåverkan blir inte så stor.
Kommer inte köra så fort då jag vill kunna gå ner till 3V i matningen.
Jo, men frågan är lite mer vad det kommer skilja mellan intern kontra extern oscillator.Janson1 skrev:Aruino har ju Atmega328 från början med 16 MHz kristall (extern) Där finns det kommando (pulseIn()) som mäter med några Micros marginal, skulle detta passa i upplösning? Jag tror den använder 16 bit timer från början.
Jag kommer inte använda ett färdigt Arduino-kort utan en 328:a med Arduino bootloader för att underlätta mina extremt dåliga programmeringsfärdigheter.
Re: Knuff i rätt riktning - extern oscillator eller ej
Om vi tar det från andra hållet. Du vill inte ha extern oscillator, då blir frågan hur exakt behöver du mäta? Om svaret är som du skrev "så exakt som möjligt" så är inte intern oscillator rätt. Men beroende på vad du ska mäta så kan det ju ändå vara tillräckligt och då slipper du extern
Sen går det väl inte att programmera om fuse för intern oscillator via Arduino bootloader utan man behöver väl en ISP-programmerare för det(vilket en Arduino kan agera som). Eller har jag fel?
Sen går det väl inte att programmera om fuse för intern oscillator via Arduino bootloader utan man behöver väl en ISP-programmerare för det(vilket en Arduino kan agera som). Eller har jag fel?
Re: Knuff i rätt riktning - extern oscillator eller ej
Isp behövs för bootloader vad jag vet. ArduinoISP gör man enkelt av en Uno eller nåt annat man har liggande. Men mål-328 behöver en klocksignal och den interna osc räknas inte, det ska vara på en pinne. Extern osc går bra likaså den sketchen jag länkadee till.
- lillahuset
- Gått bort
- Inlägg: 13969
- Blev medlem: 3 juli 2008, 08:13:14
- Ort: Norrköping
Re: Knuff i rätt riktning - extern oscillator eller ej
Det enkla svaret är att du ska använda intern oscillator med extern kristall om du vill att hastigheten ska vara någorlunda förutsägbar. Det finns numera ganska bra keramiska resonatorer som kan vara ett alternativ eftersom de oftast är billigare och alltid (?) stöttåligare.
Om det räcker att processorn "sprattlar" kan du nöja dig med RC-oscillatorn. Har du extrema krav eller en lämplig klocksignal tillgänglig använder du extern klocka.
Om det räcker att processorn "sprattlar" kan du nöja dig med RC-oscillatorn. Har du extrema krav eller en lämplig klocksignal tillgänglig använder du extern klocka.
Re: Knuff i rätt riktning - extern oscillator eller ej
Intressant. Jag visste inte att den diffade så mycket. Men jag har inte brytt mig om att läsa databladet där dock.Glattnos skrev:Här är en mycket bra video:
- Klas-Kenny
- Inlägg: 11292
- Blev medlem: 17 maj 2010, 19:06:14
- Ort: Växjö/Alvesta
Re: Knuff i rätt riktning - extern oscillator eller ej
Vad gäller precision i inbyggda oscillatorn, databladet specat +-10% från fabrik, +-1% om man gör "User Calibration".
Så det är väl så man får räkna med att det ligger till.
Så det är väl så man får räkna med att det ligger till.
- Magnus_K
- EF Sponsor
- Inlägg: 5854
- Blev medlem: 4 januari 2010, 17:53:25
- Ort: Skogen mellan Uppsala-Gävle
Re: Knuff i rätt riktning - extern oscillator eller ej
Tackar för alla bra svar. Ska stuva om lite och trycka in en kristall. Den där videosnutten fick en tänka till lite.
Hade varit kul att göra en kalibrering men finns inte utrustning för det tyvärr.
Hade varit kul att göra en kalibrering men finns inte utrustning för det tyvärr.