Atmel Mega: Programmierung über ISCP

Gast #129241
Hi,

wenn man die Datenblätter zu den Controllern ließt, werfen sich einige
Fragen auf.

Offensichtlich brauchen Atmel Mega einen Oszillator, damit man sie
programmieren kann.
Die Dokumentation sagt, dass man über die Fuse Bits einen Oszillator
auswählt.

Die Frage wäre nun: Für welchen Oszillator soll man sich entscheiden
(externer Oszillator, Quarz/Kondensatoren, R/C extern, intern) damit
man den Controller immer programmieren kann, unabhängig von den, bei
der letzten Programmierung gewählten, Fuse Bits.

Danke,
Bernd
Gast #129242
Hallo,

also die ATMEGA brauchen keinen Oszillator um sie programmieren zu
können. So wie es aussieht, hast du dich auch noch nicht wirklich gut
mit denen beschäftigt und da würde ich vorerst lieber die Finger von
den Fuse bits lassen. Bringt nur Ärger wenn man keine Plan oder kein
STK500 hat.

Seb
Gast #129243
Hier ist ein Ausschnitt aus der Spezifikation des ATmega128 (Seite 304/
Memory Programming / Serial downloading).

---------
Depending on CKSEL Fuses, a valid clock must be present. The minimum
low and high
periods for the serial clock (SCK) input are defined as follows:
Low:> 2 CPU clock cycles for fck < 12 MHz, 3 CPU clock cycles for fck
&#8805; 12 MHz
High:> 2 CPU clock cycles for fck < 12 MHz, 3 CPU clock cycles for fck
&#8805; 12 MHz
---------

Was mache ich den, wenn ich mich für den externen Oszillator
entschieden habe, und den Controller später einmal stand-alone
programmieren möchte.

Du schreibst, finger weg von den Fuse Bits. Kann man den einen ATmega
mit 16MHz betreiben, ohne externen Oszillator?

Die Frage war vielmehr: Bin ich mit einem externen Oszillator auf der
sicheren Seite? Interner OSZ läuft immer, wenn Fuse auf extern, wäre
das auch OK. Was ist, mit einem externen Quarz?
Gast #129244
Mach es einfach wie im Tutorial angegeben. Wenn in deiner "externen"
Schaltung auch ein Oszillator sitzt, wovon auszugehen ist, dann bist du
damit auf der sicheren Seite.
Externe Oszillatoren machen Sinn, da deren Frequenz wesentlich stabiler
ist (wichtig z.B. für den USART, ...).

Alex
Gast #129245
Der Hauptgrund meine Anfrage ist der. Ich will mir einen eigenes USB In
Circuit Programmiergrät entwerfen, und das soll natürlich so universel
wie möglich sein.

Und da kommt dann schon mal die überlegung auf, was ist, wenn der µP
fest in der Schaltung eingebaut ist und die Schaltung auf den internen
Oszillator ausgelegt ist (keine externer Clock) und man programmiert
aus versehen die Fuse Bits für einen externen Oszillator. Kann man dann
noch irgendetwas machen, ohne den µP auszubauen?
Gast #129246
ja, an xtal1 einen takt anlegen. aber da muss man vorher nachdenken
bevor man write drückt. dann passiert das auch nicht, oder du baust in
deinen programmer eine hardware sicherung ein, die das umprogrammieren
der fuses verhindert, oder, oder....

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.