heise online Logo
Anmelden
Menü Menue
IT News
  • Newsticker
  • heise Developer
  • heise Netze
  • heise Open Source
  • heise Security
Online-Magazine
  • heise+
  • Telepolis
  • heise Autos
  • TechStage
  • tipps+tricks
Magazine
  • c't
  • iX
  • Technology Review
  • c't Fotografie
  • Mac & i
  • Make
  • im Browser lesen und Artikel-Archiv
Services
  • Stellenmarkt heise Jobs
  • Weiterbildung
  • heise Download
  • Preisvergleich
  • Whitepaper/Webcasts
  • DSL-Vergleich
  • Netzwerk-Tools
  • Spielen bei Heise
  • Loseblattwerke
  • iMonitor
  • IT-Markt
Heise Medien
  • heise shop
  • Abo
  • Veranstaltungen
  • Arbeiten bei Heise
  • Mediadaten
  • Presse
Anzeige SecurityHub Online-Marketing
Newsletter heise-Bot heise-Bot Push Nachrichten Push Push-Nachrichten
make
  • Newsletter
  • Kontakt
  • Heft
  • Make: Projects
  • Mitmachen
  • Foren
  • Über uns
maker_faire
  1. Make
  2. Hintergrund
  3. Microcontroller flashen: Arduino Uno als In-System-Programmer

Microcontroller flashen: Arduino Uno als In-System-Programmer

Hintergrund 04.08.2015 16:54 Uhr Daniel Bachfeld
Inhaltsverzeichnis
  1. Microcontroller flashen: Arduino Uno als In-System-Programmer
  2. Fremdgänger
  3. Sicherungen
  4. PICs programmieren
  5. Fazit
  6. Auf einer Seite lesen

Die Arduino-Plattform hat sich in der Bastlerszene unter anderem auch deshalb durchgesetzt, weil man keine speziellen Adapter benötigt, um ein Programm in den Flash-Speicher des Mikrocontrollers zu schreiben. Praktischerweise lässt sich der Arduino sogar selbst als Universal-Programmieradapter nutzen, um einzelne Mikrocontroller wie AVRs und PICs zu flashen.

Zutaten:
  • Arduino Uno
  • Breadboard
  • Drahtbrücken
  • Elko, 10µF

Ein Arduino eignet sich fürs Prototyping bestens. Mit mehr als 20 Euro ist der stationäre Einsatz in einer Schaltung allerdings nicht ganz billig, vor allem wenn ein ATmega für ein paar Euro und ein paar weitere Bauteile ausreichen würden. Während beim Arduino der Bootloader über die herkömmliche serielle Schnittstelle (via USB2Serial-Wandler) mit einem PC spricht, programmiert man einen "nackten" ATmega in der Regel direkt "In System" über sein Serial Peripheral Interface (SPI). Ein normaler PC unterstützt zwar die normale asynchrone, serielle RS232-Schnittstelle, jedoch nicht die synchrone SPI. Deshalb benötigt man einen Übersetzer – einen Programmer. Die Bandbreite reicht dabei von billigen Modellen wie den USBasp über den "AVR ISP" bis hin zu ganzen Evaluierungsboards wie dem STK500 beziehungsweise STK600.

Die Arduino-IDE unterstützt verschiedene externe Programmer. Auch der USBasp findet sich neben dem hauseigenen ArduinoISP.

Zum Flashen des Controller-Speichers arbeitet der externe Programmer als sogenannter Master, der den Atmel-Prozessor (Slave) steuert. Über die Reset-Leitung RST (Low) bringt er den Atmel in den programmierbereiten Zustand. Den Takt für die Datenübertragung gibt der Master über die Leitung SCK vor. Über die Leitung MOSI (Master Out, Slave in) sendet er Befehle an den Slave, die in der Regel aus vier Bytes bestehen. Das erste Byte signalisiert die gewünschte Operation und den Zielspeicher, etwa ob in das Flash oder das EEPROM geschrieben werden soll. Die Bytes zwei und drei enthalten die Speicheradresse; zuletzt kommt das Datenbyte.

Die Arduino-IDE bringt in den Beispielen bereits den Sketch für ArduinoISP mit. Den muss man zuerst per Upload in der Arduino übertragen.

Über die Leitung MISO (Master In, Slave Out) kann der Programmer hingegen nach Übermittlung des passenden Befehls Daten auslesen. Zwischen den Operationen sind gewisse Pausen einzuhalten. Genauere Details zum Ablauf beschreibt Atmel in seiner frei verfügbaren Application Note AVR910 [PDF]. Diese haben die Arduino-Entwickler genutzt, um mit ihren Boards einen AVR-Programmer nachzubilden. Auf diese Weise kann man im ersten Schritt mit einem Arduino sein Programm austesten und im zweiten Schritt denselben Arduino (mit einem anderen Sketch) nutzen, um das Programm in einen externen ATmega zu brennen.

Vorherige 1 2 3 4 5 Nächste
Kommentare lesen (2 Beiträge)

Mehr zum Thema

  • Arduino

Forum bei heise online: Arduino und Mikrocontroller

Teile diesen Beitrag

https://heise.de/-2769246 Drucken
Eigenwerbung
Das aktuelle Heft

Die Make 2/2021 können Sie ab sofort im Zeitschriftenhandel und Heise Shop kaufen. Auf 138 Seiten u.a. mit diesen Themen: Sprachausgabe · ESP32CAM · Plasmaschneider · Grafik-Workshop

Heft bestellen
Vorschau

Die Make 2/21 erscheint am 8. April 2021.

Anzeige
Anzeige
  • Themenspecial: Moderne IT-Infrastruktur
  • E-Commerce-Trends, die sich für Sie lohnen
  • So können Sie heterogene Netze effizient managen
  • Online-Konferenz: Kotlin-Wissen für Entwickler
  • Couchbase – Plattform für Ihre Daten!
  • Wie und womit arbeiten Data-Science-Experten?
  • User-Accounts effektiv schützen mit MFA & YubiKeys
  • Transformation im Supermarkt – aus der Praxis!
  • Success Story (+Demo): Patch-Management in Praxis
  • Sichere Videokonferenzen im Unternehmen
Eigenwerbung
Make Education

Kostenlose Make-Artikel für Lehrkräfte

Make Education unterstützt Lehrerinnen und Lehrer bei der kreativen und praxisorientierten Unterrichtsgestaltung in den naturwissenschaftlichen Fächern. Jetzt anmelden!

Termine

Fehlt eine Veranstaltung? Termin eintragen

Make Das aktuelle Sonderheft

Eigenwerbung

Make PICAXE Special

  • Exklusiv nur im heise shop erhältlich
  • Hard- & Software einfach erklärt
  • Einführung in BASIC
  • PICAXE-Software einrichten
  • Im Set mit Nano-Axe-Board und PICAXE-08M2
Portofrei bestellen!
  • Aktuell
  • Hintergrund
  • Projekte
  • Heft
  • Make: Projects
  • Mitmachen
  • Foren
    • Elektronik Arduino Raspberry Pi 3D-Druck
  • Über uns
  • Newsletter
  • Kalender
  • Service
    • Twitter
    • Facebook
    • YouTube
    • Instagram
    • RSS
  • Datenschutzhinweis
  • Cookies & Tracking
  • Impressum
  • Kontakt
  • Mediadaten
  • Content Management by InterRed
  • Copyright © 2021 Heise Medien