Forum: Mikrocontroller und Digitale Elektronik AVR-Programmierboard


von Thobias R. (mc-anfaenger)


Lesenswert?

Erst einmal: Guten Tag allen zusammen hier im Forum. Wahrscheinlich sind 
meine Fragen sehr banal und ihr lacht euch darüber tot.

Ich habe ein paar kleinere Fragen und hoffe ihr könnt mir helfen.
Zum einen:
Benutzt werden soll ein mySmartUSB MK2, mit diesem wollte ich anfangen 
MCs zu programmieren. Da er ja dermaßen viele programmieren kann über 
die ISP Schnittstelle wollte ich mir eine kleine Platine bauen welche 
dann einfach nur Sockel haben in denen ich die MCs einsetzen (immer nur 
einen) und programmieren kann.

Das sind zum einen die ATTINYs mit ner 8-Pin Belegung. Dann ATMEGA in 
verschiedenen Ausführungen mit 28-Pin und letztlich die ATMEGA mit 
40-Pin (wobei ich gesehen habe, dass der 8515, 161 und 162 scheinbar 
Masse und VCC Pin woanders sind, ergo muss ich 2 40-Pin Sockel nehmen).

Ich wollte daher einen 10-polige Wannenstecker auf das Board löten, dort 
sind ja dann MOSI,MISO,SCK,GND,VCC und Reset.

Ich habe gelesen, dass hier eine Grundschaltung gegeben ist für den 
Atmega8. Ich wollte eigentlich erst einmal nur eine Grundschaltung haben 
um die Attiny und Mega zu programmieren, später nur um vielleicht nen 
Taster und ne LED benutzen.

Ein externer Quarz ist glaube ich nicht vonnöten, da ist einer eingebaut 
oder? Zur Spannungsversorgung habe ich ein 5V Netzteil mit 3A, also 
ausreichend gedeckt. Im Tutorial werden noch 3 x 100nF Kondensatoren 
benutzt zur minimierung der Restwelligkeit des Netzteils. Wäre ja hier 
auch nicht vonnöten, kostet aber nicht die Welt.
Dann bleibt noch Reset, welcher mit nem 10KOhm Widerstand an VCC gelegt 
wird, ein 47nF Kondensator an GND.

Viel Text, jetzt die Fragen ;)

Ist diese Beschaltung bei allen Atmegas und Tinys? (ich muss natürlich 
noch auf die Spannung gucken)

Und die andere Frage ist, wenn ich die Portpins, welche für die 
Programmierung genutzt werden, also MOSI,MISO,SCK programmieren sollte 
(Wurst, lassen wir es als Ausgang definiert ne LED leuchten lassen), so 
kann ich die dennoch später programmieren, weil der Programmer den 
Resetpin auf GND zieht? Nicht dass ich das als Ausgang programmiere und 
er dann unwiederruflich so bleibt.

Danke schonmal. Evtl. habe ich später noch andere Fragen wenn ich 
anfange das Testsystem zu installieren. Programmieren werde ich dann in 
C, AVR Studio werde ich wohl nutzen, und mit dem myAVR Prog Tool die 
Daten übertragen.

von Spess53 (Gast)


Lesenswert?

Hi

>(wobei ich gesehen habe, dass der 8515, 161 und 162 scheinbar
>Masse und VCC Pin woanders sind, ergo muss ich 2 40-Pin Sockel nehmen).

Was meist du, wozu du diese Oltimer brauchst? Die haben nichts 
besonderes, was neuere AVRs nicht haben. Außerdem tendieren älter 
werdende AVRs zu immer höher werdenden Preisen.

MfG Spess

von Thobias R. (mc-anfaenger)


Lesenswert?

Ok, also meinst du für die drei lohnt nicht noch zusätzlich nen 
40-Pin-Sockel.

Dann werde ich nur einen nehmen.

Die Verschaltung an Reset jedoch reicht aus um die AVRs zu 
programmieren? Und das bei allen mit demselben Widerstand?

von Spess53 (Gast)


Lesenswert?

HI

>Die Verschaltung an Reset jedoch reicht aus um die AVRs zu
>programmieren? Und das bei allen mit demselben Widerstand?

Warum nicht. Die minimale Größe des REST-Widerstands wird durch den 
Programmer bestimmt. Der muß in der Lage sein das RESET-Pin sicher auf 
Masse zu ziehen.

>Ein externer Quarz ist glaube ich nicht vonnöten, da ist einer eingebaut
>oder?

Nein. AVRs haben einen internen RC-Oszillator. Der hat selten die genaue 
Frequenz (wenn man ihn nicht extra kalibriert) und ist temperatur- und 
spannungsabhängig. Reicht für viele Anwendungen, ist aber z.B. für eine 
Uhr oder RS232 ungeeignet.

MfG Spess

von J. T. (chaoskind)


Lesenswert?

Hey Tobias,
mein erster Programmer war auch der MySmartUSB MKII, ich hatte mir da 
direkt das MyMultiprog Board dazubestellt, da ist genau das drauf, was 
du dir da zurechtbasteln willst. Da sind dann Sockel für alle AVR´s 
drauf, die der MySmartUSB kann. Das kostete glaub ich so um die 15€. Und 
ein Quarz ist auch noch drauf, damit kannst du dann auch nen externen 
Takt an die µC legen, falls du dich mal ausgepserrt hast, weil du die 
Taktfuses verfuset hast.

Ich kann mich auf jeden Fall noch erinnern, wie ich das erste mal ein µC 
damit geflasht habe, es war Begeisterung pur =). Vorher hatte ich n 
Gefrickel aus n paar Widerlingen und nem USB--COM wandler, damit hat n 
80Byte großes Programm knappe 3Minuten gebraucht, als der MySmart das 
selbe dann in 0,schießmichtot Sekunden gemacht hat, war die Freude groß.

Inzwischen hab ich mir nen Dragon bestellt, auch davon bin ich 
begeistert, OnChipDebugging ist einfach was feines. Den MySmart nutze 
ich noch als USB---UART Bridge,

von Thobias R. (mc-anfaenger)


Lesenswert?

Ok, der Quarz wäre aber nicht wirklich benötigt für die Programmierung 
oder?

Ich habe noch nen 16Mhz Quarz hier und 22pF Kondensatoren an Ground 
dann, richtig?

Auch hier, geht der Quarz denn dann mit allen 40-poligen oder nur mit 
bestimmten Megas?

Ja, so fertigdinger hatte ich früher mal, das problem ist für mich pers. 
dann immer, dass die einfach gnadenlos überladen sind. Ich will einfach 
nur: Chip rein, programmieren, Chip raus und woanders dann reinstecken 
und dort testen. Das reine programmieren soll dann aber da gemacht 
werden und nichts anderes. Wäre ja dann der Quarz dort unnötig?

von J. T. (chaoskind)


Lesenswert?

Genau, den Quarz brauchst du für das reine Programmieren nicht.

Und das empfohlene Fertigboard ist kein Stück überladen. Das ist genau, 
was du möchtest, Chip rein, Programmieren, Chip woanders rein und gut. 
=) Weitere Peripherie ist nicht drauf.

Da sind halt für die unterschiedlichen Gehäuse/Pinbelegungen je ein 
Sockel drauf, plus der Quarz, falls du mal den Takt verfuset hast. 
Sprich du hast nen 8poligen Sockel für ATiny12,13,15, einen 14poligen 
für ATiny24,44,84,
nen 28poligen für ATmega8,48,88,168,238,4433 dann jeweils 2 40polige, 
einmal für die vorhingenannten Oldtimer 8515 und 162 und der andere 
40Poler für die Mega16,32, und 8535, und als letztes noch 2 20polige, 
einmal für den alten 2313, und einmal für den Atiny26

Ich hoffe, das hilft dir weiter, zurnot www.gidf.de =) nach mymultiprog 
suchen.

MfG Chaos

von Spess53 (Gast)


Lesenswert?

Hi

>Auch hier, geht der Quarz denn dann mit allen 40-poligen oder nur mit
>bestimmten Megas?

Solange du keine V-Typen oder niedrige Versorgungsspannungen benutzt 
geht der.

>Ich will einfach nur: Chip rein, programmieren, Chip raus und woanders dann 
>reinstecken und dort testen.

Da hätte ich das Programmieren schon längst aufgegeben. Viele Sachen 
mache ich direkt auf dem STK500, beim Rest kommt ein 6pol. ISP-Stecker 
auf die Schaltung. Da wird nichts umgesteckt.

MfG Spess

von Thomas E. (thomase)


Lesenswert?

Thobias R. schrieb:
> Ich will einfach
> nur: Chip rein, programmieren, Chip raus und woanders dann reinstecken
> und dort testen. Das reine programmieren soll dann aber da gemacht
> werden und nichts anderes.
Das ist doch nicht einfach. So hat man das früher als noch alles besser 
war, gemacht. Chip raus, in den Programmer gesteckt, Chip wieder rein. 
Und ganz früher als alles noch besser war, hat man die zwischendurch zum 
Löschen noch 20 Minuten unter die Löschlampe gelegt.
Das ist heute Gott sei Dank vorbei. Denn heute gibt es ISP. Das steht 
für In-System-Programming. Damit werden die Controller direkt in der 
Schaltung gebrannt.
Ein externes Programmiergerät braucht man heute nicht mehr.

mfg.

von Thobias R. (mc-anfaenger)


Lesenswert?

Ich möchte ja nicht unverschämt sein, aber wieso 18Euro für sowas 
ausgeben? Sehe aber ein, wenns nur so alte MCs sind, brauch ich nicht 2 
40er. Aber der 8er, 28er und 40er reicht sicherlich aus. Da die auch 
alle mit 5V funktionieren sollten sehe ich also da kein Problem.

Demnach muss ich also nur die 3 Kondensatoren zum glätten nehmen, den 
Widerstand und Kondensator für Reset, und dann nur die Pin für die 
Programmierschnittstelle weiterleiten.

Dann danke schonmal, ist ja schonmal was woran ich dann die Tage 
arbeiten kann wie ich es am besten anlege.

Danke!

von Bernd S. (bernds1)


Lesenswert?

j. t. schrieb:
> Genau, den Quarz brauchst du für das reine Programmieren nicht.
>
Jein...
Eine Einschränkung gibts da schon. Wenn man in der fertigen Schaltung 
einen Quarz einsetzt (die Schaltung, wofür man den Controller 
programmiert), dann muß auch beim Programmieren ein Quarz vorhanden 
sein. Wenn man sonst beim Programmieren die Fuses auf externen Quarz 
ändert, sperrt man sich aus. Das heißt, der Controller reagiert nicht 
mehr, weil er keinen Takt mehr hat. Wenn man aber immer nur mit dem 
internen Oszillator arbeitet, kann man den Quarz auf dem 
Programmierboard auch weglassen.

von J. T. (chaoskind)


Lesenswert?

Da hat Thomas Eckmann schon recht, heutzutage hat man einfach ne 
ISP-Schnittstelle in seiner Schaltung, da klemmt man dann seinen 
Programmer ran, und kann programmieren, ohne den Chip überhaupt aus der 
Schaltung rausnehmen zu müssen.

von Bernd S. (bernds1)


Lesenswert?

Klar, so mache ich das auch immer. Ich habe noch nie einen Controller 
extern programmiert, immer in der Schaltung, wo er dann auch arbeiten 
soll. Vor allem kann man da direkt nach dem Programmieren auch gleich 
testen, ob alles funktioniert. Und wenn nicht, wieder 
drüberprogrammieren usw. Da muß man nicht immer den Controller aus der 
Fassung ziehen und ins Programmierboard stecken, anschließend wieder 
zurück.

Aber wenn Thobias die Controller extern programmieren möchte, kann man 
schon sowas aufbauen.

von Thobias R. (mc-anfaenger)


Lesenswert?

Es soll später ein sehr kleines Board erstellt werden. Das soll sogar so 
klein sein, dass eine ISP-Schnittstelle, selbst mit nem 6-pol nicht mehr 
geht. Daher kann ich auch direkt so eine kleine Box bauen. Frisst doch 
kein Brot. Ist natürlich mechanische Belastung.

Ok, also lieber doch nen Quarz. Am besten welche, die dann immer mit der 
jeweiligen Sockeltypus funktioniert.

Atmegas sollten mit nem 16Mhz gehen oder? Wie siehts bei den Tinys aus? 
Gibts da auch ne Std.-Größe?

Falls ich dann den externen nutzen will, muss ich die Fuses setzen 
(nicht mit Infos überladen erstmal ;) ). Wenn nicht beachte ich den 
Quarz einfach nicht und programmiere ihn auch nicht.

von Spess53 (Gast)


Lesenswert?

Hi

>Ich möchte ja nicht unverschämt sein, aber wieso 18Euro für sowas
>ausgeben?

Ich nehme an, du meinst das MyMultiprog-Board. Was ist daran teuer? Nur 
wenn du deine vielen Stunden nicht einrechnest kommst du etwas billiger. 
Und da hast du wenigstens ein funktionierendes Board mit einen richtigen 
Leiterplatte.

>Sehe aber ein, wenns nur so alte MCs sind, brauch ich nicht 2
>40er. Aber der 8er, 28er und 40er reicht sicherlich aus.

Es gibt auch noch einige interessante ATTinys im 14, 20 und 28 pol. 
Gehäuse.

MfG Spess

von Thomas D. (thomasderbastler)


Lesenswert?

Spess53 schrieb:
> MyMultiprog-Board

Das Board ist wirklich günstig, rechne mal was die Platine alleine schon 
kosten würde.
Einziger Manko, Atma328 geht nicht.

von J. T. (chaoskind)


Lesenswert?

Ich denke auch, das 18€ für das Board nicht zuviel sind. Wenn du dir 
überlegst, du brauchst Material, IC-Fassungen usw. Da biste allein beim 
Material schon bei knapp 10€ vermutlich, (auf dem MultiProg sind das 
alles Präzisions-IC-Fassungen mit gedrehten Kontakten) da kostet der 
40Polige ja auch schon 1,50€. Dazu kommt dann noch die Zeit, die du 
benötigst, um dir die jeweilige Beschaltung aus den Datenblättern 
rauszusuchen, Platinenlayout erstellen und ätzen, oder Kabel verlegen 
und löten... Ich denke nicht, das du das selbst günstiger als für 18€ 
herstellen kannst..

von Thobias R. (mc-anfaenger)


Lesenswert?

Ouf. Also laut den Anleitungen des MK2 Boards her sind folgende 
praktisch nutzbar:

8-Pin : Tiny12;13;15;25;45;85
28-Pin: Mega8;88;48;168;328P
40-Pin: Mega16;163;164;324;644;32;8535

Das sollte ansich ausreichen denke ich. Sollte ich doch mal was anderes 
programmieren wollen, dann hab ich natürlich Pech gehabt.

Bei den Tinys wirds evtl. mit dem 16Mhz Quarz nichts, wenn ich das 
richtig lese müsste dort ein 16Mhz, 12Mhz und 6Mhz alles abdecken? Mit 
nem kleinen Umschalter sollte das kein Thema sein.

Wie teuer meine Arbeitsstunden sind, das ist doch mein Bier. Ich sitz ja 
auch hier und schreibe. Aber danke für diese Einschätzung.

von Dudu1946 (Gast)


Lesenswert?

Ich muss hier Spess53 beipflichten. Es gibt bereits ne Menge Boards, die 
das schon leisten, STK500, oder das Pollin Board - das kannst du sogar 
selber zusammenlöten - macht dann ja vllt auch irgendwo schon Spass.
Ansonsten, ISP Stecker drauf, Dragon Board dran und gut ist.
Hängt auch immer davon ab, was Du mit den programmierten Teilen in 
deiner endgültigen Schaltung machen willst.
Klar, Kosten ist eine Sache, aber die hast du für deine Zielboards ja 
auch. Außerdem, denk dran, wenn Du Dir ne Computerzeitschrift kaufst, 
dann sind das auch schon 5 Euro.

von Thobias R. (mc-anfaenger)


Lesenswert?

Ich kaufe mir keine Computerzeitschrift. Ich kaufe mir gar keine 
Zeitschrift.

Das STK500 kostet 80€. Das Pollin-Board kostet 40€? Das AVR Dragon 50€.

Und was sollte ich mit denen denn? Wie geschrieben, ich möchte es Stück 
für Stück aufbauen. Aber eben nicht mit einer Fertiglösung.

von Eumel (Gast)


Lesenswert?

Thobias R. schrieb:
> Und was sollte ich mit denen denn? Wie geschrieben, ich möchte es Stück
> für Stück aufbauen. Aber eben nicht mit einer Fertiglösung.

Controller programmieren, was sonst?
Deine eigentliche Zielschaltung ist doch eh was anderes, oder willst du 
nur ein Board haben?

von Spess53 (Gast)


Lesenswert?

Hi

>Ouf. Also laut den Anleitungen des MK2 Boards her sind folgende
>praktisch nutzbar:

>8-Pin : Tiny12;13;15;25;45;85
>28-Pin: Mega8;88;48;168;328P
>40-Pin: Mega16;163;164;324;644;32;8535

Da gehen noch viel mehr. Das sind wahrscheinlich die Typen, die es gab 
als das Board entwickelt wurde. Und seit dem sind etliche Jahre 
vergangen.

Wenn die Anschlußbelegung paßt werden die verwendbaren Typen werden vom 
Programmer und nicht vom Board bestimmt. Mein STK500 ist Baujahr 2001 
und ich programmiere damit AVRs an die damals nicht zu denken war.

MfG Spess

von Thomas E. (thomase)


Lesenswert?

Thobias R. schrieb:
> Bei den Tinys wirds evtl. mit dem 16Mhz Quarz nichts, wenn ich das
> richtig lese müsste dort ein 16Mhz, 12Mhz und 6Mhz alles abdecken? Mit
> nem kleinen Umschalter sollte das kein Thema sein.
Wenn du schon unbedingt so ein Programmierboard bauen willst, ist die 
Frequenz egal. Die ist nur in der Zielschaltung von Bedeutung. Also 
nimmst du die niedrigste. Damit kommen dann alle klar.
Noch besser ist allerdings ein externer Oszillator statt Quarz.
Die meisten Avr-Verfuser sperren sich aus, indem sie External Clock 
statt External Crystal Oszillator(Quarz) einstellen.

mfg.

von Dudu1946 (Gast)


Lesenswert?

Das Pollin Board kostet als Bausatz ca. 15 Euro, und hat DIP Sockel von 
8 bis 40 Pins. Bin nicht sicher ob sich darüber sogar programmieren 
lässt (bin aber kein Fan von seriellen Schnittstellen)
ISP Selbstbau-Programmer kriegt man m.W. ab 10 Euro, fertig aufgebaute 
ab 15 Euro.
Ich nutze selbst aber eher STK/Dragon mit Debug

>> > Und was sollte ich mit denen denn? Wie geschrieben, ich möchte es Stück
>> > für Stück aufbauen. Aber eben nicht mit einer Fertiglösung.
>>
>> Controller programmieren, was sonst?...

Yep!

von Thobias R. (mc-anfaenger)


Lesenswert?

Ich möchte nun einen Vergleich zu Rate ziehen.

Ihr meldet euch in einem Kochforum an (mc.net), um zu fragen, wie man am 
besten Gulaschsuppe kocht. (meine Fragen)

Als Antwort bekommt ihr, dass die Fertigsuppe vom Hersteller XY am 
besten schmeckt. (MyMultiprog Board)
Viele andere berichten, sie hätten schonmal Gulaschsuppe gekocht, und 
dass das gar nicht mal so einfach ist, am besten wäre, man kauft die 
Fertigsuppe.
(So hat man das früher als noch alles besser war,)

Die Kräuter die ihr für die Gulaschsuppe braucht habt ihr schon zu 
hause, und selbst das Gulasch, nur die Mischung müsst ihr wissen. (meine 
Hardware)

Auch wird eingeworfen, man könne ja ins Restaurant gehen um dort eine 
sehr schmackhafte Gulaschsuppe zu essen. (STK500, Pollin Board,Dragon 
Board)

Ihr wolltet aber nur ein Rezept für Gulaschsuppe, und vor allen Dingen: 
Ihr wollt die Suppe selber kochen. Manchmal würzt ihr ein wenig stärker, 
mal weniger, aber ihr habt die Leistung des Kochens vollbracht. Ihr habt 
Erfahrungen gesammelt. Manchmal ist die Suppe versalzen.

von Eumel (Gast)


Lesenswert?

Thobias R. schrieb:
> blabla

Nö, du willst gleich nen ganzen Ochsen mit einem Taschenmesser 
schlachten wirst aber pissig wenn die Leute dir sagen, dass du 
vielleicht erstmal beim Fleischer vorbei schaust und dir da Fleisch 
kaufst (einen Programmer).
Dont act so Butthurt.

von Dudu1946 (Gast)


Lesenswert?

Mir gefällt die Analogie ... :-)

Wie gesagt, hängt davon ab, was du machen willst. Zumindest hast du 
gesagt, du willst die Teile programmieren, um sie dann in einer anderen 
Anwendung einzusetzen - der eigentlichen Gulaschsuppe äehm Anwendung 
sozusagen.
Ansonsten kann man sich auch einen Controller komplett selberbauen, 
indem man mit einem FPGA-Board anfängt und dort einen kleinen 8-Bitter 
implementiert. Das wäre dann wohl der passende Bauernhof zur 
Gulaschsuppe ... ;-)

von Thobias R. (mc-anfaenger)


Lesenswert?

Den Programmer habe ich schon. Steht da ganz oben im Eingangspost aber 
auch schon.

Außerdem werde ich nicht pissig, immerhin habe ich schon irgendwo weiter 
oben geschrieben, dass ich niemandem zunahe treten möchte, hier wiederum 
stelle ich einen Vergleich an, um zu erklären, um was es eigentlich 
ging, da ja der eigentliche Sachverhalt sehr weit gedehnt wird. Hier 
wird mir die Genstruktur des Ochsen erklärt, aber das möchte ich nicht. 
;)

von Bernd S. (bernds1)


Lesenswert?

Eumel schrieb:

> schlachten wirst aber pissig wenn die Leute dir sagen, dass du
Er wird doch nicht pissig, sondern legt nur seine Beweggründe dar. Und 
was ist daran falsch, etwas selbst zu bauen, was es schon gibt? Man 
lernt auf jeden Fall was dabei.

> kaufst (einen Programmer).
Wenn du alles richtig gelesen hättest, wüßtest du auch, daß er schon 
einen Programmer hat. Er will nur ein Board mit Sockeln für die 
Controller bauen.

von J. T. (chaoskind)


Lesenswert?

:D
Die Anologie mit der Gulaschsuppe gefällt mir auch gut *gg

Dann nun ein Kochrezept für so ein selbstgestricktes Board:

Du gehst zu deinem Elektronikfleischer, kaufst dir dort ne 
Lochrasterplatine und die Sockel die du benötigst.
Also schlau machen welche Pins du bei welchem µC für die 
ISP-Programmierung benötigst. Dabei wirst du feststellen, das die 
meisten µC die selben Pins benötigen. Daher wird dir, wenn du dich auf 
die neueren beschränkst, pro Größe ein Sockel reichen.
Dann noch son 10poligen Pfostenstecker, auf den steckst du dein 
Programmer. Von dem Pfostenstecker ziehst du dann Leitungen auf die 
jeweiligen Pins der Sockel. Evtl noch n bischn Schaltlitze oder 
Kupferlackdraht zum verkabeln, Lötzinn usw, je nachdem was in deiner 
"Küche" schon vorhanden ist.

Den Quarz brauchst du nicht unbedingt, da dir der MySmartUSB MKII den 
ISP-Takt direkt mitliefert.

Der Vorschlag mit dem MultiProgBoard kam nur, da du geschrieben hast, 
das dir die bekannten Fertigboards viel zu überladen sind, ich dachte 
halt, das überladene "ZWINGT" dich zum Selberbauen. Aber wenn du selber 
bauen MÖCHTEST, will ich dich davon natürlich nicht abhalten =)

MfG und frohes Löten, Chaos

von Dudu1946 (Gast)


Lesenswert?

> Du gehst zu deinem Elektronikfleischer, ...

lol

So langsam  bekomme ich Hunger - rein virtuell natürlich ... :D

von Bernd S. (bernds1)


Lesenswert?

Thobias, nochmal was zum Thema Quarz. Du kommst auf dem "Sockel-Board" 
nicht mit einem Quarz aus, wenn du in deiner Zielschaltung mit 
unterschiedlichen Frequenzen arbeiten willst.
Ein Beispiel: Du hast einen sehr niedrigen Quarz auf deinem Board, sagen 
wir 1MHz. Deine Ziel-Schaltung soll aber mit einer hohen Frequenz 
arbeiten, z.B. 16MHz. Du steckst jetzt den Quarz in dein 
Programmierboard und setzt die Fuses für 16MHz, weil die der Controller 
ja braucht für die Ziel-Schaltung. In dem Moment, wenn du die Fuses 
programmierst, bleibt der Controller aber stehen und ist nicht mehr 
ansprechbar. Der 1MHz-Quarz schwingt nicht mit den Fuses für 16MHz. Und 
umgekehrt ist es genauso. Schau dir also mal die Datenblätter an, welche 
Bereiche es bei den Fuses gibt und wähle dann 3 oder 4 Quarze aus, mit 
denen du den ganzen Bereich abdecken kannst. Nur mal so grob 
überschlagen würde ich einen ganz niedrigen auswählen, vielleicht 500kHz 
oder so. Dann einen mit 2 MHz, einen mit 8 und einen mit 16MHz.
Vielleicht geht's auch mit weniger. Kommt natürlich auch drauf an, 
welche Takte in deiner Ziel-Schaltung eingesetzt werden. Aber wenn du 
alles vorsiehst, bist du auch für "unvorhergesehene" Fälle gerüstet.
Ansonsten für die Pinbelegungen der einzelnen Prozessoren die 
Datenblätter lesen und danach dann alles zusammenstellen, was du 
brauchst. Dann klappt das schon.

von Spess53 (Gast)


Lesenswert?

Hi

Nicht alles was hinkt ist ein Vergleich. Es geht einfach darum wo die 
Prioritäten liegen. Wenn man Programmieren will, hat man keine Lust sich 
dabei mit Second Hand Programmern und Frickelboards, bei dem du nicht 
weißt ob der Fehler am Programm oder am Board liegt, herum zu schlagen. 
Und das Basteln kommt auch nicht zu kurz denn schließlich nutzt ein µC 
mit dem besten Programm ohne die passende Peripherie selten etwas. Da 
gibt es also genug zu tun.

Einen Lerneffekt sehe ich bei einem Board mit ein paar Fassungen drauf 
auch nicht wirklich.

>Das STK500 kostet 80€.

Wenn ich das auf 11½ Jahre rechne macht das bei mir ca. 7€ pro Jahr. 
Empfinde ich nicht als teuer.

>Das AVR Dragon 50€.

Wenn du wirklich irgendwann mal dazu kommst größere Programme zu 
schreiben wirst du dir Annehmlichkeit das Programm in der realen 
Schaltung zu debuggen mit Sicherheit wünschen. Und die Möglichkeit der 
HV-Programmierung wirst du spätestens beim ersten verfusten AVR bei 
deinem Programmer vermissen.

Aber was schreibe ich hier eigentlich? Deine Prämissen liegen definitiv 
wo anders.

Viel Erfolg noch.

MfG Spess

von Dudu1946 (Gast)


Lesenswert?

> Den Programmer habe ich schon. Steht da ganz oben im Eingangspost
> aber auch schon.
Ja sry, hab ich überlesen.


Im Grunde ist das Pollin Board nix anderes als was Du beschreibst, Du 
baust das gerade nach.
Dort sind 5 Sockel drauf, die Pins zusammengeführt (nicht auf 
Lochraster, sondern auf einer fertigen Platine), diverse Abblock-Cs und 
Pull Up/Down sonstwohin, ein Spannungsregler, und ein ISP Stecker. Ich 
seh jetzt nicht viel überladenes hierbei - und trotzdem Fun beim Bauen. 
Wenn Du das alles auf Lochraster machen willst, viel Spass beim 
verdrahten ...

von Bernd S. (bernds1)


Lesenswert?

j. t. schrieb:
>
> Den Quarz brauchst du nicht unbedingt, da dir der MySmartUSB MKII den
> ISP-Takt direkt mitliefert.

Den ISP-Takt schon, aber wenn der Prozessor nicht mehr läuft, weil er 
gerade mit den Fuses vom internen Oszillator auf einen externen Quarz 
umgeschaltet wurde, dieser aber nicht da ist, nützt der ISP-Takt nichts. 
Der Prozessor ist nicht mehr ansprechbar. Zum Programmieren muß der 
Prozessor ein Taktsignal bekommen. Der ISP-Takt ist nur für die 
Datenübertragung beim Programmieren da, er betreibt nicht den 
Prozessor.

Nur, wenn man beim internen Oszillator bleibt und keine Fuses ändert, 
nur dann braucht man keinen Quarz.

Wenn ich dich falsch verstanden habe, korrigiere mich bitte, ok? :-)

von J. T. (chaoskind)


Lesenswert?

Also ich konnte meinen Mega32 auch immer auf dem MultiBoard flashen. Da 
ist ein 3,6864MHz Quarz drauf, also eher die Low oder Middle 
ExternQuarz-Fuse, betrieben habe ich ihn aber mit nem 18,432MHz Quarz in 
der Schaltung. Also in der ExternQuarz High Fuse. Das ging immer 
problemlos.

Ich meine auch irgendwo in der Dokumentation gelesen zu haben, das der 
Quarz dafür da ist, einen Takt vorzugeben, wenn man sich per Fuse 
ausgesperrt hat, aber fürs Programmieren nicht benötigt wird.

von Thobias R. (mc-anfaenger)


Lesenswert?

Die von mir oben genannten MCs haben bei 8, 28 und 40 Pin dieselbe 
Belegung, jedenfalls bei VCC, GND und den Programmierports.

@Spess53
Danke dir für die Hilfe bisher. Finds klasse wenn die Leute sich 
Gedanken zu etwas machen.

Es ist nur leider etwas zuviel Gedanken. Ich möchte es halt klein 
anfangen, und erstmal so ein paar Grundfunktionen erstellen. Durchaus 
möglich, dass mir das später zu wenig ist, und dann muss ich mir 
überlegen ob meine kleine Platine sinnig ist oder nicht. Auch kommt es 
darauf an, ob ich damit zurecht komme oder nicht.

@Bernd S.
http://www.mikrocontroller.net/articles/AVR_Typen

Hier steht in etwa bei den Megas 20Mhz als Max.-Wert aber 16Mhz würde 
damit schonmal alle einschließen bei den Megas. Ergo alle die ich hier 
verwenden würde beim 40 und 28-Pin Sockel.

Dann bliebe eben noch der 8-Pin Sockel für die kleinen Tinys über.
Die Tinys beginnen bei 4Mhz (als Maximum). Ergo müsste 4Mhz für die 
Tinys immer gehen oder?

von Bernd S. (bernds1)


Lesenswert?

j. t. schrieb:
> ist ein 3,6864MHz Quarz drauf, also eher die Low oder Middle
>

Müßte man mal probieren, ob man mit dem 3,6864MHz-Quarz den ganzen 
möglichen Bereich abdecken kann. Ich kann's nicht sagen.

Aber ich glaube mich zu erinnern, daß beim STK-500 auch dieser Quarz 
eingesetzt ist. Aber nicht als reiner Quarz, sondern in einer externen 
Oszillatorschaltung. Die schwingt ja dann auf jeden Fall und dieser Takt 
kann mittels Jumper auf den Prozessor gesteckt werden und diesem damit 
mit einem Takt zu versorgen. Wenn man den bei XTAL1 einspeist, müßte es 
immer funktionieren. Der Prozessor läuft und kann programmiert werden.

Das wäre auch eine gute Möglichkeit für Thobias. Wenn er einen 
Oszillator auf das Programmierboard baut, kann er die zu 
programmierenden Controller damit versorgen und hat damit auch eine 
Chance, wenn er sich mal "verfust" hat.

> Ich meine auch irgendwo in der Dokumentation gelesen zu haben, das der
> Quarz dafür da ist, einen Takt vorzugeben, wenn man sich per Fuse
> ausgesperrt hat, aber fürs Programmieren nicht benötigt wird.

Doch, braucht man zum Programmieren, sonst reagiert der Controller ja 
nicht mehr. Den Takt, wie schon gesagt, kann man von außen in den 
Controller einspeisen und ihn damit wieder zum Leben erwecken. Und wenn 
er lebt, kann man dann auch die Fuses wieder ändern, also ihn 
programmieren.

von Spess53 (Gast)


Lesenswert?

Hi

>Aber ich glaube mich zu erinnern, daß beim STK-500 auch dieser Quarz
>eingesetzt ist. Aber nicht als reiner Quarz, sondern in einer externen
>Oszillatorschaltung. Die schwingt ja dann auf jeden Fall und dieser Takt
>kann mittels Jumper auf den Prozessor gesteckt werden und diesem damit
>mit einem Takt zu versorgen.

Die Erinnerung trügt dich . Auf dem STK500 ist ein  7,3728 MHz Quarz. 
Und der versorgt, je nach Alter des STK500, einen AT90S8535 oder 
ATMega8535. Dieser erzeugt per CTC einen einstellbaren Takt von maximal 
3,6864 MHz. Die Oszillatorschaltung ist für die Quarzfassung.

MfG Spess

von Bernd S. (bernds1)


Lesenswert?

Spess53 schrieb:
> Hi
>
>>Aber ich glaube mich zu erinnern, daß beim STK-500 auch dieser Quarz
>>eingesetzt ist. Aber nicht als reiner Quarz, sondern in einer externen
>>Oszillatorschaltung. Die schwingt ja dann auf jeden Fall und dieser Takt
>>kann mittels Jumper auf den Prozessor gesteckt werden und diesem damit
>>mit einem Takt zu versorgen.
>
> Die Erinnerung trügt dich . Auf dem STK500 ist ein  7,3728 MHz Quarz.
> Und der versorgt, je nach Alter des STK500, einen AT90S8535 oder
> ATMega8535. Dieser erzeugt per CTC einen einstellbaren Takt von maximal
> 3,6864 MHz. Die Oszillatorschaltung ist für die Quarzfassung.
>
> MfG Spess

Richtig, stimmt. Den Takt kann man einstellen, den man auf den zu 
programmierenden Controller gibt. Und man konnte auch mit einem Jumper 
auswählen, daß man den Takt von dem Quarzoszillator nimmt. Bei diesem 
Oszillator ist aber kein fester 3,6MHz-Quarz verbaut, sondern eine 
Fassung. Und in die kann man einen Quarz von 1..20MHz einstecken.

Lang ist's her... :-)

Mir kam es nur darauf an, daß man auf dem STK einen Takt in den 
Prozessor einspeisen kann und ihn damit "beleben" kann, wenn er wegen 
falscher Fuses nicht selbst schwingt, damit keinen Systemtakt hat und 
nicht programmiert werden kann. Die Takterzeugung auf dem STK hatte ich 
nicht mehr so genau im Kopf.

Gruß Bernd

von Spess53 (Gast)


Lesenswert?

Hi

>Mir kam es nur darauf an, daß man auf dem STK einen Takt in den
>Prozessor einspeisen kann und ihn damit "beleben" kann, wenn er wegen
>falscher Fuses nicht selbst schwingt, damit keinen System<takt hat und
>nicht programmiert werden kann. Die Takterzeugung auf dem STK hatte ich
>nicht mehr so genau im Kopf.

Das ist aber auch nicht immer das Allheilmittel. Aber dafür kann das 
STK500 ja HV-Progrmmierung.


@ j. t. (chaoskind)

Apropos Gulasch: Das was du vorhast würde ich eher mit: ein Kalb 
großziehen um aus dem Rind Gulasch zu machen vergleichen.

MfG Spess

von Thobias R. (mc-anfaenger)


Lesenswert?

Ok, das wäre natürlich auch eine Möglichkeit, einfach anstatt den Quarz 
eine Fassung für diesen einbauen.

Auf die Idee bin ich gar nicht gekommen.

Danke nochmals!

In dem Sinne werde ich mich mal ransetzen und mir ein wenig die 
Verdrahtung ansehen, es sind ja nur ein paar Kontakte, immerhin sind es 
jetzt letztlich nur 1 Widerstand und ca. 5 Kondensatoren. Der Rest sind 
3 Sockel und jetzt der für den Quarz.

Bevor ich mir die Fuses kaputt schreibe werde ich die in Ruhe lassen und 
bei Fragen mich an euch wenden. So beginnt der klassische Gulasch nur 
mit Fleisch, Zwiebeln, Salz, Pfeffer. Später kommt Piment und Lorbeer 
dazu, dann Knoblauch und vielleicht werd ich mal Paprika/Pilze nehmen.

Bis dahin aber wirds altmodisch gemacht.

Danke nochmals an alle hier im Thread. Im übrigen möchte ich noch was 
kurzes schreiben:
Auch Kritik ist immer erwünscht, denn sie zeigt auch Fehler in der 
Denkweise auf. Daher freue ich mich auch immer, wenn jemand die Sache 
kritisch betrachtet und schreibt wenn etwas aus seiner Sicht Käse ist. 
Sie hilft ebenso darüber nachzudenken, was man überhaupt will. In dem 
Falle will ich einfach ne kleine Platine haben, mit der ich die Chips 
programmiere. Wenn später noch mehr dazukommt, in dem Fall werde ich 
einfach wieder wie bisher einlesen und fragen wenn etwas unklar ist.

Die Erfahrungen kann man noch dokumentieren, in dem Fall ist es später 
auch nachvollziehbar für Andere.

Daher noch einmal: Danke!

von Bernd S. (bernds1)


Lesenswert?

Viel Erfolg bei der Platine!
Und überleg dir auch mal die Möglichkeit, per ISP den Controller in der 
Schaltung zu programmieren, da kommt man schneller zum Ziel und kann 
auch mal "am lebenden Objekt" testen, ohne was umstecken zu müssen.

Gruß Bernd

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.