|
mk2
1 Beitrag
 Neuer Benutzer
|
25-11-2008 19:44
Hallo,
wollte mich intensiver mit dem Ethernetinterface des Elektor-FPGA-Kits befassen. Da die Webserver-Beispiele mit dem uC/51-ANSI-C-Compiler von Wickenhäuser.de erstellt wurden, den ich nicht habe, wollte ich GCC verwenden.
Ausgangspunkt war der Bootloader -- hier sollte ja kein "Wickenhäuser"-spezifischer Code enthalten sein.
Habe im Bootloader-Beispiel die Flash- und FTFP-Anteil 'rausgenommen so dass das Board erstmals nur DHCP-Nachrichten senden sollte.
Die Compilierung mit GCC funktioniert problemlos, aber es gehen keine IP-Packete raus. Ich vermute sehr stark, dass das Problem im "ether.c" - Umfeld liegt --- also genau beim "Treiber", aber ich kann den Fehler nicht finden.
Man sieht an den ersten 2 7-Segmentanzeigen, dass 8x versucht wird, DHCP Nachrichten wegzusenden; aber keine einzige geht 'raus.
Könnte sich das jemand von Euch bitte einmal anschauen ?
Bin für jeden Hinweis dankbar...
Michael
P.S.: Warum wurde denn der Bootloader mit einem Keil-C-Compiler kompiliert und nicht mit GCC ?
IP-Project.zip
|
|
avg
6 Beiträge
 Neuer Benutzer
|
07-12-2008 14:30
Hallo,
ich denke es liegt daran dass der SDCC bei Datentypen >8 bit das Little Endian Format verwendet (LSB zuerst), das Programm aber auf das Big Endian Format ausgelegt (welches auch der Keil Compiler verwendet).
Das Problem hierbei ist der Zugriff auf die Hardware Register (Ethernet Controller), da diese Big Endian sind !
MfG.
Andreas
|