Hallo,
im Moment könnt ich echt durchdrehen .
Ich hab heute versucht die Fusebits vom uC so zu verstellen das mein 4Mhz-Quarz läuft.
Nun hab ich da was verstellt und der uC ist versaut^^.
Ich fang mal ganz von vorn an:
Auf der Platine ist ein Atmega168 mit 4Mhz Quarz und 2x 22pF Kerkos.
Mit dem Programm myAVR progTool hab ich die Low Fuse auf "Ext. Low-Freq. Crystal; Start-up time PWRDOWN/RESET: 32K CK/14 CK +65ms" gestellt. Bei meinem Pech funktioniert nun nix mehr . So wirklich hab ich das ganze auch nicht verstanden.
Nun probier ich mithilfe eines Atmega8 den 168er zu reanimieren . An XTAL1 liegt ein Kontakt vom m8.
Folgende Frequenzen hab ich schon ausprobiert: 31,3Khz; 200Khz; 400Khz; 700Khz; 1,4Mhz
Die Frequenz vom Programer wurde bei Bascom sogar schon auf 1kHz gestellt.
..ich weiß absolut nicht weiter !
Danke im Vorraus...
Geändert von D35troy3r (06.08.2011 um 23:52 Uhr)
Wie bekomme ich mit Bascom AVR einen Ausgang auf 1Mhz getaktet?
$regfile = "m8def.dat"
$crystal = 1000000
Config Portb.1 = Output
Do
Portb.1 = 1
Portb.1 = 0
Loop
End
Der interne RC-Oszillator liegt bei 1Mhz. Nun sollten doch am Ausgang die vollen 1Mhz anliegen?! Mit dem Multimeter mess ich aber nur 167.1kHz
So wie es aussieht braucht die Schleife 6 Taktzyklen. Das ist eigentlich gar nicht so schlecht. Für den anderen µC kann das von der Geschwindigkeit reichen, aber Takt ist unsymmetrisch , vermutlich 2 Zyklen H und 4 Zyklen L. Das könnte für den anderen µC ein Problem sein. Symmetrisch könnte man es bekommen wenn man zwischen den beiden Portb.1= Befehlen noch einen Befehl wie Portb.2=0 einfügt, einfach als Verzögerung. Der takt wäre dann nur 125 kHz, aber immerhin symmetrisch.
Den Takt des internen RC Oszillaors bekommt man bei Mega8 gar nicht nach außen. Das ist einfach nicht vorgesehen. Über die USART (syncroner Mode) und PWM könnte man ggf. den halben Takt ausgeben.
Hab das gleich mal ausprobiert. Der uC gibt mir keine Antwort .
Frequenz liegt nun bei 125.4kHz. Wieso springt der Chip nichtmehr an? 125kHz sollten doch schon reichen oder nicht?
Nachdem ich die FB vom m8 auf int. 8Mhz gestellt hab bekomm ich etwa 1.045Mhz am Ausgang.
Immernoch keine Antwort vom uC...
Geändert von D35troy3r (07.08.2011 um 13:55 Uhr)
Weitere Fragen:
1. Welchen Programmer verwendest Du?
2. Wie ist die genaue vorgehensweise nach dem Anlegen des Taktes?
MfG
Rone
Ich verwende den myAVR.
Takt und ISP sind angeschlossen, uC´s bekommen Spannung. Dann probier ich einmal mit myavr Progtool den uC zu finden, danach nochmal mit Bascom.
Beide Programme finden den Controller nichtmehr.
Eben hab ich einen Quarzoszillator 1Mhz gefunden. Direkt angeschlossen...erfolglos.
Erster Erfolg!
Hab den 1Mhz Takt vom Quarzoszillator an XTAL2 angelegt. Der uC läuft extrem langsam seine Arbeitsschritte ab (LED´s leuchten der Reihenfolge auf wie programmiert). Über ISP konnt ich noch keine Verbindung schaffen
Hallo,
vieleicht hilft das noch etwas weiter - RSRTDISBL oder SPIEN vielleicht verstellt.
http://www.wiki.elektronik-projekt.d...sebit_tutorial
An den beiden dürfte nichts verstellt worden sein, ich hab jediglich nur die Fusebits für die Taktquelle geändert.
Bascom gibt mir manchmal die Meldung zurück das es nicht der uC ist der unter $regfile = "m168def.dat" " steht. Diese Meldung kommt eigentlich nur wenn er etwas findet ..mh
Lesezeichen