Forum: Mikrocontroller und Digitale Elektronik Nochmal für Dummies: Bootlader Atmega - Quarz nötig oder nicht


von Markus H. (derampcsitzt)


Lesenswert?

Hoi!

Bin erst seit kurzem dabei mit Mikrocontrollern zu arbeiten und es ist
echt mega (höhö Wortspiel) spannend für mich, hab auch schon meine 
Erfolge feiern können
:)
Für'n Anfang habe ich ein Arduino UNO gekauft, dazu einen "leeren"
Atmega328p falls mal was schief geht und zwei Tinys (25 und 85) um noch
was ganz minimalistisches machen zu können.

Als ISP-Programmer benutze ich den UNO was einwandfrei auf Anhieb
funktioniert, angefangen die Tinys zu flashen mit Programmen wollte ich
dann den Atmega als Ersatz mit einem Bootloder versehen - nur das hat
nicht geklappt weil einfach kein Zugriff (synchronisationsfehler)
möglich war bis ich den Tipp bekam den veränderten "Arduino as
ISP2"-Sketch zu verwenden bei dem der Takt vom UNO auf den Atmega
gegeben wird und et voilà es hat geklappt - warum auch immer. Eigentlich
sollte ja der Atmega ab werk mit dem internen Takt laufen und direkt
ohne externen Quarz beschrieben werden können. (Einen passenden Quarz
habe ich leider NICHT zur Verfügung bisher)

Was ich jetzt selbst nach EWIGEM recherchieren (und ich hab verdammt
viele Anleitungen und Videos angeschaut) noch nicht ganz kapiert habe:
Die Fuses müssen gesetzt werden um den Takt richtig einzustellen
(intern,extern, ect) soviel hab ich verstanden aber:

-wenn der Mega auf internen Takt eingestellt ist (ab Werk zum Beispiel)
und ich möchte den Bootloader brennen (16MHZ externer Takt) muss dann
bereits ein Quarz angeschlossen sein?

-umgekehrt die Fuses seien auf externen Takt gesetzt und ich möchte zum
Beispiel den Bootloader löschen und setzte dabei die Fuses auf den
internen Takt - wie ist es da dann mit dem Quarz?

Also was ich eigentlich nur verstehen will ist wann muss ein quarz ran
und wann nicht wenn die entsprechenden Fuses so oder so eingestellt sind
und geändert werden?!

Und vielleicht hat noch jemand eine Idee warum mein werksfrischer Atmega
(von Reichelt gekauft) nicht ohne den externen Takt erreichbar war? Dass
die Fuses NICHT auf internen Takt gestellt waren soll ja angeblich nicht
sein können.

Achja ich arbeite mit der Arduino IDE, habe auch direkt mit dem AVR-Dude 
probiert und programmieren tu ich mit Great Cow Basic (bitte spart euch 
Kommentare dazu....)

MfG
Markus

von Charly B. (charly)


Lesenswert?

als 1.: bootloader und quarz haben erstamals NIX miteinander zu tun

klar muss der bootloader an den takt (woher auch immer der kommt) 
angepasst sein, i gehe von einem bootloader f. die serielle aus

ab werk ist der AVR auf 8Mhz intern mit clkdiv8 eingestellt, der rennt 
dann mit 1 Mhz, event war dein Programmer zu schnell dafuer, langsamste 
Geschwindigkeit am Programmer verwenden (und am besten den clkdiv8 
'loeschen' damit er mit 8Mhz rennt

VlG
Charly

von Rath Geber (Gast)


Lesenswert?

Tue dir (und uns) bitte einen Gefallen und kaufe dir einen
anständigen Programmer. Der kostet 20 Euro oder ein bisschen
mehr, damit kannst du alles programmieren und stehst im
Fehlerfall nicht vor dem Nichts. In Verbindung mit dem
Atmel Studio (v4.18) - welches du kostenlos bekommst - hast
du ein durchsichtiges verständliches Programmiertool welches
dich nicht im Unklaren lässt was gerade passiert (ist).

AVRISP MKII:

https://www.amazon.de/s?k=avr+isp+mkii&__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&crid=36SUMA7XVRYEA&sprefix=avr+isp+mkii%2Caps%2C184&ref=nb_sb_noss_1

Nimm den im blauen Plasik-Gehäuse.

von c-hater (Gast)


Lesenswert?

Markus H. schrieb:

> -wenn der Mega auf internen Takt eingestellt ist (ab Werk zum Beispiel)
> und ich möchte den Bootloader brennen (16MHZ externer Takt) muss dann
> bereits ein Quarz angeschlossen sein?

Nein. Du wirst nur den Controller nicht mehr erreichen, nachdem er 
erfolgreich gebrannt wurde (inclusive Fuses), wenn die externe Hardware 
nicht angeschlossen ist.

> -umgekehrt die Fuses seien auf externen Takt gesetzt und ich möchte zum
> Beispiel den Bootloader löschen und setzte dabei die Fuses auf den
> internen Takt - wie ist es da dann mit dem Quarz?

Im Prinzip genauso: So lange die Fuses auf externen Takt stehen, muss 
der natürlich auch geliefert werden, die entsprechenden externen 
Bauelemente müssen also angeschlossen sein.

Diese Sachen sind so dermaßen logisch, ich kann nicht verstehen, was man 
daran nicht verstehen kann.

> Und vielleicht hat noch jemand eine Idee warum mein werksfrischer Atmega
> (von Reichelt gekauft) nicht ohne den externen Takt erreichbar war?

Das lag mit an Sicherheit grenzendender Wahrscheinlichkeit an was 
anderem. Kontaktprobleme und/oder falsche Schaltung und/oder falsche 
Bedienung. Kurzfassung: an DIR.

von Charly B. (charly)


Lesenswert?

Rath Geber schrieb:

> Nimm den im blauen Plasik-Gehäuse.
Warum?, schmeckt der besser?..........

SCNR

von LostInMusic (Gast)


Lesenswert?

>Also was ich eigentlich nur verstehen will ist wann muss ein quarz ran
>und wann nicht wenn die entsprechenden Fuses so oder so eingestellt sind
>und geändert werden?!

Laut DB kann die Fuse auf eine dieser Optionen gesetzt werden:

- Low Power Crystal Oscillator
- Full Swing Crystal Oscillator
- Low Frequency Crystal Oscillator
- Internal 128kHz RC Oscillator
- Calibrated Internal RC Oscillator
- External Clock

Ein Quarz (oder Keramikresonator) muss an den µC angeschlossen werden in 
allen Einstellungen, in denen das Wort "Crystal" vorkommt.

>Und vielleicht hat noch jemand eine Idee warum mein werksfrischer Atmega
>(von Reichelt gekauft) nicht ohne den externen Takt erreichbar war?

Das ist tatsächlich seltsam.

von Andreas B. (bitverdreher)


Lesenswert?

LostInMusic schrieb:
>>Und vielleicht hat noch jemand eine Idee warum mein werksfrischer Atmega
>>(von Reichelt gekauft) nicht ohne den externen Takt erreichbar war?
>
> Das ist tatsächlich seltsam.

Nö, weil Reichelt auch in CN billigst auf dem Spotmarkt einkauft und 
dort vermutlich eine Charge vorprogrammierter uCs erwischt hat. Das ist 
mir mal mit Tiny85 passiert.
Wer bei Reichelt kauft, ist bei Ali besser bedient. Der Kram ist der 
gleiche, nur ist es bei Ali billiger.

von Rath Geber (Gast)


Lesenswert?

Charly B. schrieb:
> Warum?, schmeckt der besser?

Nicht alles was sich AVRISP MKII nennt ist gleich. Die Version
die im blauen transparenten Plasik-Gehäuse daherkommt ist
wahrscheinlich am besten kompatibel mit dem Original das es
ja nicht mehr neu zu kaufen gibt.

Stichwort: Target Voltage Sensing

von Charly B. (charly)


Lesenswert?

LostInMusic schrieb:

>>Und vielleicht hat noch jemand eine Idee warum mein werksfrischer Atmega
>>(von Reichelt gekauft) nicht ohne den externen Takt erreichbar war?
>
> Das ist tatsächlich seltsam.

Siehe *OBEN!*

@Markus: schau dir mal den Lufa Programmer an, der kann alle 3 Modi die 
bei Atmels ueblich sind und liegt in der gleichen Preisklasse....

von c-hater (Gast)


Lesenswert?

Andreas B. schrieb:

> Nö, weil Reichelt auch in CN billigst auf dem Spotmarkt einkauft und
> dort vermutlich eine Charge vorprogrammierter uCs erwischt hat.

Das wäre ein klarer Produktmangel (denn der Auslieferungszustand ist im 
DB eindeutig definiert und somit zugesicherte Produkteigenschaft).

Wenn das also wirklich passiert sein sollte (ich möchte das nicht völlig 
auschließen), ist es jedenfalls kein Problem für den Käufer. Denn in DE 
kann man sowas nach den in Deutschland geltenden Gesetzen problemlos im 
Zuge der Gewährleistung reklamieren.

Bei ALI hingegen kann man schon froh sein, wenn eine Reklamation 
überhaupt zu Kenntnis genommen wird. Typisch muss man schon ziemlich 
hartnäckig sein, um zu seinem Recht zu kommen.

von EAF (Gast)


Lesenswert?

Markus H. schrieb:
> Achja ich arbeite mit der Arduino IDE,...
Die Arduino IDE setzt beim Bootloader brennen auch die Fuses.
Damit hast du dich abgehangen, wenn kein Quarz/Resonator montiert ist


Markus H. schrieb:
> und programmieren tu ich mit Great Cow Basic (bitte spart euch
> Kommentare dazu....)
Lebe du auf deiner einsamen Insel...
(meinen Segen du hast)

Rath Geber schrieb:
> Tue dir (und uns) bitte einen Gefallen und kaufe dir einen
> anständigen Programmer. D
"Arduino As ISP" ist ein durchaus brauchbarer Programmer.

Beitrag #6921682 wurde von einem Moderator gelöscht.
von Markus H. (derampcsitzt)


Lesenswert?

Achja, schön so schnell soviele Antworten erhalten zu haben - DaNKE 
dafür - und wie erwartet ist alles dabei - von Hilfreich über belehrend 
und überheblich bis hin zu unnütz und unverschämt - ja ich weiß Arduino 
blablabla richtigen Programmer blablablabla - C ist die einzig richtige 
Art zu programmieren blablabla C++ ist eigentlich wirklich viel besser 
noch blablablabla...
50% auf Suche nach Infos zum Thema muss man mit solchen nutzlosen 
Belehrungen rum bringen - so jetzt auch hier (Grundsatzdiskussion: 
WELCHER Programmer ist der Beste - "natürlich den den man selbst benutzt 
alles andere ist Mist")

aber okey, ihr habt mir geholfen das ist ja schon mal was :)




c-hater schrieb:

> Diese Sachen sind so dermaßen logisch, ich kann nicht verstehen, was man
> daran nicht verstehen kann.
>

>
> Das lag mit an Sicherheit grenzendender Wahrscheinlichkeit an was
> anderem. Kontaktprobleme und/oder falsche Schaltung und/oder falsche
> Bedienung. Kurzfassung: an DIR.


Logisch ist das durch aus für mich da kann ich dich beruhigen - nur 
durch meine anfänglichen Probleme war ich dann doch verunsichert, hab 
halt zu viele Sachen mir durchgelesen, teilweise gibt's da dann 
Widersprüche und drum hab ich nochmal nachgefragt zur Sicherheit.

Mein Schaltungsaufbau war durchaus nicht das Problem da ich ja mehrmals 
neu aufgebaut habe, verändert habe und es ja mit den Tinys direkt 
geklappt hat.

Wohl war es so dass ich nach dem ich das erste mal mit dem Arduino as 
ISP die Tinys geflasht hatte und dann direkt den Bootloader auf den 
Atmega brennen wollte das wohl DOCH geklappt hatte und ich somit ohne 
Quarz nicht mehr auf den Atmega zugreifen konnte - ich bin halt davon 
ausgegangen dass das mit dem Bootloader nicht geklappt hatte...

Da mein Elektroniker-Hobby immer nur zeitweise statt findet (das letzte 
mal vor ca 10 Jahren) verzichte ich erstmal auf den Programmer, mit dem 
Arduino klappt es ja einwandfrei bisher auch wenn die Superprofis hier 
hohen Puls bei sowas bekommen 😅

Mfg
Markus

von Andreas B. (bitverdreher)


Lesenswert?

c-hater schrieb:
> Wenn das also wirklich passiert sein sollte (ich möchte das nicht völlig
> auschließen), ist es jedenfalls kein Problem für den Käufer.

Nö, ist es auch nicht. Drüber programmieren und fertig. Aber so etwas 
mache ich nur bei Ali Preisen.
Was chinesische Händler betrifft, habe ich eigentlich recht gute 
Erfahrungen gemacht. Die Abwicklung dauert halt etwas lange.
Und wenn es schnell gehen muß (ok, zur Zeit weniger ;-) ) oder 
definierte Produkteigenschaften sein sollen, dann bestelle ich auch 
nicht bei Reichelt, sondern bei Mouser / RS oder sonstigen seriösen 
Distributoren.

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.