Fragen zum ISP-Programmer

OP #1154885
Lesenswert?

Hallo,

ich habe zwei Fragen zum ISP-Programmieren.
1. Muss die Schaltung mit Strom versorgt werden? Also VCC für 
Mikrocontroller?
2. Muss der MOSI-Anschluss von µC auch zum MOSI-Anschluss vom 
ISP-Programmer? oder ist das wie bei RS232 Rx/Tx kreuzen?

gruß

michi
#1154891
Lesenswert?

Michael S. wrote:

> ich habe zwei Fragen zum ISP-Programmieren.
> 1. Muss die Schaltung mit Strom versorgt werden? Also VCC für
> Mikrocontroller?

Wer die Spannung liefert, ist eigentlich egal, Hauptsache, es ist eine 
vorhanden. Also im Regelfall einfach die Platine an der Stromversorgung 
lassen.

> 2. Muss der MOSI-Anschluss von µC auch zum MOSI-Anschluss vom
> ISP-Programmer? oder ist das wie bei RS232 Rx/Tx kreuzen?

Nein, MOSI auf MOSI, MISO auf MISO usw.
#1154907
Lesenswert?

Auszug aus "Wichtige Regeln - erst lesen, dann posten":
> Im Betreff angeben um welchen Controllertyp es geht (AVR, PIC, ...)

Falls es um AVRs geht, hat Daniel das ganze schon richtig beschrieben. 
Die Zielhardware benötigt generell eine eigene Spannungsversorgung.

MISO heißt "Master In Slave Out" und MOSI "Master Out Slave In", und 
Master und Slave sind klar definiert (und an beiden Enden der Leitung 
gleich), weshalb selbstverständlich alle MISOs miteinander verbunden 
werden müssen (gleiches gilt für die MOSIs).
OP #1160901
Lesenswert?

Ich will im Moment meinen atmega8 zum ersten mal ansprechen.
Ich hab mir diesen ISP-Programmierer zusammengebaut: 
http://rumil.de/hardware/avrisp.html

Wenn ich jetzt mit AVR8 BurnOMat z.b. die Fuses auslesen will, kommt 
immer folgende Meldung:

avrdude.exe: AVR device not responding
avrdude.exe: initialization failed, rc=-1
             Double check connections and try again, or use -F to 
override
             this check.

Habe aber vorher die Leitungen einzeln durchgeklingelt.

Wie kann ich sicherstellen, ob mein Programmieradapter überhaupt 
funktioniert?
OP #1161018
Lesenswert?

Gibt es eine Beschränkung der Leitungslänge von Parallelport bis zum 
Mikrocontroller?

Bei mir sinds ca. 2 Meter

Meine Belegung ist auf jeden fall korrekt.

Unter avrdude habe ich als Programmer stk200 angegeben, aber auch schon 
andere ausprobiert.
Ich weiß momentan nicht mehr wo ich noch rumschrauben kann.
OP #1175306
Lesenswert?

Hubert G. wrote:
> Spannung am µC vorhanden
> Spannung am 74hc244 vorhanden
> Programmer ist für STK200 / 300
> Parallelport bidirektional eingestellt, kein USB-Paralleladapter
> Beim Start der Programmierung geht der Reset-Pin auf 0V.
> Das wären so mal die ersten Tests.

Alles ok, bis auf, dass der Resetpin auf 0V geht sobald ich den 
Programmieradapter anstecke!

im Anhang der Schaltplan von der Schaltung wo der µC sitzt.
Angehängte Dateien:
Gast #1175343
Lesenswert?

>Alles ok, bis auf, dass der Resetpin auf 0V geht sobald ich den
>Programmieradapter anstecke!

Dann haste wahrscheinlich einen Kurzen nach Masse.
(Lötbrücke oder Draht vertauscht?)
Dann läuft die CPU ja auch nicht bei permanenten Reset.


Irrtum vorbehalten.
Gast #1175469
Lesenswert?

>@holger: hab das ich glaub sogar hier irgendwo gelesen, dass man anstatt
>der Spule einen 10k-Widerstand nehmen kann.

Dann hast du falsch gelesen. Wenn schon dann 10 Ohm.
Macht aber auch keine Freude mehr damit wenn
an Porta belastete Ausgänge benutzt werden.
OP #1175747
Lesenswert?

also der Resetpin wird jetzt auch korrekt geschalten.
Wenn ich beispielsweise mit Ponyprog etwas auslese, dann sagt er 
erstmal:

Device missing or unknown device (-24)

Selbe Fehlermeldung auch beim Beschreiben.
Wenn ich da n Hexfile angeb, dann geht die CPU-Last vom PC auf 100% und 
irgendwann kommt "Write failed!".

Es handelt sich hier um einen Atmega8-16PU
#1175775
Lesenswert?

Michael S. wrote:
>
> avrdude.exe: AVR device not responding
> avrdude.exe: initialization failed, rc=-1
>              Double check connections and try again, or use -F to
> override
>              this check.
>
> Habe aber vorher die Leitungen einzeln durchgeklingelt.
>

Kannst du AVRDUDE andere Kommandozeilenoptionen mitgeben? Probier mal 
-B10 , das regelt ein wenige die Geschwindigkeit...


Ansonten: Alle Leitungen durchklingeln hilft:
Programmer an uc anschließen und in die Datenblätter gucken. Dann 
wirklich überprüfen, ob MOSI an MOSI und MISO an MISO ist...

Du kannst avrdude auch von der Kommandozeile aus aufrufen ohne 
Write-Befehl. Der guckt dann einfach nur, ob ein Device angeschlossen 
ist.
#1175776
Lesenswert?

holger wrote:
> So ein 10k Widerstand zwischen VCC und AVCC macht gar
> keinen Sinn. Da gehört falls nötig eine Spule rein.
> Ansonsten direkt verbinden.

Ist AVCC überhaupt nötig?

Ich dachte bisher, das sei nur für den ADC nötig; programmieren kann ich 
meinen Atmega8 auch ohne AVCC....
#1175940
Lesenswert?

Noch zu AVCC.
Das ist die Stromversorgung für PORTC. Diese ist nur extra ausgeführt um 
sie von der übrigen Stromversorgung entkoppeln zu können.
Bei Verwendung es ADC führen Spannungsschwankungen an AVCC zu einer 
Verfälschung des Meßergebnis.
Also ohne ADC direkt mit VCC verbinden, mit ADC wie im Datenblatt 
beschrieben entkoppeln.
#1176876
Lesenswert?

Wenn es auf deinem provosorischen Aufbau funktioniert, dann muss der 
Fehler auf deinem Board sein. Es muss aber nicht ein Schluss gegen GND 
oder VCC sein, es kann auch einer gegen einen anderen Pin sein.
In deiner Schaltung ist was ISP anbelangt kein Fehler ersichtlich.
Sollte deine Relais, die da noch sichtbar sind, für 12V sein, dann wird 
es etwas Probleme beim anziehen geben, mehr als 4,5V wirst du da nicht 
draufbringen.
Gast #1178061
Lesenswert?

Beim gegenwärtigen Stand an Informationen kann man davon ausgehen
das dein ISP-Adapter funktioniert? Ich dachte, das dein Adapter vom
Layout vielleicht falsch wäre, aber das scheint nicht der Fall zu sein.
In deiner AVR-Schaltung (Schaltbild)ist mir etwas aufgefallen.
Oben links hast du eine -5V -Versorgung eingezeichnet obwohl
nirgendwo auf dem Board so eine Spannung gebraucht wird.

Wenn die Programmiersoftware Fehler meldet kann eine Unterbrechung,
ein Kurzschluß oder vertauschte Leitungen oder fehlende Versorgung
/Masse des AVR die Ursache sein. Der Takt muß auch funktionieren.

Nur mal mit der Skopspitze dranhalten reicht meist nicht
wenn man das gemessenen Signal nicht unverwechselbar zuordnen kann.
Da muß man dann wirklich jede Verbindung prüfen.

Wie versorgst du dein AVR-Board und den ISP-Adapter?
>1. Muss die Schaltung mit Strom versorgt werden? Also VCC für
>Mikrocontroller?
Dein Adapter bekommt seine Versorgung über D1 vom AVR-Board.
Die Masse muß vom PC über dem Adapter und dem AVR-Board durchverbunden
sein.
>Wer die Spannung liefert, ist eigentlich egal, Hauptsache, es ist eine
>vorhanden. Also im Regelfall einfach die Platine an der Stromversorgung
>lassen.
Diese Aussage scheint doch ein wenig nicht nachvollziehbar zu sein.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren