Forum: Mikrocontroller und Digitale Elektronik Programmierkabel selbstbau


von Oktavius (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe mich durch diverse google-Einträge gewühlt und komme nicht 
weiter.

Ich wollte mir gerne ein Programmierkabel selber bauen. Im Anhand seht 
ihr zwei Möglichkeiten. Nehmen die beiden sich nichts? Beide sagen, dass 
sie Programmierkabel wären und voll funktionsfähig seien.

Ich möchte einen Atmega 8 damit programmieren. Bitte helft mir.

Grüße

von al3ko (Gast)


Lesenswert?

Warum son 25 poliges Teil verwenden? Wie sehen denn die Anschlüsse des 
Programmierers und des Zielboards aus? Darauf kommt es doch an. Der Rest 
ist nur noch simple Übertragung in meinen Augen.

Gruß

von Dominik S. (dasd)


Lesenswert?

al3ko schrieb:
> Wie sehen denn die Anschlüsse des
> Programmierers und des Zielboards aus?

Das IST der Programmierer :)
Das ist ein ganz einfacher Parallelport-Programmer.

Mal eine grundsätzliche Frage:

Musst du nur ein mal einen Mega8 flashen oder willst du das ganze öfter 
(Hobbymäßig) machen?

von Oktavius (Gast)


Lesenswert?

Hey danke für die Antwort.

Die Anschlüsse sind wie auf den Bildern zu sehen immer rechts. Sie 
münden in einem Stecker der auf das Board aufgesetzt wird.
Nun muss ich allerdings eine Verbindung mit dem PC herstellen. Das 
wollte ich über den Parallel-Port machen.

Z.B: wie hier

http://thomaspfeifer.net/einfaches_atmel_programmierkabel.htm

von Michael P. (mipo)


Lesenswert?

Beide Kabel scheinen Parallel-Port "BitBang" Programmer zu sein. Dass 
heißt, dass Du das entsprechende Programm zum brennen brauchst - mit 
anderen Worten Programmer A arbeitet nur mit Programm A und B nur mit B. 
Also such Dir das aus, welches Dir am besten passt. Ansonsten schau mal 
hier http://www.mikrocontroller.net/articles/AVR_In_System_Programmer

von al3ko (Gast)


Lesenswert?

Dominik S. schrieb:
> al3ko schrieb:
>> Wie sehen denn die Anschlüsse des
>> Programmierers und des Zielboards aus?
>
> Das IST der Programmierer :)
> Das ist ein ganz einfacher Parallelport-Programmer.
Ups...
Stimmt ja. Den gibt's auch :)

Danke für den Hinweis.

von Oktavius (Gast)


Lesenswert?

Dominik S. schrieb:
> Musst du nur ein mal einen Mega8 flashen oder willst du das ganze öfter
(Hobbymäßig) machen?

Ja hobbymäßig. Ich arbeite mich in die Materie vor.


Danke @ Michael. Das wollte ich eigentlich nur hören, dass es egal ist.

:)

von Dominik S. (dasd)


Lesenswert?

Oktavius schrieb:
> Ja hobbymäßig. Ich arbeite mich in die Materie vor.

Ok... dann würde ich mir ehrlich gesagt selbst den gefallen tun und 
einen etwas besseren (und vor allem zuverlässigeren Programmer 
besorgen).

Entweder sowas 
(http://www.ebay.de/itm/lIl-KK-Board-AVR-USBasp-ISP-6pin-Adapter-/170677205527?pt=RC_Modellbau&hash=item27bd277a17) 
oder gleich das Original von Atmel (AVR ISP MK2, etwa 30€).

Kostet zwar etwas mehr, ist aber fertig aufgebaut und funktioniert 
zuverlässig.
Dazu noch mit USB-Anschluss, wer weiß wie lang man noch serielle oder 
gar parallele Schnittstellen am PC hat.

Ich habe damals selbst auch mit so selbst gebasteltem Zeug angefangen 
und hätte da auch lieber gleich ein paar Euros angelegt - erspart 
definitv Ärger.

von Oktavius (Gast)


Lesenswert?

sind selbstgebaute denn wirklich so unsicher oder geht es nur um den 
parallelport?

von bingo (Gast)


Lesenswert?

Der linke der o.a. Programmierer geht problemlos mit AVRDUDE, hatte ich 
selbst in Gebrauch, als mein Rechner noch einen parallelen Port hatte.

ALlerdings sollte man sicherheitshalber ALLE Anschlüsse (ausser GND) 
mit strombegrenzenden Widerständen versehen (ca 330 bis 470 Ohm).

von Peter R. (pnu)


Lesenswert?

Nicht umsonst sind die parallel-Programmierer außer Mode gekommen.

Erstens, und wohl am wichtigsten: bei modernen Rechnern sind die 
Parallel-Ports Teil eines großen komplexen IC. Wenn da etwas am Port 
falsch gemacht wird, ist das Port hin und ein großes IC muss getauscht 
werden, das entweder nicht erhältlich ist oder recht schwierig 
auszutauschen ist. Folge das Motherboard des PC ist hin.

Zweitens: beim Parallelport sind meistens die Pegel anders (eben nur 
nach TTL-Spezifikation) als die Pegel, die der Kontroller braucht. Es 
kann reiner Zufall sein, dass die Programmierung klappt.

Drittens: Die Programme, die das parallele Programmieren ermöglichen, 
sind nicht in die Entwicklungsumgebung Studio4 integriert. Es bedarf 
mehrerer umständlicher Zwischenschritte bis das in Studio4 erzeugte file 
im Kontroller untergebracht ist.

Eine bessere, VIELLEICHT teurere Lösung ist ein einfacher 
USB-Programmer, wie z.B. Ullis USB-Lab. Der lässt sich als STK500-Klon 
oder als MKII-Klon in Studio4 integrieren und erspart einige 
Stoplerstellen der parallel-Programmierlösungen.

von Tim (Gast)


Lesenswert?

Die Parport Teile sind langsam, unzuverlässig und machen spätestens
bei der Verwendung der ISP Pins für andere Dinge Probleme.

Ich habe auch mit einem Parport Kabel angefangen, heute liegt ein
AVR ISP MK2 auf dem Tisch.
Die 30€ sind wirklich gut investiert.

von bingo (Gast)


Lesenswert?

Ergänzung: wird in AVRDUDE als STK200 angesprochen

von µC-Bastler (Gast)


Lesenswert?

Tim schrieb:
> Die Parport Teile sind langsam, unzuverlässig und machen spätestens
> bei der Verwendung der ISP Pins für andere Dinge Probleme.

Die Geschwindigkeit ist doch ziemlich egal, weil man den Programmer für 
jeden Prozessor nur einmal braucht, um einen Bootloader draufzuspielen. 
Danach kann man Programme bequem über die serielle Schnittstelle (ggf. 
mit USB-Seriell-Wandler) übertragen.

von Peter R. (pnu)


Lesenswert?

OK, die Anwendung eines bootloaders ist eine Möglichkeit, da kommt man 
eventuell mit dem Parallel-progger zurecht.

Kann man aber mit einem bootloader auch AVR-fuses ändern, wie es recht 
oft gebraucht wird?

Und, beim experimentieren muss man öfter nachlesen welche 
Programmversion überhaupt sich im Kontroller befindet. Kann man das auch 
per bootloader?

von Oktavius (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe ein Problem. Ich habe AVR Studio 4 installiert und möchte nun 
den gekauften Adapter ( siehe Ebay-Link oben) einbinden.
Ich gehe auf "tools" - "program AVR" - "connect" . Jedoch finde ich in 
der linken Spalte nicht den Namen meines programmers.

Die Treiber sind installiert und der PC erkennt den programmer auch im 
Geräte Manager. (siehe Bild)


Kann mir jemand helfen? :)

von Wichtel (Gast)


Lesenswert?

Oktavius schrieb:
> Kann mir jemand helfen? :)

Du kannst dir nur selbst helfen.
Du hast einen USBasp gekauft, also benutze ihn auch wie einen. Mit 
Atmel-Software kann er nicht zusammenarbeiten.
In der ebay-Auktion steht doch recht ausführlich wie er mit dem 
(mitglieferten?) khazama-Tool zu benutzen ist. Ansonsten benutze 
avrdude.

Du kaufst doch sicher auch kein Auto mit Benzinmotor und betankst ihn 
mit Diesel?

von Oktavius (Gast)


Angehängte Dateien:

Lesenswert?

Das habe ich mir nach meinem post auch selber erklärt bzw durch 
Recherche herausgefunden.

Wichtel schrieb:

> Du kaufst doch sicher auch kein Auto mit Benzinmotor und betankst ihn
> mit Diesel?

gutes Beispiel ;)

Allerdings habe ich mit der Software ein Problem (siehe Bild)

Beitrag "Error Setting USBASP ISP Clock."

Das Problem ist hier im Forum schonmal genauso beschrieben, allerdings 
kann ich da keine richtige Antwort draus erkennen.

Kann hier jemand helfen?

Grüße :)

ps ein super Forum hier :)

von Oktavius (Gast)


Lesenswert?

Kann niemand helfen?:(

von Markus W. (Firma: guloshop.de) (m-w)


Lesenswert?

Oktavius schrieb:
> Beitrag "Error Setting USBASP ISP Clock."

Die Fehlermeldung von avrdude wäre an dieser Stelle etwas ausführlicher 
gewesen. Dort wird einem nämlich geraten, die USBasp-Firmware 
upzugraden. Sehr wahrscheinlich ist auf deinem USBasp alte Software (vor 
Mai 2011).

Schau dich mal hier um und mach ein Firmware-Update - falls das bei 
deinem USBasp möglich ist: http://www.fischl.de/usbasp/

von Oktavius (Gast)


Lesenswert?

ich weiß nicht ob ich zu blöde bin aber mit avrdude komme ich überhaupt 
nicht klar...

firmwareupdate? das meint treiber aktualisieren oder die version auf dem 
stick selber??

in dem verlinkten thread war die rede von der "ISP clock runter setzen". 
Was meint das?

grüße

von Matthias K. (mkeller)


Lesenswert?

Ganz ehrlich: Wieso empfehlt ihr denn nicht einfach einen orginalen 
Atmel ISP MK2 oder einen AVR Dragon? Die gehen mit allen 
Programmiertools, sind zuverlässig!


Der Ärger den du als Anfänger mit selbstbau oder open-source-Tool hast 
hättest du lieber in die Umsetzung eines kleines Projektes gesteckt. 
(nichts gegen USBasp oder der gleichen, benutze ich ja selbst)

Bist du Student oder Schüler? Wenn ja: 
http://student.embedded-projects.net/

Wenn nein: 
http://shop.embedded-projects.net/index.php?module=artikel&action=artikel&id=33

von Oktavius (Gast)


Lesenswert?

Danke für die Antwort.

Ich habe nun dieses Programmierkabel und soll dieses nun verwerfen? Oder 
gibt es noch eine Möglichkeit es zu nutzen?

Ich wollte mir eigentlich nicht so viel vorgebautes kaufen, da ich Spass 
am Selbstbau etc. habe. Eine Platine mit Prozessor steht nur es bedarf 
eines Programmierkabels. :)

von Markus W. (Firma: guloshop.de) (m-w)


Lesenswert?

Oktavius schrieb:
> Ich wollte mir eigentlich nicht so viel vorgebautes kaufen, da ich Spass
> am Selbstbau etc. habe. Eine Platine mit Prozessor steht nur es bedarf
> eines Programmierkabels. :)

Das ehrt dich!

Die Frage ist nur, wo man da die Grenze zieht. Grundsätzlich ist es 
möglich, einen Atmel-AVR mit Hilfe einer Steckplatine, ein paar Drähten 
und einer 4,5-V-Blockbatterie zu programmieren - völlig ohne PC und 
andere Hilfsmittel.

Man braucht dazu nur ruhige Finger, die die Drähte in der richtigen 
Reihenfolge zusammenhalten, und viiiel Geduld. :-)

Oktavius schrieb:
> firmwareupdate? das meint treiber aktualisieren oder die version auf dem
> stick selber??

Das bezieht sich auf die Software, die auf dem Stick enthalten ist. 
Meist ist dort ein ATmega8L drauf (oder ähnlicher Typ). Dieser AVR auf 
dem Stick lässt sich programmieren. Normalerweise muss dazu ein 
vorübergehend Jumper gesteckt (oder gelötet) werden.
Dummerweise braucht man zum Programmieren eines USBasp einen weiteren 
Programmer – z.B. einen zweiten USBasp.

Einfacher ist es da aber meistens, sich gleich einen USBasp mit 
aktueller Firmware zu besorgen.

Oder – wie Matthias empfiehlt – einen originalen Programmer von Atmel 
oder vom Shop dieses Forums. Eine Garantie, dass der immer funktioniert, 
gibts natürlich auch nicht (hatte selber schon Schwierigkeiten damit), 
aber einen Versuch ist es wert!

von W.S. (Gast)


Lesenswert?

Tim schrieb:
> Die Parport Teile sind langsam, unzuverlässig und machen spätestens
> bei der Verwendung der ISP Pins für andere Dinge Probleme.

Ähem...
Vielleicht mag das ganz speziell auf Atmel-Brenner zutreffen.

Ich hab so einen Parallelport-JTAG-Adapter, der sich 
"Xilinx-Programmierkabel #3" nennt und mit selbigem versteht es das 
Programmiertool von Xilinx, die CPLD's in geradezu rasantem Tempo zu 
brennen - und zuverlässig ist das Ganze auch - trotz Parallelport.

Soll mir also keiner erzählen wollen, Programmierer am Parallelport 
seien langsam oder unzuverlässig. Das ist dummes Gerede. Möglicherweise 
kommt so eine Einschätzung davon, daß die zugehörigen Programme zu 
schlecht geschrieben sind.

Und zu der am Threadbeginn geposteten "Schaltung": Die gefällt mir auch 
nicht. Besser ist es, einen kleinen TTL-Treiber vorzusehen, um den 
eigentlichen Parallelport von dem zu programmierenden Board zu 
entkoppeln und saubere Signale zu haben. Immer dran denken, daß eine 
Schaltflanke auf nem Draht im Kabel so an die 7 ns pro Meter braucht. 
Wenn man da ne Reflexion durch unangepaßte Kabelimpedanz hat, dann hat 
man mit Spikes im Bereich von 15 ns zu tun und die können schon den 
Datenverkehr stören. Deshalb am Ende des Druckerkabels einen Bustreiber, 
Dämpfungswiderstaände in den Dstenleitunge  und dann ne kurze Leitung 
zur Leiterplatte.

Schaltungen mit einem simplen Bustreiber für die Atmel's gibt es überall 
im Netz. Such einfach mal.

W.S.

von mail (Gast)


Lesenswert?

Der hat sich bei mir ebenfalls bestens bewährt:
Beitrag "Re: ISP Parallel-Adapter"

von W.S. (Gast)


Lesenswert?

Ja, genau sowas. Funktioniert gut und zuverlässig, macht saubere Signale 
wenn man die Strippe zum zu programmierenden IC kurz hält (so 20..30 cm) 
und kostet fast nix.

Noch ein Tip dazu: Für die (damaligen) ZIP-Laufwerke gab's mal 
Anschlußkabel an den Parallelport, die nur ca. 50..70 cm lang waren. 
Ideal für nen Programmierer, der auf den Tisch kommt. Die üblichen 
Kabellängen von 1.8 bis 2.5 Meter sind mir zu sperrig.

W.S.

von spess53 (Gast)


Lesenswert?

Hi

>Ja, genau sowas. Funktioniert gut und zuverlässig, macht saubere Signale
>wenn man die Strippe zum zu programmierenden IC kurz hält (so 20..30 cm)
>und kostet fast nix.

Bei den original STK200/300 Adaptern, und etwas anderes ist das auch 
nicht, waren meine Programmierkabel 1..1,5m. Ging Problemlos.

MfG Spess

von Oktavius (Gast)


Lesenswert?

Danke :)

Markus W. schrieb:
>Das bezieht sich auf die Software, die auf dem Stick enthalten ist.
>Meist ist dort ein ATmega8L drauf (oder ähnlicher Typ). Dieser AVR auf
>dem Stick lässt sich programmieren. Normalerweise muss dazu ein
>vorübergehend Jumper gesteckt (oder gelötet) werden.

Auf dem Stick ist wie du sagt ein Atmega8L drauf.
Der Stick hat ja einen 10Pin ISP Stecker. Kann man nicht dort einen 2ten 
anschließen zum Aktualisieren der Firmware? Oder geht das nicht?

Bzw. Wenn die Firmware veraltet ist kann man den Hersteller nicht 
kontaktieren und auf ein funktionierendes Gerät bestehen?

von Markus W. (Firma: guloshop.de) (m-w)


Lesenswert?

Oktavius schrieb:
> Auf dem Stick ist wie du sagt ein Atmega8L drauf.
> Der Stick hat ja einen 10Pin ISP Stecker. Kann man nicht dort einen 2ten
> anschließen zum Aktualisieren der Firmware? Oder geht das nicht?

USBasp gibt es sehr viele. Hast du ein gutes Foto oder einen Link davon?

Meist ist zum Selbst-Programmieren ein Jumper vorgesehen – aber nicht 
immer. Falls es auf der Platine weder einen passenden Jumper gibt noch 
zwei Lötaugen, die man temporär (z.B. mit einem Stück Draht) verbinden 
muss, kanns du auch einen sehr feinen Lötkolben nehmen und provisorisch 
einen Draht von RESET auf GND des ATmega8L löten. In diesem Zustand ist 
er über den 10-Poligen Anschluss mit einem anderen Programmer (z.B. auch 
mit einem USBasp) programmierbar.

Wenn du Glück hast, besitzt dein ATmega8L ein DIP-Gehäuse und ist 
gesockelt. Dann ist die Prozedur natürlich viel einfacher, weil du ihn 
auch rausnehmen kannst.

> Bzw. Wenn die Firmware veraltet ist kann man den Hersteller nicht
> kontaktieren und auf ein funktionierendes Gerät bestehen?

Hm... es gehört aus meiner Sicht zum guten Ton, dass ein Verkäufer 
darauf hinweist, wenn die Firmware schon über ein Jahr alt ist und es 
zwischenzeitlich eine neuere gibt. Aber verklagen würde ich ihn wegen 
sowas nicht. :-) Du hast ja bestimmt nicht vorher gefragt, welchen 
Firmwarestand er verwendet.

Ich würde dir ja anbieten, dass du mir eine Mail schreibst und dann den 
USBasp zum Upgraden zuschickst. Aber das Porto fürs Hin- und Hersenden 
ist wahrscheinlich teurer als ein neuer USBasp mit aktueller Firmware. 
:-(

von Oktavius (Gast)


Lesenswert?

kannst mir ja trotzdem deine email geben, auch damit ich die fotos dort 
senden kann.

von Oktavius (Gast)


Lesenswert?

bzw hier ein link für die Vorderseite:

http://i00.i.aliimg.com/img/pb/310/473/426/426473310_671.jpg

und hier für die Rückseite:

http://images.villageorigin.com/w/index.php/1/2/L06401-098/002.jpg

hoffe das reicht :)

von Markus W. (Firma: guloshop.de) (m-w)


Lesenswert?

Oktavius schrieb:
> http://i00.i.aliimg.com/img/pb/310/473/426/426473310_671.jpg

Super! Ja, den gibts auch mit neuer Firmware - je nach Shop. Manchmal 
stehts in der Beschreibung dabei.

Zum Programmieren musst du die zwei Ösen mit der Bezeichnung "J2" 
verbinden, dann kannst du den Programmer mit einem anderen Programmer 
programmieren. Was du natürlich brauchst, ist ein Kabel 10-polig auf 
10-polig.

Oktavius schrieb:
> kannst mir ja trotzdem deine email geben, auch damit ich die fotos dort
> senden kann.

Bin ganz normal über das Forum per Mail erreichbar. Wenn du magst, meld 
dich, ich mach dann das Update.

von Oktavius (Gast)


Lesenswert?

Hallo,

super vielen dank für dein Bemühen!

Wo finde ich denn sowas wie eine neue Firmware. Ich werde wohl heute 
einen Übergangsprogrammer bekommen mit dem ich meinen dann flashen kann. 
:)

von Markus W. (Firma: guloshop.de) (m-w)


Lesenswert?

Oktavius schrieb:
> Wo finde ich denn sowas wie eine neue Firmware. Ich werde wohl heute
> einen Übergangsprogrammer bekommen mit dem ich meinen dann flashen kann.
> :)

"Übergangsprogrammer" – na das ist mal wieder ein Wort. :-)
Software kannst du beim Entwickler bekommen: 
http://www.fischl.de/usbasp/

von warum nicht gleich was richtiges (Gast)


Lesenswert?

@all

Wieviel hat man als Anfänger jetzt gespart, weil man erst den Programmer
selbst gebaut hat, dann den nächsten billigen gekauft hat und noch einen
"Übergangsprogrammer" braucht um alles zum Laufen zu bringen ?
Die Idee war doch, in die uC Programmierung einzusteigen und nicht, alle
Programmer durchzubenchen.
Alle die einem Anfänger etwas anderes empfehlen als einen AVR Dragon
( HV Programming für einen Neuling ist wichtig, ein uC ist schnell mal
verflasht) sollten zur Strafe 9V Blöcke lecken müssen. Zum Einstieg gibt
es wichtigeres zu lernen als Fehlerbehandlung des Programmers.

von Markus W. (Firma: guloshop.de) (m-w)


Lesenswert?

warum nicht gleich was richtiges schrieb:
> Wieviel hat man als Anfänger jetzt gespart, weil man erst den Programmer
> selbst gebaut hat, dann den nächsten billigen gekauft hat und noch einen
> "Übergangsprogrammer" braucht um alles zum Laufen zu bringen ?
> Die Idee war doch, in die uC Programmierung einzusteigen und nicht, alle
> Programmer durchzubenchen.
> Alle die einem Anfänger etwas anderes empfehlen als einen AVR Dragon
> ( HV Programming für einen Neuling ist wichtig, ein uC ist schnell mal
> verflasht) sollten zur Strafe 9V Blöcke lecken müssen. Zum Einstieg gibt
> es wichtigeres zu lernen als Fehlerbehandlung des Programmers.

Lieber Gast, auf alle Fälle lernt man dadurch viel, viel mehr, als wenn 
man sich auf die Couch setzt und der Mut nicht weiter reicht als zum 
"Plug-and-Play". :-)

Zum "Dragon" kann ich nicht viel sagen, da ich ihn selbst praktisch nur 
noch einen USBasp (mit aktueller Firmware) nutze. Berichte im Forum 
zeigen aber, dass der "Dragon" zum einen vergleichsweise teuer und zum 
anderen nicht sonderlich robust ist.

Für den Differenzpreis kann ich viele Mikrocontroller kaputt machen. :-)

Und bitte fangt nicht wieder eine Diskussion um den "besten Programmer" 
an, denn einen solchen gibt es nicht. Jeder hier im Forum hat seinen 
"Lieblingsprogrammer", und der ist dann für denjenigen auch der beste. 
Subjektiv und sehr wahrscheinlich auch objektiv.

von Oktavius (Gast)


Lesenswert?

Hallo :)

ich möchte mich nochmals herzlichst bedanken. Ich habe meine alte 
firmware geupdated. ging ganz einfach. nun funktioniert mein programmer 
zwar nur unter "khazama avr programmer" aber er funktioniert. avrdude 
erkennt den progger komischerweise nicht. aber egal :)

vielen dank!

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
Noch kein Account? Hier anmelden.