- 12V Akku mit 280 Ah bauen         
Seite 5 von 5 ErsteErste ... 345
Ergebnis 41 bis 50 von 50

Thema: ATMEGA644 Programmieren

  1. #41
    Benutzer Stammmitglied
    Registriert seit
    23.03.2007
    Beiträge
    38
    Anzeige

    E-Bike
    Also wenn keinen andere quartz vorhanden ist wurde ich mit den kondensatore experimentieren: die sollen im bereich 12-22p liegen.

    Das datenblatt (februar 2007) sagt
    The frequency ranges are preliminary values. Actual values are TBD.
    aber ich nehme an der obere grenze ist 20MHz wenn es einen ATmega644-20 ist. Trotzdem wurde ich in diesen fall mal versuchen mit einen langsameren quartz.

    Wenn doch einen falsche takt quelle im CKSEL fuses steht kann man auch versuchen einen 1MHz takt an zu bieten am XTAL1 pin.

    Martin.

  2. #42
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    31.07.2005
    Beiträge
    224
    Ich hab noch einen mit 4Mhz gefunden, aber hier erstmal die meldung die ich von dem "Burn-O-Mat" krieg:
    Code:
    C:\WinAVR\bin\avrdude.exe -q -u -C C:\WinAVR\bin\avrdude.conf -p m644 -P lpt1 -c ISP -E noreset,novcc  -U efuse:w:0xFF:m -U hfuse:w:0x99:m -U lfuse:w:0x62:m 
    
    avrdude.exe: AVR device initialized and ready to accept instructions
    avrdude.exe: Device signature = 0x000102
    avrdude.exe: Expected signature for ATMEGA644 is 1E 96 09
                 Double check chip, or use -F to override this check.
    
    avrdude.exe done.  Thank you.
    Also finden tut er den AVR. Nur halt programmieren lässt er sich nicht...
    Ich hab mal ein Bild von den Fuses angehängt, bitte auch den von mir rot makierten kasten unten beachten, wo steht das Fuses mit Häckchen=0 und ohne Häckchen=1 sind (Hab ich auf jeden Fall so verstanden, weil dahinter Bit=0/1 steht) Angenommen das hätte ich falsch verstanden, wäre er dann noch zu retten?
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken fuses.png  

  3. #43
    Benutzer Stammmitglied
    Registriert seit
    23.03.2007
    Beiträge
    38
    Die meldung ist also mit den 20MHz quartz gemacht?

    Device signature = 0x000102
    weist meinen meinung nach auf störungen in der ISP signale. Kann man bei avrdude die ISP geschwindigkeit ändern? Ist der ISP flachband kabel zu lang?

    Das Bild von den Fuses sieht gut aus, Fuses mit Häckchen=0 stimmt. Wenn die so in den AVR geschickt sind steht CKSEL3..0 auf 0111 und ich meine immer noch dass ist correct . In diesen zustand läuft der AVR mit 0.4MHz bis 20MHz und mit CKDIV8 auf 1 wird dieser frequenz nicht geteilt. Versuche doch mal mit den 4MHz quartz.

    Wenn die CKSEL3..0 invertiert wurden stehen die auf 1000 was bedeutet dass der AVR einen 400kHz - 900kHz resonator erwartet, ohne Kondensatore. In zum beispiel IR fernbedienungen werden 455kHz resonatore verwendet, kann man auch versuchen. Allerdings muss dan avrdude auf einen langsamere ISP geschwindigkeit arbeiten, etwa 100kHz?

    Martin.

  4. #44
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    31.07.2005
    Beiträge
    224
    Hmm aber das komische ist ja das es direkt nach dem ändern der fuses nicht mehr geklappt hat, davor gings ja. Ich werd ma den 4 Mhz einbauen

  5. #45
    Benutzer Stammmitglied
    Registriert seit
    23.03.2007
    Beiträge
    38
    Bevor dem ändern der fuses wurde der quartz gar nicht benutzt: der AVR lief auf internen takt. Wenn mann durch ändern der fuses umschaltet und der neue takt läuft nicht: probleme!

    Martin.

  6. #46
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    31.07.2005
    Beiträge
    224
    Ohhhhh ein leises Glücksstöhnen, er funktioniert wieder. Was soll ich jetzt machen? Alle auf Standart setzen und den externen Quarz entfernen? Is mir jetzt sowieso am liebsten, wenn er alles auf Standart hat läuft er ja über den internen ne?

    EDIT: Hab ihm jetzt alles auf Standart mit den Fuses, kann ich den externen jetzt ablöten?
    Hab ma die Fuses wo wie se jetzt sind dran gehängt
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken fuses_112.png  

  7. #47
    Benutzer Stammmitglied
    Registriert seit
    23.03.2007
    Beiträge
    38
    Den externen jetzt ablöten ist ok, fuses sind richtig für internen takt: 8MHz durch 8 ist 1MHz.

    Wenn das LCD an PORTC angeschlossen ist: PORTC bits 2 bis 5 sind jetzt reserviert für JTAG. Bitte der JTAGEN fuse unchecked machen (oder im programm das JTD bit im MCUCR register 1 machen), erst dann functionieren alle I/O functionen auf PORTC und bekommt das LCD richtige daten.

    Martin.

  8. #48
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    31.07.2005
    Beiträge
    224
    Aso na dann is das mit dem LCD ja logisch, wenn ich CKDIV8 unprogrammed mache sinds 8Mhz auf dem er läuft oder?

  9. #49
    Benutzer Stammmitglied
    Registriert seit
    23.03.2007
    Beiträge
    38
    8MHz geht nür wenn im LCD programm die delays auf 8MHz takt berechnet wurden, ich kann dass naturlich nicht sehen . Versuche das bitte erst mal mit 1MHz.

    Martin.

  10. #50
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    31.07.2005
    Beiträge
    224
    So das mit dem Display klappt bisher ganz gut, ich schalt dann jetzt ma auf 8 Mhz

    EDIT: Klappt auch! Danke an alle die mir geholfen haben (auch wenns eine sehr schwere geburt war )

Seite 5 von 5 ErsteErste ... 345

Berechtigungen

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

Solar Speicher und Akkus Tests