mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Programmieradapter für Atmel


Autor: Ulph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo an alle,

ganz kurze, simple Frage (die ich ausführlich und präzise stelle, um 
Nachfragen zu vermeiden ;-)):
Ich habe vor längerer Zeit einen ATMEGA 16-16 DIP mit diesem 
LPT-Programmieradapter mit 74HC244-Bustreiber von Rolf Milde 
programmiert: http://rumil.de/hardware/avrisp.html
Auf der Platine der "Zielschaltung" befand sich eine entsprechende 
Schnittstelle, an die ich den Adapter angeschlossen habe (mit +5V, SCK, 
Reset, MOSI, MISO, GND), das hat auch alles super funktioniert.

Nun die eigentlich Frage: Reicht es schon aus, wenn man den Atmel 
einfach ohne die ganze Zielschaltung an den Adapter hängt, also ohne den 
Quartz und den ganzen Kram?

Hintergrund: Ich möchte einen ATMEGA 8515-16 D mit Programm versehen, 
leider hat die Zielschaltung keinen Programmieranschluss (s.o.), der 
Controller müsste also kurzfristig auf einer Extraplatine Platz nehmen, 
an die ich wiederum den LPT-Programmieradapter hänge. Oder sind dazu 
wieder zusätzliche Bauteile auf der Programmierplatine notwendig?

Ich würde mich freuen, wenn jemand dazu etwas schreiben könnte, oder 
vielleicht einen hilfreichen Link oder Schaltplan in petto hat - danke!

Autor: Sepp (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Atmel, der programmiert werden soll benötigt:

-Versorgungsspannung (5V), der Adapter stellt die nicht bereit.

-Takt, solange die "Fuses" im Original-Lieferzustand sind,
 ist das der Interne (1MHz).

Den Atmel mit externem Netzteil 5V versorgen, (alle!) Vcc-Pins,
(auch AVCC) und alle! Gnd -Pis anschließen!
Falls interner Takt nicht verfügbar, extern einspeisen, z.B.
Quarzoszillator.

Dann sollte es funktionieren.

(Ich persönlich vertraue dem ISP-Programmer vom STK500,
die "Bit-Banging-Programmierung" ist nicht so toll.)

Autor: Thomas Eckmann (Firma: Thomas Eckmann Informationst.) (thomase)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ulph schrieb:
> Nun die eigentlich Frage: Reicht es schon aus, wenn man den Atmel
>
> einfach ohne die ganze Zielschaltung an den Adapter hängt, also ohne den
>
> Quartz und den ganzen Kram?

Jein.
Wenn du per Fuse auf externen Quarz umschalten willst, muß auch an der 
Programmierplatine ein Quarz dran.
Ansonsten geht das schon.
Stützkondensator zwischen Vcc und GND nict vergessen.

mfg.

Autor: JojoS (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
kommt drauf an wie die Fuse-Bits bei dem Controller programmiert sind, 
bei den meisten Megas (der 8515 ist älter, ins Datenblatt gucken) kann 
man per Fuse einstellen ob interner Oszi oder externer Takt anliegen 
müssen. Wenn der µC jetzt auf Quarz steht läuft er nicht ohne.

Autor: Michael L. (michaelx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Im Prinzip das, was Thomas schrieb, aber Spannungsversorgung nicht 
vergessen, der Programmieradapter wird nämlich aus der Schaltung mit 
versorgt.

Also mach dir eine kleine Platine (Lochraster reicht auch), mit ein paar 
ISP-Stecker, Sockeln (8/28/40-polig) und einem 7805 + Zubehör drauf, und 
nimm besser statt dem Quarz einen Quarz-Oszillator.

Michael

Autor: Ulph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Alles klar, das beantwortet meine Frage ja schon ausreichend. Einen 
Bauvorschlag habe ich bereits gefunden, Lochraster reicht für die paar 
Teile völlig aus.

Vielen Dank an die Belegschaft!

Autor: Klaus Wachtler (mfgkw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sepp schrieb:
> (Ich persönlich vertraue dem ISP-Programmer vom STK500,
> die "Bit-Banging-Programmierung" ist nicht so toll.)

Ich nehme seit Jahren ohne Probleme von der erwähnten
Rolf Milde-Seite den stk200-kompatiblen mit 74HC244 am
Druckerport.
Geht einwandfrei und ist schnell.

Wenn viele Bitbanging-Spielereien Murks sind, müssen es nicht
alle sein.

Nur schade, daß der Druckerport am Aussterben ist :-(

Autor: Ulph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kein Thema, ich werde meinen Uralt-PC nie entsorgen, solange das Teil 
noch geht.
Warum überhaupt das STK500? Das ist ja nicht gerade für Kleingeld zu 
haben.

Eine Sache fällt mir noch ein: Ist es egal, welcher Takt der Atmel beim 
flashen bekommt, oder muss das zwangsweise der gleiche sein, wie im 
späteren Betrieb?

Autor: Klaus Wachtler (mfgkw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nein, er muß nur hoch genug sein für den Clock beim Programmieren
(SCK).
Notfalls müsste man letzteren reduzieren.

Autor: alibaba (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Haha sehr gut. Hatte gestern genau diesen Aufbau mit 8515 und dem 
gleichen Programmer. Zufälle ... Geht wunderbar auf einem Steckboard. 
Irgend einen Quarz dran und gut ist.

Schönen Feiertag noch

Autor: Klaus Wachtler (mfgkw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klaus Wachtler schrieb:
> Sepp schrieb:
>> (Ich persönlich vertraue dem ISP-Programmer vom STK500,
>> die "Bit-Banging-Programmierung" ist nicht so toll.)
>
> Ich nehme seit Jahren ohne Probleme von der erwähnten
> Rolf Milde-Seite den stk200-kompatiblen mit 74HC244 am
> Druckerport.
> Geht einwandfrei und ist schnell.
>
> Wenn viele Bitbanging-Spielereien Murks sind, müssen es nicht
> alle sein.
>
> Nur schade, daß der Druckerport am Aussterben ist :-(

Auch wenn es langsam OT wird, aber ich bin seit neuestem (fast aus
Versehen) stolzer Besitzer eines AVRISPmkII.

Ein Beispielprogramm für einen mega32 brennt der über USB
in 4.4 bis 4.5 sec unter Linux mit avrdude (Flash löschen,
schreiben, verfizieren).

Der alte selbstgelötete stk200-kompatible am Druckerport
macht dieselbe Arbeit in 2.8 bis 2.9 sec.

Eigentlich müsste ich jetzt mal das stk500 ausgraben...

Autor: Ulph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

nach längerer Abstinenz will ich endlich anfangen und melde mich 
nochmal:

Ich habe eine passende Schaltung gefunden, mit der mittels 
ISP-Schnittstelle der Atmega 8515 geflasht werden kann.
Nun fehlt in der Schaltung aber eine Angabe zum Takt des Quartzes - was 
soll ich da nehmen? K. Wachtler schrieb weiter oben, dass der Takt nur 
so schnell wie SCK beim flashen sein muss. Was nimmt man da 
üblicherweise, oder einfach den schnellsten?

Ich bin mir da unsicher, der Atmega läuft in der Zielschaltung mit einem 
externen Clocksignal eines USB-Controllers (USB N9604) mit 4MHz.

Und wie stelle ich die Fuse-Bits ein? Geflasht werden muss ja auf 
externen Takt, habe aber Bedenken, wenn der Takt beim aufspielen des 
Programmes nicht passt, der Controller danach nicht mehr ansprechbar 
sein könnte.

Gruß

Autor: Helfer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Ich bin mir da unsicher, der Atmega läuft in der Zielschaltung mit einem
> externen Clocksignal eines USB-Controllers (USB N9604) mit 4MHz.

Dann muss dein ISP-Targetboard auch ein externes 4 MHz Clocksignal als 
Taktquelle haben. Einen auf externe Clock gefusten AVR kannst du mit 
einem Quarz nicht betreiben. Und einen auf Quarz gefusten AVR kannst du 
mit external Clock nicht betreiben.

Autor: Ulph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das wundert mich etwas, aber ich lasse mich eines besseren belehren: ich 
dachte immer, es macht nur einen Unterschied, ob man den Atmega auf 
internen oder externen Takt umstellt.

Ich kenne es so: An den Anschlüssen XTAL1 und XTAL2 hängt ein 
Standardquartz. In dieser Schaltung ist aber XTAL2 frei und am XTAL1 ist 
der CLKOUT vom USBN9604.
Falls es weiterhilft: In der Anleitung sind alle Fusebits auf 1, also 
nicht programmiert, inklusive CKSEL0 bis CKSEL3!

Ich hoffe, das schafft etwas Klarheit für mein Problemchen.....

Autor: Helfer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der interne RC Oxzillator ist von den Fuses aus nicht aktiv, d.h. du 
musst eine externe Taktquelle beim ISP Programmieren benutzen.

XTAL2 ist von den Fuses aus aber auch nicht nicht als Antreiber für den 
externen Quarz konfiguriert. D.h. einen externen Quarz kannst zu nicht 
beim ISP-Programmieren verwenden.

Bleibt eine externe Clock fürs ISP-Programmieren, genau so wie du den 
AVR später in der Schaltung laufen lässt.

In Beitrag "Re: Programmieradapter für Atmel" war ich 
vorschnell mit dem umgekehrten, bei dir nicht zutreffendem Fall. Könnte 
man einen AVR, der auf Quarz gefust ist, auch mit externer Clock 
betreiben oder gilt must als Muss "To run the device on an external 
clock, the CKSEL Fuses must be programmed to “0000”."

Autor: Ulph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für Deine Bemühung!

Aus dem letzten Absatz werde ich aber nicht schlau bzw. klingt eher nach 
einer Frage ;-) Du bist Dir auch nicht sicher, ob man einen Atmega mit 
Quartz flashen kann und dann in der Zielschaltung einfach anstelle 
Quartz ein Clocksignal benutzen kann?

Statt des doofen Quartzes würde ich sonst lieber einfach ein "richtiges" 
Clocksignal nehmen. Also einen Quartzoszillator - zur Sicherheit frage 
ich ganz doof nach: wird es mit diesem 4MHz-Oszillatörchen von Reichelt 
funktionieren?
http://www.reichelt.de/?ACTION=3;GROUP=B42;GROUPID...
(Alternativ die Best.-Nr. OSZI 4,000000 ins Schnellsuche-Feld auf 
Reichelt.de eingeben).

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.