Guten Abend an alle µC-Besitzer!
Ich würde auch gern mit einem µC programmieren und habe daher ein paar
Dinge eingekauft und bin gerade am probieren.
Auf dem Foto seht ihr meine Schaltung.
Der Spannungsregler und die Kondensatoren liefern stabilisierte 5V, das
LED leuchtet für mich zur Kontrolle, ob überhaupt eine Spannung anliegt.
Im Tutorial wurde empfohlen, einen Programmer zu kaufen, was ich getan
habe. Er ist laut Beschreibung kompatibel zum STK200 und besitzt einen
10-Pin-Stecker.
Der ATMega8 bekommt seine Daten durch den schwarzen Stecker auf dem
Steckbrett und zusätzlich werden GND und VCC direkt in die Ports
hineingesteckt (ist zwar eine 'russische' Lösung, aber ich hatte
vergessen, das passende Gegenstück zu kaufen).
Soweit, so gut.
Ich nutze GNU/Linux in Verbindung mit uisp.
Der Controller kann mittels
Wenn es selbst mit i10 nicht geht, ist was anderes Faul.
Christoph Hirler schrieb:> als 'root' nicht gefunden werden.
Was hast du denn fuer eine Fehlermeldung ?
Fuer den Anfang wuerde ich dir empfehlen statt dem voellig veralteten
Uisp gleich AVRDude zu nehmen und dann eine Oberflaeche drauf zu setzen,
wie AVR-burn-o-Mat z.B. Programmiergeraet waere dann der dt006, wenn du
als "STK200 kompatibel" dieses 4 Widerstands Dingens meinst.
http://www.brischalle.de/
Unter Linux NIEMALS direkt unter root arbeiten. Man sollte sich
angewoehnen fuer sowas den Befehl "sudo" zu nutzen.
Das hier sollte auch helfen.
http://www.wiki.elektronik-projekt.de/mikrocontroller/avr/avrdude_tutorialChristoph Hirler schrieb:> Im Tutorial wurde empfohlen, einen Programmer zu kaufen, was ich getan> habe. Er ist laut Beschreibung kompatibel zum STK200 und besitzt einen> 10-Pin-Stecker.
Welcher genau ?
Welche Linux Distribution nutzt du ?
>Was hast du denn fuer eine Fehlermeldung ?
Ich nutze jetzt avrdude. Dort kommt
1
AVR device not responding
2
initialization faild, rc=1
>Programmiergeraet waere dann der dt006, wenn du>als "STK200 kompatibel"
Den
http://shop.anvilex.com/pi2/pd3.html
habe ich mir gekauft.
>Unter Linux NIEMALS direkt unter root arbeiten.
Das weiß ich. Da ich aber den Fehler nicht eingrenzen kann, arbeite ich
solange mit allen Rechten, um zumindest fehlende Rechte ausschließen zu
können.
>Welche Linux Distribution nutzt du ?
Fedora 16.
Ich habe meine Schaltung nochmal überflogen und habe festgestellt, dass
der Rest-Pin vertauscht wurde. Auch habe ich noch eine Diode an Plus
geklemmt, wie es im Tutorial Selbstbau erklärt wurde.
Trotz der Änderung klappt es dennoch nicht.
Hat dein PC eine "echte" parallele Drucker-Schnittstelle, oder benutzt
du einen entsprechenden Adapter für USB? Über USB klappt das
normalerweise nicht...
> Auf dem Foto seht ihr meine Schaltung.
Kann das sein, dass du deine Schaltung nicht mit Spannung versorgst? Das
schwarz-graue Kabel rechts unten ist nirgends angeschlossen.
Der RESET Widerstand rechts in der Mitte bei AVR-Pin1 sieht auch seltsam
aus. Für mich ist der kurzgeschlossen! Wenn das stimmt, kann kein
Programmieradapter der Welt dden Reset auf LOW ziehen!
Ich an deiner Stelle würde meinen Aufbau, der schwer/mühsam
nachzuverfolgen ist, komplett zerrupfen und neu gemäß
http://www.mikrocontroller.net/articles/AVR-Tutorial:_Equipment#Beispielhafter_Aufbau_auf_einem_Steckbrett
aufbauen. Zur besseren Nachverfolgung würde ich für alle Vcc Leitungen
ROTE Leitungen und für alle GND Leitungen SCHWARZE Leitungen benutzen.
GRÜN, GELB und ORANGE würde ich für MISO, MOSI und SCK benutzen. Ein
Stück der GRAUEN Leitung inkl. angelöteten Pins für die RESET Leitung.
Die Grundmessungen mit einem Multimeter wären:
Ist +5V an allen Vcc Pins und am RESET-Pin vorhanden, wenn GND/COM
(schwarz) vom Multimeter an GND vom AVR angeschlossen ist? Das zeigt,
zumindest, ob der Spannungsregler arbeitet.
Ändert sich der Pegel beim Programmieren an Reset auf ~0V? Das zeigt, ob
die RESET-Schaltung des STK200 und die Softwaresteuerung der parallelen
Schnittstelle durch AVRDUDE arbeitet.
Weitergehend kannst du mit der Spion-LED und dem Vorwiderstand
Pegeländerungen auf den RESET, MISO, MOSI und SCK Leitungen
nachverfolgen. Dazu den AVR aus dem Steckbrett nehmen und die LED so
anschliessen:
zu
untersuchender
Pin o------------####----------|>---------o GND
Bei schnellen Pegelwechseln sieht man u.U. das Flackern nicht. Dann
scheint aber die LED etwas dunkler als bei direkter +5V Versorgung.
Die Grundeinstellungen bei AVRDUDE wären die Kommandozeile mit -vvv zu
ergänzen und die so erzeugte ausführliche Anzeige in eine Datei zu
schreiben und an die Fragen anzuhängen.
Mit entnommenem AVR kannst du auch MISO und MOSI iM Steckbrett brücken.
Dann sollte sich die Anzeige von AVRDUDE ändern: Alle gesendeten Daten
kommen an AVRDUDE zurück - wenn die Verkabelung MISO/MOSI bis zur Brücke
halbwegs OK ist. Es kann allerdings noch ein Tauscher drin sein.
> wenn du als "STK200 kompatibel" dieses 4 Widerstands Dingens meinst.
Wenn kein Puffer-IC auf dem STK200 Adapter ist, dann bei der Spion-LED
den Vorwiderstand so wählen, dass möglichst wenig Strom über die
Signalleitungen aus dem Parallelport entnommen wird. Mit Puffer-IC
hingegen dürfen es schon 10-20 mA bei normaler LED sein.
Du kannst auch mit dem Multimeter im Spannungsmessmodus (NICHT
STROMMESSMODUS!) messen, welche auf den Pins deines 6-poligen ISP Kabels
anliegen. Das sollten schon 5V TTL Pegel sein und keine schwachbrüstigen
3V Pegel wie sie manche Laptop-Parallelports liefern!
Ach das ist doch alles voelliger Kappes was du da schreibst. Wie soll er
denn bitte mit einem Multimeter den Pegel messen ? Dir ist schon
klar das es Signal leitungen sind ? Mit anderen Worten pulsierende
Gleichspannung und da kann niemals 5V raus kommen.
Ja, ja, jetzt komm mir nicht mit "Aber mit einem Testprogramm..."
Auch das mit der LED ist voelliger Bloedsinn.
Mal abgesehen davon sehe ich null Sinn darin dies zu messen.
Ohne zu wissen was in dem Ding drin steckt, ist es eine einzige Raterei.
Da es ein 10-Pol SPI ist, tippe ich auf einen 74LS244 als Treiber und
dann fehlt ihm von aussen die Betriebsspannung.
Auf seinem Board sehe ich naemlich nur 5 Pinne am SPI, fehlt also schon
mal einer, wenn VTG gebraucht wird.
Also Gehaeuse aufmachen und nachgucken.
Ich schreibe auch mal zwei, editieren ging nicht mehr.
Ich habe nicht gesehen das du zwei Beitraege untereinander hattest. Mit
"Kappes" meinte ich nur den unteren.
Und wenn man oben die Geschichte mit den LEDs weg laesst, ist das auch
okay. Ich frage mich was du mit den LEDs bezwecken willst ?
Es reicht voellig die Leitungen vom SPI Adapter zum AVR duchzuklingeln.
Am besten gleich vom geoeffneten Adapter.
>Hat dein PC eine "echte" parallele Drucker-Schnittstelle
Ja.
>Kann das sein, dass du deine Schaltung nicht mit Spannung versorgst? Das>schwarz-graue Kabel rechts unten ist nirgends angeschlossen.
Natürlich gebe ich da Saft drauf, aber du lässt ja auch nicht den Motor
deines Autos laufen, wenn du ihn nicht brauchst, oder? ;)
>Ich an deiner Stelle würde meinen Aufbau, der schwer/mühsam>nachzuverfolgen ist, komplett zerrupfen und neu gemäß aufbauen.
Die Schaltung ist aber zu aufgebläht. Hier habe ich nur das, was ich
brauche.
>Ist +5V an allen Vcc Pins und am RESET-Pin vorhanden, wenn GND/COM>(schwarz) vom Multimeter an GND vom AVR angeschlossen ist?
Ich habe am RESET-Pin, AREF, AVCC und VCC jeweils ~4,3 V anliegen.
>Die Grundeinstellungen bei AVRDUDE wären die Kommandozeile mit -vvv zu
Siehe Anhang. Ich habe es sowohl mit dt006 als auch mit stk200 als
Programmer versucht. Gleiches Ergebnis.
Zum Thema ISP habe ich das Innenleben angehangen.
Moin,
nur kurz.
Der Widerstand an der LED ist kurzgeschlossen, der am Reset auch.
Zumindest so weit ich diese Boards kenne. Kurz unter dem LED Widerstand
geht eine Leitung in's Nichts. Danach ist kaum was zu erkennen, da du
das Foto schraeg gemacht hast. Man vertut sich leicht mit den Reihen.
Besser ist du machst nochmal eins von oben. Ruhig wieder so gross.
Alles auseinander nehmen halte ich fuer unnoetig. Sind eher
Fluechtigkeitsfehler.
Und lege die Leitungen nicht um so viele Ecken, nur weil die Draehte
mechanisch nicht passen. Mach sie passend, die Grundschaltung bleibt ja
dann sowieso immer gleich.
Zum Programmiergeraet.
Es ist ein STK200 kompatibles. Also in AVRDude nicht dt006 sondern
stk200 angeben. Benutze avr-burn-o-mat, das hilft sehr.
Das Programmiergeraet benoetigt Spannung aus deiner Schaltung. Also die
5V aus der Schaltung auf Pin 2 legen.
Beitrag "Re: Belegung AVR 6-pin ISP-Stecker einreihig (2 Versuch)"
Es ist voellig normal das Anfaenger diese Fehler machen und erst mal
Frust aufkommt, speziell bei diesen Bastelboards, aber das bekommt man
in den Griff.
>Der Widerstand an der LED ist kurzgeschlossen.
Der fungiert als Vorwiderstand der LED und ist, soweit meine
bescheidenen Kenntnisse das zulassen, nciht kurzgeschlossen.
>Also die 5V aus der Schaltung auf Pin 2 legen.
Ich weiß. Ich habe aber keine 10-Pin Wanne zur Verfügung, sodass ich die
ersten 5 Pins durch den kleinen schwarzen Stecker abgreife und VCC sowie
GND, die auf der anderen Seite kommen, direkt vom Board in den
Programmeranschluß stecke.
Ich kenne diese Boards nicht, damit hatte ich nie zu tun. Aber wenn ich
die restliche Schaltung so sehe, dann sind da Fehler drin.
Ich gehe jetzt mal davon aus, dass auf dem Board so durchkontaktiert
ist, wie ich es in Blau eingezeichnet habe. Dann muss bei Rot ein Fehler
vorliegen. Also RST-Widerstand und LED Widerstand haben einen
Kurzschluss. Miss nach.
Die grosse Elipse, links unten, soll andeuten warum der RST nicht
funktionieren kann, was Krapao ja auch schon vermutet hat.
Weiter habe ich jetzt nicht geguckt, ich muss auch weg.
Sind sicher einige hier die diese Boards besser kennen, aber Fehler sind
drin, das ist so sicher wie das Amen in der Kirche.
Du hast es dir auch sehr umstaendlich gelegt. Besser du kuerzt die
Draehte und legst nicht um 10 Ecken rum.
Christoph Hirler schrieb:> bescheidenen Kenntnisse das zulassen, nciht kurzgeschlossen.
Es sieht aber so aus. Wie ist die unter dem Steckbrett liegende
Beschaltung?
citb
Die Verdrahtung von MOSI, MISO, SCK und Reset ist OK ,aber was fehlt ist
VCC an Pin 2 des Wannensteckers. (Speisung des Programmer) Ich glaube
nicht dass er über die parport-Schnittstelle gespiesen wird.
Sag mal, liest du eigentlich mit oder tippst du nur wahllos rum ?
Christoph Hirler schrieb:
> und VCC sowie GND, die auf der anderen Seite kommen, direkt vom> Board in den Programmeranschluß stecke.Christoph Hirler schrieb:> Zum Thema ISP habe ich das Innenleben angehangen.
@Christoph
Hier die Belegung von so einem Board.
http://www.markallen.com/teaching/ucsd/147a/lectures/DC%20Basics/images/Breadboard.jpg
Wie man sieht, beide Widerstaende wie vermutet, kurzgeschlossen. Sowas
passiert jedem mal.
> Ach das ist doch alles voelliger Kappes was du da schreibst. Wie soll er
Ups. Das ist aber mal eine nette Überraschung am Morgen. Naja. Tschau.
Bin dann mal weg.
Es ist zum heulen! Ihr hattet Recht!
Wie das Steckbrett aufgebaut ist, wusste ich, aber aus irgendwelchen
Gründen ging ich davon aus, dass der Strom in meiner Schaltung erst
durch die Widerstände fließt... Im nachhinein ist alles so logisch!
Jetzt weiß ich auch, wieso mir gestern eine LED ausgestiegen ist, wenn
der Vorwiderstand nicht das macht, was er machen soll. Habe das jetzt
geändert und das Auslesen des ATMega8 funktionierte mit avrdude.
Ich weiß gar nicht, wie ich euch danken soll. Euch noch ein sonniges
Restwochenende!