Hallo, ich habe ein Aufbau mit zwei ATMEGA328 und habe dabei seit kurzem ein Problem mit der Device Signature von einem der beiden µC. Zum Programmieren benutze ich avrdude einen Buspirate. Ich habe beide µC mit den selben Daten- und Clock-Leitungen belegt, einer bekommt das Resetsignal über den normalen Reset, einer über den aux des Buspirates. Das hat bisher auch immer alles funktioniert, nachdem ich in der avrdude.conf den ATMEGA328 korrekt hinzugefügt habe. Seit heute habe ich ein Problem. Einer der beiden µC hat eine falsche Device Signature. Nicht mehr 0x1e9514 wie es sein sollte, sondern eine 16 am Ende. Außerdem kann ich diese nur das erste mal auslesen, nachdem ich das Board mit Strom versorgt habe. Danach gibt mir avrdude immer folgenden Fehler aus: avrdude: initialization failed, rc=-2 Double check connections and try again, or use -F to override this check. mit -F kann ich den µC auch weiterhin programmieren (jedenfalls jeweils einmal nachdem ich das Board mit Strom versorgt habe) Die Fuses habe ich gecheckt, diese sind bei beiden µC die selben Defaultwerte. Was für ein Problem könnte ich hier noch haben?
Der eine Controller ist im Reset, der andere arbeitet normal. Was bedeutet arbeitet normal? Verwendet zB MISO, MOSI oder SCLK ? Und macht somit das Programmiersignal des Anderen kaputt. Ich erachte solche Sparloesungen als am falschen Ort gespart. Mach doch einfach zwei vollstaendig getrennte Programmierstecker hin
Solange der Resetpin auf High ist, tun dem µC die Daten an den ISP-pins doch nicht weh. ich habe mich an folgende Anleitung gehalten: http://hintshop.ludvig.co.nz/show/buspirate-avr-programming/ Der Grund warum ich das so gemacht habe ist Platzmangel auf dem Board. Einen zweiten Stecker konnte ich nicht tolerieren. Ich könnte natürlich noch an kleinere Stecker gehen, aber eigentlich dachte ich, dass diese Lösung funktionieren sollte.
Wenn der Reset Pin auf tief ist, ist der Controller im Programmier mode. Der andere Controller ist aber nicht im Programmier Mode, sondern im Run Mode. Und dort duerfen die MISO, MOSI und SCLK Pins machen was sie wollen, resp sollen. Was stoeren kann, wenn sie mit den MISO, MOSI und SCLK des zu programmierenden Controllers zusammenhaengen. Bezueglich des Programmiersteckers ... Man kann sich immer eine abgespeckte, oder verkleinerte Version vorstellen. Allenfalls wuerden auch Nadeladapter auf Pins genuegen...
Vielen Dank, das war der entscheidenden Hinweis!! Und ich weiß, es ist nicht perfekt mit dem Programmieren, wie ich es jetzt mache, ich werde auch in Zukunft versuchen es besser zu machen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.