-         

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 15

Thema: Problem mit Quarz und Atmega8

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    01.07.2005
    Beiträge
    64

    Problem mit Quarz und Atmega8

    Anzeige

    Hallo,

    vorab, ich bin noch ein blutiger Anfänger in Sachen Microkontroller und versteh deshalb auch noch nicht soviel davon. Jedenfalls hab ich mal versucht einen externen Quarz(16MHz) an meinen Atmega8 anzuschließen. Nachdem ich dann die Fuse Bits auf 0xee gesetzt habe funktionierte mein Atmega8 nicht mehr richtig, heißt also, wenn ich versuche ihn anzusprechen kommt meistens eine Fehlermeldung. Nur selten wird der Atmega8 von UISP erkannt. Die Quarzschaltung hab ich von hier übernommen (nur eben mit einem 16MHz Quarz):

    http://derjulian.net/mikrocontroller#quarz

    Kann ich irgendwie die Funktion des Quarzes überprüfen(ohne Oszillator)?
    Oder kann mit jemand sagen ob ich was falsch gemacht habe?

    Gruß
    cesupa

  2. #2
    Erfahrener Benutzer Robotik Visionär Avatar von Hubert.G
    Registriert seit
    14.10.2006
    Ort
    Pasching OÖ
    Beiträge
    6.183
    Ich weiss nicht womit du programmierst, sieht nach Bascom aus. Ändere den Wert im Fuse Bit auf 0xde und das Highbyte auf 0x89. Es ist möglich das der Quarz nicht voll schwingt. Das sollte damit verbessert werden.
    Testen kannst du den Quarz nur in einer anderen Schaltung oder mit einem Quarztester. Das sind Grundwellenquarze, da kann es bei der Frequenz schon vorkommen das einer nicht richtig schwingt.

  3. #3
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    15.08.2006
    Ort
    Budapest
    Alter
    30
    Beiträge
    563
    Hast Du nicht zufällig einen Atmega8L? Der kann nur max. 8MHz, die Version ohne L kann auch 16MHz. Details siehe Datenblatt.

  4. #4
    Benutzer Stammmitglied
    Registriert seit
    01.07.2005
    Beiträge
    64
    Okay, danke hat funktioniert. Jetzt quält mich halt nur noch das Problem mit dem programmieren bei 16 MHz, die Programme, die ich überspiele werden immer noch nicht ausgeführt. CKOPT hab ich im High Byte auch schon auf programmed geschaltet, funktioniert jedoch immer noch nicht. Habt ihr da vielleicht noch eine Lösungsidee?

    Gruß
    cesupa

  5. #5
    Erfahrener Benutzer Robotik Visionär Avatar von Hubert.G
    Registriert seit
    14.10.2006
    Ort
    Pasching OÖ
    Beiträge
    6.183
    Bist du sicher das die Programme nicht ausgeführt werden. Vielleicht läuft das ganze nur viel zu schnell. Lass doch nur mal ein LED blinken.

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    01.07.2005
    Beiträge
    64
    Also das Programm sieht so aus:

    Code:
    #include <avr/io.h>
    #define F_CPU 16000000
    
    #include <util/delay.h>
    
    unsigned char tt;
    
    int main(void)
    {
        DDRD |= (1 << PD0); // PD0 als Ausgang festlegen
        while(1) // Unendlich lang wiederholen
        {
    	tt=0;
          
    
    	PORTD |= (1 << PD0);  
    	/*
    while(tt<50)
    	{
    	_delay_ms(10);
    	tt++;
    	}
    	
    tt=0;
    
    	
    
     
    PORTD &=~(1 << PD0);
    
    while(tt<200)
    	{
    	_delay_ms(10);
    	tt++;
    	}
    */
    
        }
    return 0;
    }
    Wenn ich das richtig gemacht habe, müsste die LED aufleuchten. Blinken funktioniert auch nicht.

    Gruß
    cesupa

  7. #7
    Erfahrener Benutzer Robotik Visionär Avatar von Hubert.G
    Registriert seit
    14.10.2006
    Ort
    Pasching OÖ
    Beiträge
    6.183
    Also du musst Hardwaremässig was falsch haben, bei mir blinkt die LED.

  8. #8
    Benutzer Stammmitglied
    Registriert seit
    01.07.2005
    Beiträge
    64
    Naja, ich hab mir überlegt morgen vielleicht ein neues Board zu machen aber diesmal mit Atmega32. Werd mich wieder melden sollte es wieder nicht funktionieren. Danke fü eure Hilfe.

    Gruß
    cesupa

  9. #9
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    19.01.2006
    Ort
    Mönchengladbach
    Beiträge
    544
    Hi cesupa,
    das ist der falsche Weg, den du einschlägst. Versuch erstmal dein existierendes Board ans laufen zu bringen und steige erst auf den Mega32 um, wenn du mit dem Mega8 wirklich nichtmehr auskommst. Das dürfte i.d.R aber schon einige Monate dauern, da der Mega8 zum experimentieren optimal ist. Kontrollier einfach mal, ob deine Schaltung eigentlich richtig ist und ob dein Board nicht irgendwelche Fehler hat.

    Gruß,
    SIGINT

  10. #10
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    02.07.2004
    Ort
    Mammendorf
    Alter
    61
    Beiträge
    1.058
    Hallo cesupa

    Um die Scheu vor dem Mikrocontroller zu verlieren und die enormen Möglichkeiten im Modellbau zu realisieren gibt es im Forum www.rcline.de einen "Einsteiger-Thread"" Wenn du die Beiträge dort siehst haben viele den Zugang geschafft weil sie in ganz kleinen Schritten angefangen haben und dabei durch Erfolgserlebnisse die Motivation zum Weitermachen fanden. Ich empfehle dir wie dort beschrieben vorzugehen, die Testprogramme auszuprobieren und dann diese weiter verändern.

    Ich kann SIGNT nur bestätigen und dir ebenfalls versichern das die Möglichkeiten des mega8 längere Zeit ausreichen viele Träume zu realisieren. Auch findest du dort rege Unterstützung bei Problemen von Mitgliedern die den Lernvorgang bereits selber durchlaufen haben und auch von Torsten selber.

    Ich will dich damit keinesfalls weg von diesem Forum lotsen, ichsehe es nur als sehr guten Zwischenschritt bis wir alle hier von deinen Erfahrungen und Ideen profitieren werden.
    MfG

    Hellmut

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •