Ich versuche einen Atmega128 zu programmieren. ISP-Programmierung Zuerst habe ich AVR Dragon verwendet, ich kann die Zielspannung lesen, aber wenn ich gehe, um die Gerätesignatur zu lesen, kommt eine Warnung
Der Programmiermodus kann nicht aufgerufen werden.
Bitte überprüfen Sie die Geräteauswahl, Schnittstelleneinstellungen, Zielleistung und Verbindungen zum Zielgerät.
Ich verwende AVR Studio 6. Ich habe andere Atmega128 mit demselben AVR-Dragon programmiert, aber ich habe immer noch versucht, mit STK500 zu programmieren. Es nützt nichts, da ich die gleiche Warnung erhalten habe.
Ich habe in Google gesucht, aber ich habe keine Lösung gefunden. sCK, RESET, MOSI, MISO, VCC, Ground alle Verbindungen sind perfekt und ich habe Bypass-Kondensatoren zwischen Vcc und Masse von Atmega128 gesetzt.
Sogar ich habe den IC durch einen neuen Atmega128 ersetzt, aber das Ergebnis ist dasselbe.
Meine üblichen Schritte zur Wiederherstellung von ISP-Problemen:
Strom prüfen. Der Drache liefert keinen Strom über die Vcc-Leitung. Das Ziel muss durch seine eigene Versorgung mit Strom versorgt werden. Die Vcc-Leitung dient nur zum Messen der Zielspannung. Stellen Sie außerdem sicher, dass Sie sich im richtigen Teil des Diagramms zwischen Netzspannung und beabsichtigter Betriebsfrequenz befinden (oder Sie werden feststellen, dass Sie 16 MHz bei 3,3 V nicht erreichen können).
Stellen Sie sicher, dass Sie die richtigen SPI-Pins angeschlossen haben. Auf einigen AVR-Chips haben sie einen alternativen SPI-Port. ISP wird immer die Alternative verwenden, falls vorhanden, aber es ist nicht üblich (aber das hat mich kürzlich auf dem ATmega32M1 gebissen).
Stellen Sie sicher, dass Studio mit dem Drachen spricht (beachten Sie, dass sie jetzt auf Version 7 sind). Wenn es die Zielspannung erreichen kann, ist es wahrscheinlich in Ordnung.
Verringern Sie die Taktrate (gemäß @Rev1.0). Wenn das funktioniert, können Sie versuchen, es wieder hochzufahren und sehen, was Sie daraus machen können.
Versuchen Sie, an die Sicherungen heranzukommen. Wenn Sie so weit kommen können, nehmen Sie Ihre Einstellungen an den Sicherungen vor und Sie können wahrscheinlich loslegen.
Überprüfen Sie den SPI und sehen Sie, ob irgendetwas auf der Platine im Bus kollidieren könnte. Haben Sie einen anderen Chip im Bus, der gerne spricht, wenn er nicht sollte?
Wenn dies fehlschlägt, holen Sie das O-Scope heraus und suchen Sie nach Signalen, die auf Reset, MOSI, MISO und SCK vorhanden sind, und debuggen Sie von dort aus.
Ich musste das schon mehrmals zum Laufen bringen, aber es lag nie an einem schlechten AVR oder einem schlechten Dragon (obwohl ich vielleicht Glück habe). Normalerweise bringt sie irgendwann etwas zum Reden.
Vielen Dank für die Punkte, Informationen. Ich habe die Anschlüsse und die Stromversorgung überprüft. Alles war gut. Nur die Geräte-ID kann nicht gelesen werden, daher kann ich die Sicherungseinstellungen nicht ändern / modifizieren, auch der Atmega128-IC ist ein neuer IC. Ich habe 11,0592 MHz Quarz verwendet. Als letzte Option habe ich versucht, das Quarzsignal mit einem Oszilloskop zu überprüfen, als ich das Signal / die Frequenz bei XTAL1, XTAL2 überprüfte, fand ich, dass es Null / Masse, kein Impuls / Signal / Frequenz war. Ich habe meinen Quarz gewechselt, sogar die verwendeten Bypass-Kondensatoren. Aber es nützt nichts. Schließlich habe ich diesen atmega128 durch einen bereits verwendeten/programmierten/funktionierenden Atmega128 ersetzt. Jetzt kann ich es auf meiner gleichen Platine programmieren, mit dem gleichen Kristall und dem gleichen AVR-Drachen.
Rev