Gast
#4621973
Hallo Leute, ich programmiere einen ISP Programmer selbst (in C). Ich kann bis jetzt Fuses lesen/schreiben, Signature Bytes lesen, und einen Chip-Erase durchführen. Was aber irgendwie absolut nicht klappen will, ist das Beschreiben des Flash. Nachfolgend die Funktion die das eigentlich machen soll. Vorher wird die Funktion aufgerufen, welche die Daten über die Uart entgegen nimmt und parsed. Diese Funktion habe ich von meinem Bootloader genommen, die funktioniert (splittet einfach das hex-format auf und gibt die Daten in entsprechenden Variablen/Arrays wieder). Es geht hierbei um einen Attiny13 der beschrieben werden soll. Ich sende die Befehle, Adresse unteren 4bit (2x die Daten an die gleiche Adresse, erst LSB dann MSB). Dann (wenn das insg. 32 byte geladen wurden in den buffer), wird die page geschrieben. Ich habe mal das Dokument (IST.hex) angehängt, und das was drauf geschrieben werden soll (SOLL.hex). Kann mir jmd. sagen, was ich dort falsch mache?
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 | |