
jag har tittat lite på TinyPic bootloader, som är på enbart 100 rader och väldigt väldigt enkel, men skriven till pic 18 serien.
jag har fått ett humm om hur bootloadern fungerar, men skulle endå behöva lite hjälp på traven.
Min första fråga handlar om HEX-filen, som skulle kunna se ut ung såhär, om man kör en förkortning.
:020000040000fa
:080000000001040000000000f3
:020000040000fa
:100200006f8020008079220000018800000000003b
:10021000050007000c0007009c020200000000001f
:100220000040da000000fe004440a900003c20002d
.
en jävla massa siffror.
.
:1001c8006008000060080000600800006008000087
:1001d8006008000060080000600800006008000077
:1001e8006008000060080000600800006008000067
:0801f80060080000600800002f
:020000040000fa
:0410c0000000fe002e
:00000001FF
förklaringen till hexfilen har jag fått här:
"Each line of an Intel HEX data file is structured as follows:
:nnaaaattdddddddddddddddddddddddddddddd cc
: indicates the start of a data record, nn indicates the number of bytes in the record,
aaaa is the load address of the record, tt is the record type, d is the actual data, and
cc is the checksum. All values are in ASCII/HEX. The checksum is calculated by
performing 8-bit additions of every byte between nn and the end of data. The twos
complement is then taken of this sum to get the checksum."
Min fråga handlar om bokstäverna eller talet "tt" i hexkoden som jag förstått det, förklarar i vilket minne som "datat" skall skrivas.
jag har hittat 2 typer i min hexkod nummer 00 och 04.
00 förmodar jag är flashminnet.
04 har jag ingen aning om
fråga: vilka typer av "tt" finns det, flash borde vara 00, 04, borde vara nått annat, som configbitar eller nått. Men finns det fler "record types" och isf vilka? vad har eepromet för tracknummer t.ex??
Vet någon vart man kan hitta information och källkod till bootloaders och själva probammet i PC'n som skickar all data över serieporten?