Hi, nachdem ich das DG12232 endlich erfolgreich und ohne weitere Probleme mit einer Assembler-Ansteuerung ans Laufen gekriegt hab, treten jetzt Probleme mit der EEPROM-Programmierung auf. Folgendes ist mir aufgefallen: Beim Compilieren der Code-Datei mit avrasm2
1 | avrasm2.exe -fI LCD12232.avrasm -o LCD12232.hex -e LCD12232.eeprom |
wird aus dieser .ESEG-Direktive ganz am Programmende
1 | .ESEG ; EEPROM-Datensektion |
2 | dummy_Word_gegen_Brownout: |
3 | .dw 0 |
4 | Uhrzeit_Stunden: |
5 | .db 12 |
6 | Uhrzeit_Minuten: |
7 | .db 34 |
8 | NumIntervals: |
9 | .db 0 |
10 | Umdrehungen_save: ; 72 Speicherplätze für die Kurve |
11 | .db 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0 |
12 | NumRotAddr: |
13 | .dw Umdrehungen_save |
14 | MinNumRotAddr: |
15 | .dw Umdrehungen_save |
folgende EEPROM-Datei LCD12232.eeprom erzeugt:
1 | :10000000000000000C2200000000000000000000C2 |
2 | :1000100000000000000000000000000000000000E0 |
3 | :1000200000000000000000000000000000000000D0 |
4 | :1000300000000000000000000000000000000000C0 |
5 | :1000400000000000000000000000000000000007A9 |
6 | :03005000000700A6 |
7 | :00000001FF |
Die Codierung ":llaaaatt[dd...]cc" der EEPROM_Datei nach Intel Hex kenn ich, aber ich hab doch keine fünfmal zehn Bytes reserviert? Eigentlich sollte doch sowas rauskommen:
1 | :020000000000XX (zu faul, die Prüfsumme auszurechnen) |
2 | :010001000CXX |
3 | :0100020022XX |
4 | :0100030000XX |
5 | etc |
Kann mir bitte jemand helfen, den Fehler zu sehen?