Gast
#4489273
Hallo, ich nutze den ATXmega128a4u. Dieser hat laut Datenblatt eine Pagegröße von 128 Wörtern, also 256 Bytes. Ich empfange im Bootloader über UART nach und nach die Zeilen aus dem Hexfile ohne dem ":". Zum Schreiben des Flahes nutze ich den Code der Appnote AVR1316. Folgende Funktionen setzen ein Byte in meine im RAM liegende Page und aktualisiert ggf. den Flash:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
27 | |
28 | |
29 | |
30 | |
31 | |
32 | |
33 | |
34 | |
35 | |
36 | |
37 | |
38 | |
39 | |
40 | |
Wenn ich nach einem Testlauf den Flash auslese, stimmen die Anzahl der beschriebenen Pages, diese sind aber nur zur Hälfte mit (teils) unkorrektem Inhalt gefüllt. Kann mich jemand auf die richtige Fährte führen? Danke!