Im AVR Studio 16MHz simulieren

OP #1075647
Lesenswert?

Hi,
da ich in meinem Layout mit einem externen Quarz von 16MHz und dem 
ATMega16 arbeite, würde ich das auch gerne simulieren.
Das ist vorallem wichtig für das einstellen und berechnen der Timer.

Es geht zwar unter den Simulator Optionen eine Frequenz von 16MHz per 
Hand einzustellen. (16MHz steht nicht im Dropdown Menü) Leider scheint 
es aber, zumindest auf die Timer in der Simualtion, keine Auswirkung zu 
haben.
Bei einem Vorteiler von 256 einem Takt von 16MHz sollten 3125 Takte 
genau 50ms sein. Leider sagt der Simulator aber das es ca. 1sec ist, was 
einem Takt von 8MHz entspechen würde.

Außerdem würde mich noch intressieren was ich bei den Fusebits 
einstellen muss für einen 16MHz Quarz, denn ich habe anscheinden die 
Auswahl zwischen low-, middle- und high-freuqenzy crystal.

Gruß Sebastian
#1075657
Lesenswert?

Hallo,

> Bei einem Vorteiler von 256 einem Takt von 16MHz sollten 3125 Takte
> genau 50ms sein. Leider sagt der Simulator aber das es ca. 1sec ist, was
> einem Takt von 8MHz entspechen würde.
Passt wohl schon rein rechnerisch nicht, wenn es bei 16MHz 50ms sein 
sollen wären es bei 8MHz 100ms aber nicht 1s...
>
> Außerdem würde mich noch intressieren was ich bei den Fusebits
> einstellen muss für einen 16MHz Quarz, denn ich habe anscheinden die
> Auswahl zwischen low-, middle- und high-freuqenzy crystal.

Das Datenblatt des Mega gibt dazu brauchbare Auskünfte, was Atmel mit 
low- middle oder high-frequency meint. :-)

Gruß aus Berlin
Michael
OP #1075795
Lesenswert?

Sry, ich meinte natürlich 100ms.

Also aus dem Datenblatt finde ich nicht direkt was dazu, aber ich hab 
mir mit google, büchern und zusammen mit dem datenblatt mir das jetzt so 
vorgestellt.

Ich nutze einen 16MHz externen Quars, also sollte ich CKOPT auf 0 
setzten bzw bei AVR Studio einen Hackan rein machen. CKSEL0 zuammen mit 
SUT0 und SUT1 geben die Startzeit und Zusatzdelay an für 16K CK und 65ms 
wäre das dann das Bitmuster 111, allerdings denke ich nicht das ich noch 
zustätzlich 65ms brauche, 4ms würden auch reichen, was dann dem 
Bitmuster 110 entspricht bei CKSEL0 1.Bit, SUT0 2.Bit und SUT1. 3. Bit. 
Ich weiß das die im LOW Fusebit Register allerdings anders angeordnet 
sind.

Ich denke mir jetzt das CLKSEL3 bis CLKSEL1 für die Unterscheidnung von 
low-, middle- und high-frequenzy crystals ist. Allerdings steht im 
Datenblatt nichts dazu wie sich das für CKOPT0 verhält sondern nur für 
CKOPT 1.

Für meinen 16Mhz Quarz mit 16K CK und 4ms Zusatzdelay wäre das dann das 
LOW-Fusebit Muster 0b00101111, wobei die Reihenfolge der Bits von rechts 
nach links CLKSEL0 bis CLKSEL3 ist und dann die Bits SUT0 und SUT1 
kommen.

Gruß Sebastian
Gast #1078901
Lesenswert?

Hallo,

also bei mir (AVR Studio 4.13 SP2) wird der Mega16 auch mit Fequenzen 
oberhalb von 8MHz richtig simuliert. Außerdem wird die von Hand 
eingegebene Fequenz ins DropDown-Feld aufgenommen.

Über die Startverzögerung würde ich mir nicht den Kopf zerbrechen, es 
sei denn du hast die paar Millisekunden nicht. Hauptsache er steht auf 
'ext./High'.

Sascha
Gast #1078927
Lesenswert?

Hi

So richtig verstehe ich dein Problem nicht. Wenn du AVR-Studio benutzt, 
brauchst du die einzelnen Bits nicht. Der 'Programmer' des AVR-Studios 
lässt sich übrigens auch Offline (ohne angeschlossenen Programmer) 
öffnen.
Da kannst du mit den Einstellungen experementieren. Die Werte für High- 
und Lowfusebyte werden angezeigt.

MfG Spess
OP #1078969
Lesenswert?

Das sind 2 getrennte Probleme, obwohl ich im Simulator 16Mhz eingestellt 
habe, dauert der Interrupt länger als errechnet.

16Mhz - Teiler von 256 - 3125 Takte - 50ms
leider dauert der Interrupt im Simualtor 100ms.

Das zweite Problem ist, daß mir geraten wurde im Datenblatt des ATMega16 
nachzusehen was es mit High-,Middle- und Low-Freq Einstellungen auf sich 
hat. Ich hab vermutet CLKSEL3 bis CLKSEL1 für diese Einstellung 
zuständig ist, hab aber leider da nicht im Datenblatt gefunden, nur für 
CKOPT 1 und bei mir es es ja CKOPT 0.

Gruß Sebastian
Gast #1079019
Lesenswert?

Hi

>Beim mega644 steht im Prog-Fenster der Fuses sogar die Frequenz mit
>drin!

Die Texte für das Prog-Fenster sind in den XML-Dateien im Ordner 
'Partdescriptionfiles' enthalten. Leider ist die 'Qualität' dieser Files 
nicht einheitlich. Da der ATMega16 wahrscheinlich schon auf der Liste 
der potentiellen Abschusskandidaten steht wird sich daran auch nichts 
ändern.

MfG Spess

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren