- LiFePO4 Speicher Test         
Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 24

Thema: "Entering programming mode.. FAILED"; AVRISP MKII

  1. #11
    Benutzer Stammmitglied
    Registriert seit
    30.01.2006
    Ort
    Irgendwo im Nirgendwo
    Alter
    50
    Beiträge
    62
    Anzeige

    E-Bike
    Bist du sicher, dass beim AVR nicht die externe Clock ausgewählt ist, extern aber kein Quarz-/Oszillator dran ist? Dann müsstest du der Schaltung entweder eine externe Clock geben oder aber den µController austauschen...

    Hast du nicht mal eine andere µController-Schaltung, bei der du mal testen kannst, ob du Kontakt bekommst!?

  2. #12
    Erfahrener Benutzer Roboter Genie Avatar von m.a.r.v.i.n
    Registriert seit
    24.07.2005
    Ort
    Berlin
    Beiträge
    1.247
    Hi,

    habe bei "Auto" ein Häckchen bei "Erase Device" gesetzt
    nein, so wird das nichts. Einfach bei 'Program' auf 'Erase Device' klicken.

    Gruß m.a.r.v.i.n
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken avrstudio.jpg  

  3. #13
    Neuer Benutzer Öfters hier
    Registriert seit
    12.10.2006
    Alter
    38
    Beiträge
    15
    Ach so.

    Aber leider ändert das nichts an dem Problem: Immer noch die gleiche Fehlermeldung.

  4. #14
    Benutzer Stammmitglied
    Registriert seit
    30.01.2006
    Ort
    Irgendwo im Nirgendwo
    Alter
    50
    Beiträge
    62
    Du hast jetzt aber nur auf den letzten Post geantwortet, oder?!

  5. #15
    Neuer Benutzer Öfters hier
    Registriert seit
    12.10.2006
    Alter
    38
    Beiträge
    15
    Oh, sorry ich hatte dich glatt übersehen.

    Also ich habe einfach die Grundschaltung ohne externen Oszillator aufgebaut:
    https://www.roboternetz.de/wissen/im...ung_mitisp.gif
    Wobei ich natürlich die Pinbelegung des Steckers angepasst habe.

    Eigentlich sollte das doch laufen, da der AVR doch (soweit ich weiß) von der Fabrik her auf den internen Oszillator mit 1MHz eingestellt ist. Und umstellen kann ich den Controller ja erst garnicht, denn der will ja noch nichteinmal die Fuses auslesen.

    Ich hab jetzt auch ein ganz neues Kabel gebastelt, aber das ändert auch nichts an dem Problem. Langsam fürchte ich, dass der AVRISP einfach defekt ist. Denn der AVR ist fabrikneu und sollte deshalb ja wenigstens erkannt werden, der ISP hat die neueste Firmware, und die Kontroll-LEDs leuchten auch beide grün.

    Übrigends: Ich habe gerade einfach mal den AVR aus der Schaltung rausgenommen. Die Fehlermeldung war exakt die gleiche, wie die als der AVR noch in der Schaltung war. Das heißt für mich: Der ISP hat erst garnicht gemerkt, dass da überhaupt ein Controller angeklemmt war.

    Dummerweise habe ich keinen zweiten AVR hier, sonst könnte ich ja Testen, ob der erkannt wird. Falls nein müsste nämlich - was auch meine Vermutung ist - der ISP defekt sein.

  6. #16
    Neuer Benutzer Öfters hier
    Registriert seit
    12.10.2006
    Alter
    38
    Beiträge
    15
    Nach langer Zeit habe ich nochmal versucht meinen ISP ans laufen zu bekommen. Diesmal mit einem neuen mega32. Die Fehlermeldung taucht nicht mehr auf, und ich kann den Controller programmieren. Jedenfalls erhalte ich folgende Meldungen:

    Reading FLASH input file.. OK
    Setting mode and device parameters.. OK!
    Entering programming mode.. OK!
    Erasing device.. OK!
    Programming FLASH .. OK!
    Reading FLASH .. OK!
    FLASH contents is equal to file.. OK
    Leaving programming mode.. OK!

    Sieht also alles nach einem erfolgreichen Vorgang aus.

    Das einzige Problem, dass ich jetzt habe, ist das das oben genannte Programm nicht zu laufen scheint. Jedenfalls kann ich kein Flackern bei der LED feststellen. Ich habe dann mal nachgemessen (mit dem Multimeter, habe leider kein Oszilloskop) und nur feststellen können dass an allen Ports eine Ausgangsspannung von 3,8V anliegt. Ich hab dann auch mal versucht einen Port konstant auf 0xFF oder 0x00 zu legen, mit dem gleichen Ergebnis. Ich nehme an, dass das Programm erst garnicht gestartet wird, aber was mache ich falsch? Ist der Code nicht in Ordnung?

  7. #17
    Benutzer Stammmitglied
    Registriert seit
    24.05.2005
    Ort
    NRW
    Beiträge
    39
    Hallo Gandalfx86

    dein Programm schaltet sehr schnell dein Port C ein- und aus, weil du keine (Zeit)Schleife eingebaut hast. Den Wechsel wirst du mit einem Multimeter nicht erfassen können.
    Natürlich müsste das Programm dann auch auf dein Controller übertragen werden können. Probiere doch auch nochmal die Fuses auszulesen um zu sehen, ob du mit den Controller kommunizieren kannst.

    Gruß Gucky.
    Wissen ist Macht, nichts Wissen macht nichts !

  8. #18
    Neuer Benutzer Öfters hier
    Registriert seit
    12.10.2006
    Alter
    38
    Beiträge
    15
    Die Kommunikation mit dem Controller läuft ohne Probleme. Nur der Controller scheint das Programm, dass ich in den Flash lade nicht zu starten. Die Einstellung der Fuses habe ich mal angehangen.

    Ich habe jetzt mal dieses Programm verwendet:
    Code:
    .NOLIST
    .INCLUDE "m32def.inc"
    .LIST
    .CSEG
    
       
    MAIN:
       LDI R16,0b11111111
       OUT DDRA,R16
       OUT DDRB,R16
       OUT DDRC,R16
       
    LOOP:
       LDI R16,0x00
       OUT PORTA,R16
       OUT PORTB,R16
       LDI R16,0xFF
       OUT PORTC,R16
       RJMP LOOP
       
       RJMP MAIN
    Nun sollte man ja eigentlich annehmen, dass nach dem Verbinden mit dem Netzteil an den Pins von Port A und B Low-Pegel anliegen, und an Port C High-Pegel. Das Ergebnis ist aber das selbe wie vorhin: überall (nach Anzeige des Multimeters) 3,84V. Mir ist schon klar, dass ein Multimeter nicht das richtige Werkzeug dafür ist, aber da ja hier konstante Ausgangssignale anliegen sollten müsste man ja wenigstens einen Unterschied bei den B Ports und C feststellen können, was aber nicht so ist.
    Als Schaltung verwende ich im übrigen einfach die Minimalbeschaltung mit 100nF Abblockkondensator und 1K Widerstand auf einem Steckbrett aufgebaut. An der Schaltung dürfte es ja eigentlich nicht liegen.
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken fuses_2.jpg   fuses_193.jpg  

  9. #19
    Benutzer Stammmitglied
    Registriert seit
    24.05.2005
    Ort
    NRW
    Beiträge
    39
    Hallo Gandalfx86

    Dein AVRISP MKII kenne ich zwar nicht aber es wird sich hierbei auch um einen ISP-Programmieradapter handel. Ich selber benutze einen selbstgebauten, den ich mit Ponyprog2000 bediene, was aber vom Programierablauf das gleiche sein dürfte.
    Nur mit einem Multimeter an einem Prozessor zu messen ist zwar nicht so das gelbe vom Ei, aber vieleicht kann ich dir ein paar Tips geben, damit du die mögliche Fehlerquelle etwas einkreisen kannst.
    Hierzu kannst du mit dem Multimeter an den Anschlüssen 6 (MOSI), 7 (MISO), 8 (SCK) und 9 (Reset) den Pegel jeweils gegen GND messen und merken. Während der Programmübertragung sollten sich diese Pegel verändern. Besser kann man das ganze mit LED's beobachten. Hierzu habe ich die Kathode einer LED an den jeweiligen Ausgang des Controllers und die Anode über einen 1K-Widerstand nach VCC(+5V) angeschlossen.
    Nach der Programmübertragung sollte der Reset/-Pin (9) auf +5V liegen. Möglicherweise muß hier für den Normalbetrieb noch die ISP-Schnittstelle von deiner Anwendung abgezogen werden.
    Sollte alles so sein könnte es an dem Controller liegen, aber der ist ja glaube ich neu. (ATMEGA32-DIP?)
    Melde dich nochmal, auch wenn ich dir nicht weiterhelfen konnte.

    Gruß Gucky.
    Wissen ist Macht, nichts Wissen macht nichts !

  10. #20
    Neuer Benutzer Öfters hier
    Registriert seit
    12.10.2006
    Alter
    38
    Beiträge
    15
    Dein AVRISP MKII kenne ich zwar nicht aber es wird sich hierbei auch um einen ISP-Programmieradapter handel.
    ganz genau

    Hierzu kannst du mit dem Multimeter an den Anschlüssen 6 (MOSI), 7 (MISO), 8 (SCK) und 9 (Reset) den Pegel jeweils gegen GND messen und merken. Während der Programmübertragung sollten sich diese Pegel verändern. Besser kann man das ganze mit LED's beobachten. Hierzu habe ich die Kathode einer LED an den jeweiligen Ausgang des Controllers und die Anode über einen 1K-Widerstand nach VCC(+5V) angeschlossen.
    Nach der Programmübertragung sollte der Reset/-Pin (9) auf +5V liegen
    werde ich am Wochenende mal versuchen, falls ich zwischen dem Klausur-Lernen noch dazu komme(bin leider grad nicht zuhause, und kann das also nicht ausprobieren)

    Möglicherweise muß hier für den Normalbetrieb noch die ISP-Schnittstelle von deiner Anwendung abgezogen werden.
    habe ich sowieso immer gemacht, und dann von der Stromversorgung getrennt und neu verbunden

    Sollte alles so sein könnte es an dem Controller liegen, aber der ist ja glaube ich neu. (ATMEGA32-DIP?)
    fabrikneu von Reichelt (der erste, den ich verwendet hatte war ebenfalls fabrikneu, lässt sich mit meinem ISP aber erst garnicht ansprechen)

    Melde dich nochmal, auch wenn ich dir nicht weiterhelfen konnte.
    werde ich machen; vielen Dank schonmal für die Hilfe

    Wie sieht eigentlich der Flash nach den Programmieren aus? Ich hatte nämlich den Flash nach dem Programmieren mal ausgelesen, und mit der hex-Datei verglichen. Dabei kann man im oberen Teil der ausgelesenen Datei irgendwie ein paar Bruchstücke aus der Datei die vom Assembler erstellt wurde erkennen. Es kann natürlich sein dass das nur Standardcode ist der da immer steht, aber vielleicht kann man ja an der Datei sehen, ob das Programm richtig übertragen wurde. Ich habe die Dateien mal angehangen.
    Angehängte Dateien Angehängte Dateien

Seite 2 von 3 ErsteErste 123 LetzteLetzte

Berechtigungen

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

Labornetzteil AliExpress