Servus Gemeinde, ich habe ein custom Board mit einem AT SAM3S2 drauf. Dieses soll im Feld über USB geupdated werden. Dazu habe ich in meinem Programm eine Funktion um das Boot-bit auf ROM umstellen zu können und zu resetten. Das Board startet dann in den SAM-BA Bootloader. Soweit so gut, ein upload des neuen Programmes um ein Umstellen des Boot-Bit zurück auf Flash geht auch einwandfrei. Ich finde jedoch keine Möglichkeit aus dem Bootloader heraus das Board wieder zu resetten um das Programm wieder zu starten. Man muss also an dieser Stelle manuell eingreifen und den Stecker einmal ziehen. Gibt es eine Möglichkeit SAM-BA das User-Programm starten zu lassen, oder einfach die CPU zu resetten? Gruß Fabian
Gast
#5136626
Ohne den Controller zu kennen, das sollte über RSTC_CR gehen.
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
Wie ich das aus einem Programm raus mache ist klar. Dafür gibts sogar in der Atmel ASF Befehle. Der im ROM befindliche Bootloader SAM-BA scheint aber keinen direkten Befehl zu kennen. Ich habe bisher auch keine Infos dazu bekommen ob es überhaupt möglich ist. Theoretisch müsste es möglich sein, ein mini-Programm zu erstellen, das man über SAM-BA in den RAM schreibt und dann dort ausführt... Da der SAM-BA Bootloader scheinbar in vielen ARM Cores enthalten ist, sollte das kein reines Atmel Thema sein... Vielleicht kennt dazu jemand was?
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.