Forum: Mikrocontroller und Digitale Elektronik Timereinstellung (geänderter Systemtakt)


von Lasse .. (lassem)


Lesenswert?

Moin,

ich habe für einen ATmega1284P als externe Taktreferenz einen 6MHz 
Crystal Quarz an XTAL1 und XTAL2 mit entsprechenden Kondensatoren 
angeschlossen. Die erste Frage wäre zu den Fusebits (bzw beim Atmel 
Studio 6.2 wähle ich ja nur aus wie der Takt ist). 6MHz heißt zwischen 
3-8MHz. Crystal heißt EXTX. Soweit also schonmal 
EXTXOSC_3MHZ_8MHZ_xxxxx_xxxx. Bei den Parametern bin ich mir nicht 
sicher, gewählt habe ich erstmal EXTXOSC_3MHZ_8MHZ_16KCK_4MS1. Die 
Bedeutung dessen ist mir bewusst, allerdings finde ich im Datenblatt des 
Quarz´ keine Angaben dazu... (Hier der Link zum Quartz: 
http://de.rs-online.com/web/p/products/6938857/)

Soweit sogut, den bekomme ich notfalls schon irgendwie zum laufen :)

Nun ist es ja so, das der Quarz den Systemtakt auf die 6MHz ändert. Wenn 
ich jetzt einen Timer folgendermaßen benutze:
1
TCCR0A = (1<<WGM01); //Timer im CTC
2
TCCR0B = (1<<CS00);  //Vorteiler auf 1
3
TIMSK0 = (1<<OCIE0A);//Compare interrupts erlauben  
4
OCR0A  = 30;       //Vergleichswert für den Timer
5
sei();               //globale Interrupts
6
DDRA   = 0xFF;       //Datenrichtung von PortA -> Ausgang
Zählt er  dann mit 6MHz? Oder muss ich den Timer irgendwie gesondert vom 
Systemtakt betrachten?

Freundliche Grüße
Lasse

von uwe (Gast)


Lesenswert?

EXTXOSC ist NICHT externer Quarz sondern externer Oszillator.
Du willst (brauchst) externer Quarz am INTERNEN Oszillator des AVR.
Bei Externem Oszillator wird auch ein externer Oszillator erwartet und 
funktioniert nicht mit einem Quarz.
Dann kannst du deinen AVR solange nicht mehr programmieren bis du einen 
externen Oszillator bzw. Takt anschließt. Du kannst dann auch die 
Fusebits nicht verändern.

von Lasse .. (lassem)


Lesenswert?

Da ist schonmal der erste Fehler! Vielen Dank.

Fällt ein externer Quarz dann unter Ext.Clock? also EXTCLK_xxxx?

Dann muss ich wohl mal gucken wo ich mir nun einen externen Takt 
herzaubere... t.t

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.