Forum: Mikrocontroller und Digitale Elektronik Mikrocontroller über UART programmieren


von Hanna (Gast)


Lesenswert?

Hallo liebe Leute,

ich habe folgende Fragestellung:
Ich nutze momentan einen ATMEL ICE um einen Mikrocontroller, den 
SAMD21J18A, zu programmieren.
In Zukunft möchte ich den uC aber über eine USB Schnittstelle mit 
USB/UART Wandler dazwischen programmieren, wenn ich etwas am Programm 
ändere.
Sprich, ich möchte einmal ein Programm hochladen mit dem ATMEL ICE und 
danach nur noch die USB/UART Schnittstelle benutzen, wenn ich ein neues 
Programm hochladen möchte.

Der ATMEL ICE ist am Mikrocontroller an den Pins angeschlossen, die zum 
Programmieren vorgesehen sind (PA30=SWCLK, PA31=SWDIO).
Die USB/UART Schnittstelle an den Pins PB16 und PB17.
Die Kommunikation über die USB/UART Schnittstelle funktioniert bereits 
und ich kann den Controller auch mit dem ATMEL ICE programmieren

Jetzt habe ich die Vorahnung, dass ich eine Art mini-Programm schreiben 
muss, das ich in den Flash Speicher schreibe und nicht mehr lösche, das 
mir ein neues Programm (=Daten die ich über die USB/UART Schnittstelle 
bekomme) in den Programm-Speicher schreibt.
Oder so ähnlich.
Ich bin sicher, dass das schonmal jemand vor mir gemacht hat?!

Könnte jemand seine Erfahrungen teilen oder Beispielcode hochladen.
Ich würde mich auch über Literatur-Hinweise oder passende Youtube Videos 
freuen. Mir fehlen momentan ein wenig die Schlagwörter, nach denen ich 
googeln kann.

Danke für jede Unterstützung! :-)
Hanna

von The Weasel (Gast)


Lesenswert?


von Ralph S. (jjflash)


Lesenswert?


von Wolfgang (Gast)


Lesenswert?

Hanna schrieb:
> Jetzt habe ich die Vorahnung, dass ich eine Art mini-Programm schreiben
> muss, das ich in den Flash Speicher schreibe und nicht mehr lösche ...

Deine Vorahnung täuscht dich nicht. Im Datenblatt steht mehr zu dem 
Thema.
Der Schutz passiert über die BOOTPROT Bits. Mit 3 Bits wird die Größe 
des für den Bootloader geschützen Bereiches festgelegt (Kap. 22.6.5 NVM 
User Configuration).
Einfach mal Datenblatt lesen ...

von jo mei (Gast)


Lesenswert?

Wolfgang schrieb:
> Deine Vorahnung täuscht dich nicht.

Allerdings muss sich der User nicht gezwungen fühlen das Rad
neu zu erfinden. Hier z.B. (Wunder oh Wunder) gibt es schon
erfundene Räder:

https://github.com/arduino/ArduinoCore-samd/tree/master/bootloaders/

von Hanna (Gast)


Lesenswert?

Perfekt! Vielen Dank. Das hilft schonmal weiter :)

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.