Gast
#704008
Guten Tag allerseits, ich versuche eine kleine einfache Software für eine Bedienungseinheit zu schreiben. Die Bedienungseinheit ist mit einem 8051 bestückt, genauer es ist ein M80C31F von OKI drauf. Zum entwicklen habe ich den WICE M4 Eprom Emulator. Nun zum Problem: Ich habe bereits Treiber zur Ansteuerung von Display/Tastatur und RS232 geschrieben. Nur verhält sich der Compiler oder der 8051 sehr merkwürdig. z.b. habe ich eine ISR die vom Ext Int0 ausgelöst wird (dies geschieht bei einem Tastendruck). Der Code in der ISR funktioniert so wie ich mir das vorstelle, füge ich jedoch noch weitere Zeilen in die ISR ein, so läuft plötzlich das gesammte Programm nicht mehr. (Nicht mal eine Livesign LED die eigentlich immer blinken sollte, auf dem Display kommt auch nichts mehr, tote hose überall) Der Compiler jedoch meldet keinen Fehler. Danach habe ich um zu Testen was denn jetz nicht richtig ist, immer mehr Code auskommentiert bis ich nur noch bei diesem Stück war:
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 | |
41 | |
42 | |
43 | |
Aber komischerweise funktioniert nicht mal mehr das! Es sind keine Interrupts aktiviert, das Display ist nicht initialisiert, ich will nur die LED blinken lasse, (was mit diesem Code schonmal funktioniert hat) Ich weis echt nicht wo ich noch suchen soll! Ich denke irgendwas wird hier wegoptimiert oder sowas in der Art. Ein weiters Sympton ist, wenn ich den Optimierungsgrad runterschalte auf 3 (Peephole optimization) dann erhalte ich gar kein Hex File mehr, der Compiler zeigt folgende Warnung: (ich habe ein Screenshot gemacht) Ich bin echt mit meinem Latein am Ende. Ich habe versucht das Problem so gut wie möglich zu beschreiben. Wenn jemand aber noch mehr Infos braucht, nur Fragen. Mit freundlichen Grüssen, Marco Beffa
