Forum: Mikrocontroller und Digitale Elektronik ATMEGA32 16MHz Fusebits richtig setzen?!


von Marc (Gast)


Angehängte Dateien:

Lesenswert?

Hallo alle miteinerander,

ich habe eine ATMEGA32 auf einem selbstgebauten Board. Dort ist ein 
16MHz Quartz mit 2 Kondensatoren 22pF angeschlossen. Ich habe die 
aktuellen Fusebits wie in meinem Bild gezeigt eingetellt.

Ich habe nun folgendes Programm:



$regfile = "m32def.dat"
$framesize = 32
$swstack = 32
$hwstack = 32
$crystal = 16000000
$prog &HFF , &HEF , &HD9 , &H00                             ' generated. 
Take care that the chip supports all fuse bytes.
$baud = 9600

Config Portc.0 = Output
Config Portc.1 = Output

Config Pind.7 = Input
Portd.7 = 1


Do
  If Pind.7 = 1 Then
    Portc.0 = 0
    Portc.1 = 0
  Else

    Portc.0 = 0
    Portc.1 = 1
    Waitms 1000
    Portc.0 = 1
    Portc.1 = 0
    Waitms 1000
  End If
  Wait 1
Loop

End
--------------------------------------------------------

Es sollten nun bei drücken das Schalters beide LED´s gleichzeitig lang 
blinken.

Jetzt habe ich folgende Probleme:
1. Es dauert recht lange, bis die LED anfangen zu blinken, bei 
betätigung des Schalters.

2. Die LED´s blinken unterschiedlich lang! die eine genau 1Sek und die 
anderen ca. 1,9Sek.

Wodran kann es liegen?! Habe die die Fusebits richtig eingestellt?! Im 
Code ist auch auf 16MHz umgestellt.

Hoffe mir kann einer helfen und schon vielen Dank!

von Marc (Gast)


Lesenswert?

Ergänzung: Die unsynchronität wurde beseitigt!  Kam durch das "Wait 1" 
im Quellcode.
Dann bleibt eigentlich nur noch die Frage, ob die Fusebits richtig 
eingestellt sind, für externen 16MHz Takt

von meiner einer (Gast)


Lesenswert?

Mein Tipp: Stelle doch einfach die Fusebits für 16MHz mit ext. Quartz 
ein.

von Jonathan M. (jona)


Lesenswert?

Hi,
Das kannst du ganz leicht selber überprüfen,indem du ins Datenblatt 
unter
dem Punkt "System Clock and Clock Options" schaust.Link:
http://www.atmel.com/Images/doc2503.pdf

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.