www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Wiznet IIM7000 Initialisierung


Autor: Thomas (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Guten Abend,
ich hexe seit einigen Tagen an meiner Schaltung mit 89S8252 und
IIM7000A herum. Ich nutze die von Wiznet veröffentlichte API und das
Board von MCS-Electronics (siehe
http://www.mcselec.com/easy_tcp_ip.htm).
Bei der Initialisierung des LAN Bausteins kann ich die IP Adresse
pingen, jedoch hängt das Programm in der sysinit Funktion fest, der
Wert des Registers C0_CR Bit0 ist immer 0. Somit geht es da nicht
weiter am Ende der sysinit Funktion. Habe diese Abfrage mal
herausgenommen damit es weitergeht.

  I_STATUS[0] = 0;
  COMMAND(0) = CSYS_INIT;
  while(!(I_STATUS[0] & SSYS_INIT_OK));
//Hier hängt es !!

Ich initialisiere dann socket0 auf UDP Port 5000. Wenn ich UDPs schicke
lösen diese auch den IRQ aus,jedoch sind die Zeiger für Anfang und Ende
der empfangenen Daten immer gleich (Differenz=0).
Wenn ich den Staus des socket0 abfrage ist der immer $0E was "socket
initializing" bedeutet.
Hat jemand auch solche Erfahrungen gemacht?  Kann mir einer eine
funktionierende sysinit Funktion in "Zeh" zur Verfügung stellen?
Danke!!

Autor: emerald (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi ,
ändere mal die while schleife in:
<code>

while(!(I_STATUS[0]& SSYS_INIT_OK)){I_STATUS[0] = INT_STATUS(0); }


</code>

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke,
der Beitrag ist aber schon fast ein Jahr alt.
Problem war glaub ich der Unterschied zwischen BigEndian und
LittleEndian. Keil (Wiznet) benutzen  den einen, GCC den anderen.
Meine Schaltung läuft inzwischen nach viel Schweiß und Tränen (DCF Uhr
mit Time Server).

Gruß

Thomas

Autor: david schwerbel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
jo, das endian problem hatte ich auch schon.

bei mir klappt mittlerweile alles,
nur das sich der chip ab und zu verschluckt wenn er UDP daten senden
soll und es zu kollisionen kommt weil ein 2. udp sender daten an ihn
sendet.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.