Wie STM32F407 mit KS8721B PHY

Gast #6407556
Lesenswert?

Hallo.

Ich habe mehrere Platinen bekommen wo ein STM32F407 mit der PHY KS8721B 
verbaut ist. Es gibt das Olimex P407 System was den früher auch drauf 
hatte, das Board habe ich nun auch.

Das Problem ist nur ich finde dafür absolut keiner Treiber / Code.

Hat jemand was für mich, egal ob HAL, LL oder SPL.
Gast #6407580
Lesenswert?

kann man trotzdem mit HAL probieren und die hal_conf anpassen:

https://github.com/STMicroelectronics/STM32CubeF4/blob/master/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_conf_template.h

Die Phy Adresse ist meist 0 oder 1, das wird per HW durch Pullup/down an 
den entsprechenden Pins eingestellt, findet man im Datenblatt PHYAD0..4.

Dann gibt es Basic Register die bei allen Phy gleiche Bedeutung haben 
sollten, unterschiedlich wird es ab hier /* Section 4: Extended PHY 
Registers */. Da muss das PHY_SR und die Statusbits darin passen.

Mit dem Debugger durch HAL_ETH_Init() spazieren, da sieht man was 
passiert. Wichtig ist im ersten Schritt das die Phy Adresse passt und 
die Phy Register read/write gültige Werte liefern.

Ich würd ja Mbed-os empfehlen, aber da muss man auch erstmal die 
gleichen Dinge anpassen, nur in einer anderen config Datei.
Gast #6407684
Lesenswert?

Das Dumme ist ich hatte vor Jahren mal die Einstellungen für den 
KS8721B.
Leider ist mir die Platte abgeraucht und genau davon hatte ich kein 
Backup.
Ich kann mich erinnern das es nur wenige Register waren die gegenüber 
einem LAN8700 anders waren. Das ganze wurde per define einfach 
umgeschaltet.

Das Olimex P407 Board hatte ich damals zum Testen mir besorgt, da hatte 
ich nur nichts mit dem KS8721B und Ethernet gemacht. Das Board hatte 
damals meine Tests nicht überlebt und jetzt habe ich genau so ein Board 
wieder.

So wenn ich nichts finde werde ich mit dem Datenblatt schon raus 
bekommen was da anders eingestellt wurde. Kann ja nicht so viel sein, 
halt nur die Frage welche BITs sind es?

Also wenn jemand die ETH .C und .H hat wo der KS8721B drin ist nehme ich 
dei gerne.
Gast #6407716
Lesenswert?

bei Olimex gibt es zwei Versionen, aber in beiden ist im Kommentar 
KS8721 nur einmal zu finden. Bei der neuen Version werden der KS8721 und 
der LAN8700 durch ihre ID erkannt, in der alten Version ist wohl nur der 
KS8721 drin. Es müssten also beide gehen, das Beispiel ist nur für IAR.
Gast #6408630
Lesenswert?

In den Ganzen Sourcen steht aber nie was von dem KS8721B drin.

Ich hatte mich geirrt das wurde damals nicht nur per DEFINE sondern auch 
noch mit einer Produktcodeerkennung gemacht.

Ob der KS8721B nun einfach so, geht aber nicht genannt wird, kann ich 
jetzt noch nicht sagen, dafür muss ich erstmal ein Testprogram machen.

So ein Mist dieses IAR Code Paket wo der richtig angegeben wurde muss es 
doch noch irgendwo geben.

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