Hallo rufus,
habe sdcc geupdated auf 3.6.0. Der PIC16F747 würde jetzt funktioniert.
Beim anderen muss ich mich nochmal später erkundigen.
Habe allerdings jetzt ein neues Anfängerproblem...
Ich habe folgenden simplen C-Code:
1 | #include<stdint.h>
|
2 |
|
3 | /// globale Variablen/Konstanten
|
4 |
|
5 | void main(void){
|
6 | /// Initialisierungen
|
7 |
|
8 | while(1){
|
9 | /// Hauptprogramm
|
10 |
|
11 | }
|
12 | }
|
Wenn ich das ganze mit folgendem Befehl kompiliere
1 | /opt/sdcc-3.6.0-rc1/bin/sdcc --opt-code-size -I "/opt/sdcc-3.6.0-rc1/share/sdcc/include" --use-non-free -mpic14 -p16f747 -o out main.c
|
erhalte ich folgende HEX-Datei:
1 | :020000040000FA
|
2 | :1000000000008A110328D330FE000030FF0080304A
|
3 | :100010008A110000B2208A11000083120313A1008C
|
4 | :100020007F08A000D530A2000030A3008312031384
|
5 | :100030002008A4002108A500FF30A007031CA1038D
|
6 | :100040002408250403199B2804302207A400A501D5
|
7 | :10005000A50D2308A5072408FE002508FF00803011
|
8 | :100060008A110000B2208A11000083120313A70036
|
9 | :100070007F08A6002208FE002308FF0080308A11B6
|
10 | :100080000000B2208A11000083120313A900A5000A
|
11 | :100090007F08A800A40002302207A400A501A50D36
|
12 | :1000A0002308A5072408FE002508FF0080308A11D8
|
13 | :1000B0000000B2208A11000083120313A500AB00D8
|
14 | :1000C0007F08A400AA00831203132608AA002708A9
|
15 | :1000D000AB00FF30A607031CA7032A082B04031953
|
16 | :1000E00094282808FE002908FF0080308A110000AB
|
17 | :1000F0009F208A11000083120313AA002408831290
|
18 | :1001000003138400831383120313251883172A080B
|
19 | :1001100083120313800083120313A80A0319A90A88
|
20 | :10012000A40A0319A50A6328063083120313A20741
|
21 | :100130000318A30A16288A110000DB280800003AD9
|
22 | :100140000319A628803A0319AD2800347E088400DC
|
23 | :1001500083137F188317000808007F088A007E0831
|
24 | :1001600082000800003A0319BA28803A0319C4280B
|
25 | :10017000FF0100347E08840083137F188317000872
|
26 | :10018000FF00840A000808008A110000AD20FD006D
|
27 | :10019000FE0FFF03FF0A8A110000AD20FC007D085E
|
28 | :1001A000FF007C08080001340034DD3400342C34B6
|
29 | :0C01B000003401340034DB280800003467
|
30 | :00000001FF
|
Diese ist 1,3 kB groß. Ich glaube nicht, dass das stimmen kann. Ein
Programm, dass nichts macht kann doch niemals so viel Speicher im µC
verwenden!?
Was mache ich falsch?
Freue mich auf Antworten!
Mit freundlichen Grüßen
PHBU