STM32F103 und ENC28J60

Gast #4272281
Lesenswert?

Hallo Zusammen,

ich würde gerne den STM32 (STM103VET6) mit dem ENC28J60 in Verbindung 
bringen. Im Grunde genommen möchte ich UDP Pakete empfangen und 
versenden.
Leider habe ich noch nicht so viel Erfahrung mit dem STM32.

Und auf meiner Suche hab ich bisher noch nichts gefunden was mir 
weiterhilft, deshalb hoffe ich mir hier jemand weiterhelfen kann.

Ich arbeite mit CooCox.

Vielen Dank schonmal für eure Hilfe.
Gruß Fabi
Gast #4279515
Lesenswert?

Tach zusammen,

hab jetzt die Verbindung zwischen ENC und STM32 hinbekommen dank dem 
Link von "hp-freund". Danke nochmal dafür.

Für die, die auch damit arbeiten wollen.

Zu beginn hab ich bei CooCox unter Configuration > Device den Controller 
auf meinen "STM32F103VE" geändert.

Dann gab folgendes Problem. Beim Compilieren kam folgende Fehlermeldung
- "registers may not be the same -- `strexb r0,r0,[r1]"

das habe ich behoben indem ich 2 Zeilen in der Datei "core_cm3.c" 
verändert habe. Und zwar:
- In Funktion __STREXB
__ASM volatile ("strexb %0, %2, [%1]" : "=r" (result) : "r" (addr), "r 
(value) );
IN
__ASM volatile ("strexb %0, %2, [%1]" : "=&r" (result) : "r" (addr), "r" 
(value) );

Und in Funktion __STREXH
__ASM volatile ("strexh %0, %2, [%1]" : "=r" (result) : "r" (addr), "r" 
(value) );
IN
__ASM volatile ("strexh %0, %2, [%1]" : "=&r" (result) : "r" (addr), "r" 
(value) );


Dann kann man den Code compilieren. Wenn man keine SD Karte hat kann man 
einfach die Zeile "while(!mmc_mount());" in der "main.c" datei aus 
kommentieren.
Dann kann man den STM32 mit dem ENC anpingen und die IP im Webbrowser.


Wenn ich nun doch UDP Pakete Senden und Empfangen kann dann bin ich 
zufrieden.
Gruß Fabi
#4279534
Lesenswert?

Fabiw0696 schrieb:
> Dann gab folgendes Problem. Beim Compilieren kam folgende Fehlermeldung
> - "registers may not be the same -- `strexb r0,r0,[r1]"

Man sollte wirklich denken, dass dieser Fehler endlich behoben wäre, 
nachdem ich den Autor der CMSIS bereits 2009 darauf hingewiesen hatte. 
Kann natürlich auch sein, dass Coocox ein steinzeitliches CMSIS 
verwendet.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren