MikroKopter-Wiki   •   SHOP   •   Video-Liste   •   MikroKopter-FAQ   •    English translation

Mikrocontroller- & MicroSPS-Forum » Platinen » Auch Probleme mit dem Webserver 1.40

Auch Probleme mit dem Webserver 1.40

Seite: 1

Autor Neuer Beitrag
Mitglied
Registriert seit: Nov 2006
Beiträge: 11
Hallo an alle

Ich habe mir vor einiger Zeit den AVR Webserver gebaut,ich betreibe ihn mit einer
3Com 3C509-B Netzwerkkarte.
Zuerst habe ich ihn eine ganze Zeit mit der Firmware 1.39b betrieben und dem AVR Mega32.
Nun wollte ich das ganze mit der Cam MCA25 erweitern,ich habe mir dann den AVR Mega644
und einen neuen 14,7456 Mhz besorgt.

Ich muß als erstes schreiben das ich der sprache C nicht mächtig bin !
Gut ich habe mir dann die die 1.40 Firmware vorgenommen und habe IP,MAC,Netzwerkkartentyp geändert.
Im Makefile habe ich noch meinen Programmer geändert (PonyProg STK200).
So dann habe ich versucht in WinAVR neu zu kompilieren aber er will einfach nicht programmieren,also weder neues Hex file erstellen noch daten zu flashen.
Stattdessen bekomme ich ein haufen Warnungen und Fehler meldungen.
Tja und da ich wenig durchblick habe hoffe ich das mir jemand helfen kann.

Hier die Fehlermeldungen :


set -e; avr-gcc -MM -mmcu=atmega644 -I. -g -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=3c5x9.lst -std=gnu99 3c5x9.c \
| sed 's,\(.*\)\.o[ :]*,\1.o \1.d : ,g' > 3c5x9.d; \
[ -s 3c5x9.d ] || rm -f 3c5x9.d
3c5x9.c:98:4: #error PORT for your MCU not defined yet.

-------- begin --------
avr-gcc (GCC) 3.4.5
Copyright (C) 2004 Free Software Foundation, Inc.
Dies ist freie Software; die Kopierbedingungen stehen in den Quellen. Es
gibt KEINE Garantie; auch nicht für VERKAUFBARKEIT oder FÜR SPEZIELLE ZWECKE.


Linking: main.elf
avr-gcc -mmcu=atmega644 -I. -g -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=main.o -std=gnu99 main.o 3c5x9.o rtl8019.o analog.o arp.o checksum.o ftpd.o httpd.o ip.o icmp.o interrupt4.o clock.o uart.o tcp.o telnet.o webpage.o mmc.o fat16.o webcam/mca25.o ftpclient.o ntp.o time.o config.o auth.o sendmail.o --output main.elf -Wl,-Map=main.map,--cref -lm
main.o: In function `InitNetworkCard':
C:\WinAVR\1.40\source/main.c:78: undefined reference to `init_3c5x9'
main.o: In function `main':
C:\WinAVR\1.40\source/main.c:378: undefined reference to `do_network_io'
arp.o: In function `ARP_Reply':
C:\WinAVR\1.40\source/arp.c:66: undefined reference to `Write_Ethernet_Frame'
arp.o: In function `ARP_Request':
C:\WinAVR\1.40\source/arp.c:129: undefined reference to `Write_Ethernet_Frame'
httpd.o: In function `httpd':
C:\WinAVR\1.40\source/httpd.c:237: undefined reference to `Write_Ethernet_Frame'
C:\WinAVR\1.40\source/httpd.c:421: undefined reference to `Write_Ethernet_Frame'
icmp.o: In function `ICMP_Reply':
C:\WinAVR\1.40\source/icmp.c:49: undefined reference to `Write_Ethernet_Frame'
interrupt4.o: In function `get':
C:\WinAVR\1.40\source/interrupt4.c:76: undefined reference to `Read_Ethernet_Frame'
tcp.o: In function `TCP_PORT_CLOSE':
C:\WinAVR\1.40\source/tcp.c:253: undefined reference to `Write_Ethernet_Frame'
tcp.o: In function `TCP_OPEN':
C:\WinAVR\1.40\source/tcp.c:384: undefined reference to `Write_Ethernet_Frame'
ftpclient.o: In function `ftpc':
C:\WinAVR\1.40\source/ftpclient.c:130: undefined reference to `Write_Ethernet_Frame'
ftpclient.o: In function `ftp_store':
C:\WinAVR\1.40\source/ftpclient.c:168: undefined reference to `Write_Ethernet_Frame'
ftpclient.o: In function `ftp_connect':
C:\WinAVR\1.40\source/ftpclient.c:253: undefined reference to `Write_Ethernet_Frame'
ntp.o:C:\WinAVR\1.40\source/ntp.c:148: more undefined references to `Write_Ethernet_Frame' follow
make.exe: *** [main.elf] Error 1

> Process Exit Code: 2
> Time Taken: 00:00


Ich wäre wirklich glücklich wenn mir jemand einen ahnunglosen helfen kann.

Danke schon mal im voraus und gruss an alle.
Mitglied
Registriert seit: Nov 2006
Beiträge: 11
Hallo an alle

Ich bin der Lösung ein wenig näher gekommen,im Forum habe ich noch ein posting gefunden über ähnliches Problem.

Ich habe wohl in der 3c5x9.c den Eintrag #if defined (__AVR_ATmega32__) übersehen.
Gut dann in #if defined (__AVR_ATmega644__) abgeändert und nun läßt er sich ohne Warn und Fehlermeldung flashen !

Leider funktioniert mein Webserver damit nicht. Ich habe die Netzwerkkarte eingesteckt mit Kabel,ohne SD Karte,das Com Kabel angesteckt und Spannung angelegt.Leider bekomme ich keine Rückmeldung vom Webserver.

Anschließend habe ich das ganze nochmal mit meinen ATMega32 ausprobiert und siehe da es funktioniert sofort.

Ich denke ich habe irgendwo noch einen Fehler drin und deshalb dokumentiere ich hier mal meine Änderungen im source 1.40 file.

3c5x9.c:#if defined (__AVR_ATmega644__)

main.c : nsigned char MYIP[] = { 192,168,1,147 };
unsigned char mymac[] = {68,78,07,93,57,11};

const unsigned char ROUTER_IP [] = { 192,168,1,254 };
const unsigned char FTP_IP[] = { 192,168,1,254 };
//const unsigned char NTP_IP[] = { 129,69,1,153 };
const unsigned char NTP_IP[] = { 192,168,1,254 };
const unsigned char SMTP_IP[] = { 213,165,64,20 };

main.h: // --- Select Networkcard -------
#define USE_RTL8019 0
#define USE_3C5x9 1
//-------------------------------

#define ISA_CTRL

#define SYSCLK 14745600 //Quarz Frequenz in Hz

makefile AVRDUDE_PROGRAMMER = pony-stk200


#AVRDUDE_PORT = com1 # programmer connected to serial device
AVRDUDE_PORT = lpt1 # programmer connected to parallel port

AVRDUDE_WRITE_FLASH = -U flash:w:$(TARGET).hex
#AVRDUDE_WRITE_EEPROM = -U eeprom:w:$(TARGET).eep

AVRDUDE_FLAGS = -p m644 -P $(AVRDUDE_PORT) -c $(AVRDUDE_PROGRAMMER)

So das waren alle Änderungen die ich vorgenommen habe.
Vielleicht fällt ja jemanden etwas auf das ich noch was vergessen habe.

Dann habe ich noch eine Frage:
ich habe mir schon eine SD Karte besorgt nur leider trau ich sie mir nicht einzusetzten.
Ich habe im Forum gelesen das die mit der Spannung sehr sensibel sind und nur 3,6 Volt abkönnen.
Bei mir liegen aber 4,14 Volt an,trotz einer nach geschalteten 3,6V Z Diode,kann ich die trotzdem ohne angst rein stecken ?

So das wäre erstmal alles ich hoffe es gibt jemand der mir ein wenig helfen kann.

DANKE
Mitglied
Registriert seit: Nov 2006
Beiträge: 11
Hallo an alle

Schade das es niemanden gibt der mir irgendwie helfen kann.

Gibt es denn jemanden der die 1.40 Version mit einer 3C5x9 Netzwerkkarte am laufen hat ?

Es wäre sehr nett wenn mir jemand seine Version zu schicken könnte,wo ich dann nur noch meine IP+Mac
einfügen muß.
Vielleicht komme ich ja so den Fehler auf die schliche.

Ich möchte mich schon mal im voraus bedanken.

Gruss

Seite: 1

Mikrocontroller- & MicroSPS-Forum » Platinen » Auch Probleme mit dem Webserver 1.40

© Holger Buss & Ingo Busker   •  Mikrocontroller- & MicroSPS-Forum is powered by UseBB Forum Software