-         

Ergebnis 1 bis 10 von 10

Thema: An ATmega32 Lockbits verstellt, Hilfe!

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.08.2006
    Ort
    Datteln
    Alter
    30
    Beiträge
    149

    An ATmega32 Lockbits verstellt, Hilfe!

    Anzeige

    Guten Abend zusammen.

    Vor paar Tagen hatte ich mein AVR-Board mit einer RS-232-Schnittstelle erweitert. Dabei ist mir eine Leitung am ISP-Dongle abgebrochen. Am Ende vergaß ich sie wieder dran zulöten und habe einfach drauf losprogrammiert. Natürlich klapte das nicht! Als ich bemerkte, dass die Leitung lose war, lötete ich sie wieder dran, aber die Programmierung klapte immer noch nicht. Dann hatte ich versucht den EEPROM auszulesen, und es sind immer wieder verschiedene Daten rausgekommen. Später bemerkte ich, dass sich die Lock- und Fusebits verstellt hatten.

    Die Lockbits sollen laut Datenblatt alle auf No... eingestellt sein.

    Hier im Forum habe ich gelesen, dass die Lockbits nach einer vollständiger Löschung zurück gesetzt werden müssen. Allerdings geht das bei mir nicht.
    Außerdem habe ich noch gelesen, dass man den µC mit einem Parallelem Programmer fast immer zum Leben erwecken kann.

    Ist es in meinem Fall irgendwie möglich den µC wieder zu retten?

    Ich habe leider nur den einen ATmega32.
    Wäre euch ewig Dankbar.
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken lock-_und_fusebits.jpg  

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    11.04.2005
    Beiträge
    1.469
    Hi,
    stimmt, mit einem Chip Erase löscht man auch die Lockbits.
    Scheint, du hast ein anderes Problem und die Kommunikation geht nicht mehr richtig und es wird irgendein Quatsch ausgelesen.
    (zumindest macht das AVR-Studio das so )
    Also ist die Anzeige der Lockbits eventuell auch falsch.

    Bist du sicher, daß dein Quarz schwingt , der richtige Chip angewählt ist etc.?

    Gruß
    Christopher

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.08.2006
    Ort
    Datteln
    Alter
    30
    Beiträge
    149
    Ich habe einfach einen externen Takt an XTAL1 gelegt (Ohne den Quarz dabei zu entfernen). Und tatsächlich waren die Lockbits beim auslesen alle No... . Ich konnte sogar ein Programm übertragen, aber das Programm funktionierte nicht ganz richtig. Die LED blinkte unregelmäßig, obwohl sie das regelmäßig tun soll. Dann fing ATmega wieder an zu spinnen.

    Beeinflusst vielleicht der Quarz den externen Takt?

    Beim ersten Auslesen der Fuses mit dem ext. Takt war der Fuse A987 richtig auf den Quarz eingestellt! (Wurde dieser Fuse vielleicht falsch ausgelesen).

    Muss ich den Quarz vorher heraus löten und dann den ext. Takt anlegen?

    Es wäre wirklich toll, wenn ich mit dem µC weiter machen könnte, denn ich habe noch kein einziges Gerät dadrin (ADC, Timer, …) ausprobiert. Aber so ziemlich viele Probleme schon gehabt!?

  4. #4
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.08.2006
    Ort
    Datteln
    Alter
    30
    Beiträge
    149
    Hallo wieder mal.

    Ich habe heute Zeit gehabt, mich mit meinem AVR-Board zu beschäftigen und konnte den Quarz (die Verbindung zw. einem Beinchen des Quarzes und dem Pin.XTAL1) von meinem µC trennen.
    Anschließend habe ich an XTAL1 einen externen Takt angelegt und konnte den µC primer Programmieren. Alles funktionierte super!
    Aber, als ich wieder den Quarz an den µC dran gelötet habe, funktionierte alles nicht mehr!? Der Fusebit ist richtig eingestellt.

    - Sind vielleicht der 16MHz Quarz oder die 22 pF Kondensatoren kaputt?
    - Kann ich bedenkenlos die Signale an den Pins XTAL1 u. XTAL2 mit einem Oszi (max. 20 MHz, 300 Vss) messen?
    - Oder soll ich einfach einen 4 MHz Quarz nehmen?!

    Das Problem ist, dass ich als ext. Oszillator eine Astabile Kippstufe mit einem NE555-Timer nutze. Und da ist die Frequenz nicht so genau.

    Hoffentlich kann mir einer von euch helfen.

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.08.2006
    Ort
    Datteln
    Alter
    30
    Beiträge
    149
    Hallo allerseits.

    Ich habe mich heute entschieden diesen Thread abzuschließen,
    da ich ja die Lockbits zurückstellen konnte.

    Allerdings habe ich weiterhin Probleme mit meinem ATmega32.
    Wahrscheinlich wurden nicht nur die Lockbits verstellt, sondern
    auch was anderes!?

    Danke für die Unterstützung.

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    14.05.2008
    Beiträge
    18

    Konnte meinen ATMage16 retten ! Fusebit A987

    Ich habe blöderweise mal mit den Fusebit A987 rumgespielt, da ich nen
    Quarz mit rangehängt habe. Alles funktioniert auch super.

    In einem Tutorial sollte ich einfach auf 1111:1111 einstellen. Da ich aber schrecklich neugierig bin und wissen wollte was die anderen zu bedeuten haben, habe ich einfach mal einen anderen gewählt.

    Naja... Bascom erkannte meinen ATMega nicht mehr Habs dann auch mit mehrmaligen Reset versucht und mit PonnyPong oder so.
    Nix hat funktioniert !!!

    Habe mich dann damit abgefunden das der Chip im Arsc... ist und einen ersatz besorgt. Zum Glück sind die da nicht so teuer


    Dann habe ich zufällig im Internet gefunden das man einen Quarz und nen Ossi benutzen kann. Bei dem Quart benötigts du XTAL1 und XTAL2.
    Und mein Ossi nur den XTAL1 und natürlich die Masse.

    Also dachte ich mir einfach mit dem neuen ATMega auf Porta.0 mit einer Schleife und toggle porta.0 den Pin schnell ein und aus zu schalten.

    Habe dann den defekten ATMega in den Sockel gesteckt und mit 4 Dräten VCC, GND (linke seite), GND (rechte seite) und XTAL1 mit dem neuen ATMega angeschalossen. Dabei VCC und GND einz zu einz gelassen und nur porta.0 mit dem XTAL1 verbunden.

    Habe also den neuen ATMega als ossi benutzt. Hatte etwas Sorgen weil Spannung widerstand und und und. Aber es funktionierte und Bascom erkanne den alten ATMEGA. Habe schnell die Fusebit A987 wieder auf Intern 8 Mhz gestellt und den Strom wieder abgestellt.

    Beide ATMega funktionieren wunderbar

    Hoffe jemanden damit helfen zu können !

    Gruß

  7. #7
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    26.05.2007
    Beiträge
    594
    Es gibt einige Möglichkeiten, sich aus dem Chip "auszusperren"...
    - RESET-Pin als I/O definieren - ab da braucht man dann nen HV-Progger :-P
    - ISP-Ausstellen - nicht wirklich sinnvoll, erlaubt PoyProg auch nicht
    - Anstelle eines externen Quarz Resonator einstellen - da muss man sich dann so ein Dreibein besorgen und kurz dranhalten beim Proggen

  8. #8
    Benutzer Stammmitglied
    Registriert seit
    26.06.2008
    Alter
    27
    Beiträge
    59
    Hi
    ich möchte hier nun weiterführen, da ich wahrscheinlich das selbe Problem habe,und nicht noch ein Thema aufmachen will. als ich meinen ATMEGA32 Programmieren wollte, kam plötzlich die Meldung "Could not identify(...)"
    Ich denke mir hats irgendwie (ich hab nichts gemacht) die fuse/lock bits verstellt. hab die Lösung von Sven1277 mit einem atmega 8 versucht, aber es kommt immernoch die gleiche Meldung.
    Folgender Code auf dem Mega8:

    Code:
    $regfile = "m8def.dat"
    $framesize = 32
    $swstack = 32
    $hwstack = 32
    $crystal = 8000000
    $baud = 9600
    
    Config Portb.0 = Output
    
    Dim I As Integer
    
    Do
       For I = 1 To 20
       Toggle Portb.0
       Waitms 1
       Next I
    Loop
    Testweise eine LED angeschlossen, diese leuchtet auch, flimmern ist keins zu erkennen. sollte so doch aber funktionieren oder hab ich was falsch gemacht? Habe es mit und ohne "Waitms 1" versucht.

  9. #9
    Erfahrener Benutzer Robotik Einstein Avatar von Dirk
    Registriert seit
    30.04.2004
    Ort
    NRW
    Beiträge
    3.791
    Hallo BurY,

    was erwartest du denn von einer LED, die mit 1ms (d.h. einer Tausendstel Sekunde) an- und ausgeschaltet wird?

    Wie wäre es, wenn du es mit Waitms 500 probierst? Da blinkt es richtig.

    Gruß Dirk

  10. #10
    Benutzer Stammmitglied
    Registriert seit
    26.06.2008
    Alter
    27
    Beiträge
    59
    ja, stimmt schon, ich dachte mach könnte ein flimmern erkennen. aber eigentlich gehts es ja garnicht um die led sondern darum den Mega8 als taktgeber zu verwenden und den Mega32 wiederzubeleben

Berechtigungen

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