- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 14

Thema: ATMEGA32 gegen ATMEGA644 tauschen

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    20.01.2008
    Beiträge
    40

    ATMEGA32 gegen ATMEGA644 tauschen

    Anzeige

    Praxistest und DIY Projekte
    Hallo,

    habe versucht auf meinem Roboter Board RNBFRA v.1.22 den darauf befindlichen ATMEGA32 gegen einen ATMEGA644 zu tauschen. Die Pinbelegung ist ja bei beiden Chips gleich und der Mega644 hat das doppelte an Speicher etc. Allerdings kam beim proggen die Fehlermeldung, dass der Chip darauf nicht erkennbar ist.

    Meine Fragen:

    - Benötigt der Mega644 einen anderen Vorwiederstand als der Mega32?
    - wenn ja, wie kann ich den Wiederstand auf dem Board finden und gegen welchen muss ich ihn austauschen?
    - wenn nein, was könnte noch die Ursache sein, dass der Chip nicht funktioniert?

    Vielen Dank schon mal für Eure Replys.

    Gruß
    Euer Sascha.

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    22.05.2005
    Ort
    12°29´ O, 48°38´ N
    Beiträge
    2.731
    Hallo,

    den Mega32 kann man soweit ohne Probleme gegen den Mega644 tauschen, hab auf dem RN-Control auch schon den Mega644p laufen.
    Man braucht nur ein passendes Programm um den zu flashen, das diesen auch kennt.

    Welches Prog verwendest Du zum flashen ?
    Evtl. liegts auch noch daran, wenn er neu ist läuft der nur mit 1MHz, und zu langsam für das Prog

    Was willst du mit dem "Wiederstand" ?
    Ein AVR hat/braucht/will keinen Vorwiderstand

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    20.01.2008
    Beiträge
    40
    Hallo Linux_80,
    vielen Dank für die Infos. Dachte nur ein Chip braucht einen Vorwiederstand. Verwende Bascom AVR zum flashen des Chips. Da kann man den m644 auch auswählen und als regfile m644def.dat im code angeben.
    der Programmkopf sieht bei mir momentan so aus:
    Code:
    $regfile = "m644def.dat"
    $crystal = 8000000
    $baud = 9600
    $hwstack = 64
    $swstack = 128
    $framesize = 64
    Wenn der im neuzustand (also ohne fusebitskonfiguration - ohne external clock) auf 1 MHz läuft, muss ich wohl die Angabe mit $crystal = 8000000 auf 1000000 ändern, oder? Werde es dann heute abend mal damit versuchen.
    Vielen Dank nochmal!
    Gruß
    Sascha

  4. #4
    Benutzer Stammmitglied
    Registriert seit
    20.01.2008
    Beiträge
    40
    Hallo Linux_80,
    Habe es mit $crystal = 1000000 versucht - da kam die gleiche fehlermeldung. (siehe beigef. Bild.)
    Was steht auf Deinem Chip hinter der Bezeichnung ATMEGA644P?
    Steht da 10PU oder 20PU?
    Gruss
    Sascha
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken fehlernr1.jpg  

  5. #5
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    22.05.2005
    Ort
    12°29´ O, 48°38´ N
    Beiträge
    2.731
    Hallo,

    hast Du nun einen Mega644 oder den Mega644P ?
    Der 644P hat die ID:1E960A den kennt Bascom noch nicht !
    Wir haben aber schon irgendwo diese Config-Datei dazu im Forum gepostet, musst mal suchen.

    Und, ich hab die 20MHz Version, das ändert aber nix daran.

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    20.01.2008
    Beiträge
    40
    Hallo Linux,
    ja habe den mit dem p hinten dran und mit 20 mhz also ATMEGA644P 20PU
    Werde danach suchen...
    Vielen Dank für die Infos!
    Gruss
    Euer Sascha

  7. #7
    Benutzer Stammmitglied
    Registriert seit
    20.01.2008
    Beiträge
    40
    Hallo Linux_80,
    Super! es hat mit der Datei, die Du entwickelt hast, geklappt - er läuft!
    Vielen Dank an dieser stelle.
    Gruß
    Euer Sascha

  8. #8
    Benutzer Stammmitglied
    Registriert seit
    20.01.2008
    Beiträge
    40
    Habe soeben den Quarz gegen einen 20Mhz Quarz getauscht - jetzt läuft das programm mit der Angabe 20000000 aber sehr sehr langsam ab. Irgendwie hat man bei den Fusebits-Werten auch ganz andere Parameter zur Auswahl als beim ATMEGA32. Kannst Du bitte hier die Fusebits-Einstellungen als Bild vom ATMEGA644P posten?
    Vielen dank schon mal.
    Gruß
    Sascha

  9. #9
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    22.05.2005
    Ort
    12°29´ O, 48°38´ N
    Beiträge
    2.731
    Hi,

    da brauchts kein Bild,
    wenn Du nur das umgestellt hast, was Du vom M32 her kennst, läuft der nur 1/8 davon.
    Schau mal bei den Fuses nach CKDIV8, das gibts bei den neueren AVRs, und deaktivere es, dann klappts auch mit den 20MHz.

  10. #10
    Benutzer Stammmitglied
    Registriert seit
    20.01.2008
    Beiträge
    40
    Hallo Linux_80,
    Ok, Es lag am teiler durch 8 - es läuft jetzt von der geschwindigkeit her normal. Allerdings funktionieren die Befehle:
    Driveinit()
    Drivewirtesector
    und Drivereadsector der MMC-Karte nicht mehr - wenn ich den Teiler hingegen wieder aktiviere funktionieren sie wieder aber das Programm läuft sehr langsam. Kann es sein, dass der Prozessor nun "zu schnell" für mein board ist oder liegt es an etwas anderem? Ausserdem Funktioniert die Positionierung des cursor-befehls mit dem I2C-Bus nun auch nicht mehr, wenn der teiler deaktiviert ist.
    Habe mal einen Bildschirm-Ausdruck beigefügt.
    Oder kann das an der TWI-Angabe liegen - muss ich die noch ändern oder muss die so bleiben. (hab sie auch schon testweise geändert und bekam dann haufenweise fehlermeldungen... - war wohl der falsche wert.)
    Vielen Dank an dieser Stelle nochmals und viele Grüße
    Sascha
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken fusebits_f_20_mhz.jpg  

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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

LiFePO4 Speicher Test