Modul Eth PHY pro obecne pouziti

Ondřej Staněk ostan89 na gmail.com
Čtvrtek Leden 31 15:22:49 CET 2013


Makefile k projektu je ve složce /Debug. Je automaticky generovaný z 
Eclipse. "Automaticky" neznamená zadarmo, předcházela tomu netriviální 
konfigurace projektu v Eclipse.. Na tom kódu jsem pracoval v podstatě 
sám, jen bylo potřeba zajistit, aby ostatní členové týmu mohli provádět 
drobné změny a kompilovat si kód i bez Eclipse. K tomu je právě ten 
makefile ve složce Debug..
Byl to můj první (a zatím jediný) projekt s ARMem, takže sice jsem se 
snažil mít zdrojáky nějak rozumně uspořádané, ale řešit sdílení knihoven 
byl v té chvíli overkill.

Ještě k těm zdrojákům:
/src/system/stm32f4x7_eth_bsp.c - konfigurace RMII rozhraní

Živý (upravovaný) kód je všechen ve složce /src/

/TCP_demo/ - testovací aplikace na straně PC

Složky
/libs/
/FreeRTOS/
obsahují kód knihoven který je neměnný.

S pozdravem,
Ondra Staněk

On 31.1.2013 01:57, Petr Labaj wrote:
> Dekuji Vam.
> Je toho pomerne hodne a je to urceno pro Eclipse, tak se tim zkusim
> nejak prokousat a predelat to do Makefile podoby, pripadne to pouzit
> jen jako studijni material.
> Pro pokusy a oziveni Ethernetu by mi uplne stacila jen binarka
> s nejakou jednoduchou funkci (napr. prevodnik TCP-serial na pevnem
> portu s pevnou prenosovou rychlosti), pokud mozno bez nastavovani
> PHY, protoze defaultni hodnoty jsou vetsinou pouzitelne a je to pak
> nezavisle na pripojenem HW.
> Slo mi jen o to mit nejaky overeny SW, abych pri laborovani s HW vedel,
> ze se na SW muzu spolehnout a nemusel hledat chyby najednou na
> obou mistech.
> Navazu na debatu, ktera tady probihala o usporadani adresaru a vubec
> organizaci projektu (vlakno ARM a Makefile). Takze dalsi text uz se
> netyka obsahu tohoto konkretniho projektu, jen na nem chci demonstrovat
> to, co jsem psal v tom vlakne o Makefile.
> Zde je prave videt, jak je (podle me) slozite a pracne vniknout do 
> projektu,
> ktery je cely distribuovany vcetne vseho ve zdrojacich. Pritom drtiva 
> vetsina
> z toho jsou veci konstatni, do kterych uzivatel nebude nijak zasahovat
> (FreeRTOS, LwIP, obsluha Ethernetu, knihovny pro standardni I/O). Pripadne
> do nich bude zasahovat jen velmi mala podmnozina vyvojoveho tymu.
> Proto jsem tam navrhoval (a sam to tak delam) oddelit jednotlive nezavisle
> moduly a udelat z nich knihovny.
> Takze v mem pojeti by tento projekt mel v jednom adresari knihovny
> std_io.a, freertos.a, lwip.a a pripadne eth.a, k nim pak prislusne 
> headery.
> Tyto sekce by byly nezavisle a knihovna by se vytvarela vlastnim Makefile.
> Zdrojaky jednotlivych knihoven by zily ve svych vlastnich adresarovych
> strukturach, ktere by nebyly podadresarem daneho projektu. Jediny
> stycny bod by byly *.a a headery. Stejne, jako je to na velkych systemech,
> napr. na Linuxu - tam taky s aplikaci nikdo netaha zdrojaky TCP stacku.
> Ale kdyz potrebuju, tak si je v jejich vlastnim bydlisti najdu.
> No a pak vlastni projekt by obsahoval jen nekolik velmi malo zdrojaku,
> plne poplatnych dane aplikaci. Vse ostatni by se linkovalo jen z tech
> knihoven.
> Myslim, ze "rozdel a panuj" neni spatna metoda ani v programovani.
> A taky je videt, jak efektivni je pouziti Makefile. Protoze Eclipse nemam
> a neznam, bude pro me hodne narocne vubec nejak zprovoznit preklad
> a dosahnout nejake binarky. V pripade Makefile by pripadny spolupracujici
> nebo prebirajici uzivatel proste napsal "make" a bylo by vymalovano.
> Pokud by byl zvykly na nejake sve IDE, tak by mu proste rekl, ze toto
> je "Makefile-projekt", coz prakticky kazde IDE a spousta editoru umi.
> Je fakt, ze pri vyvoji na MCU jsou nekdy ty zavislosti trochu vic 
> provazane,
> nez na velkem systemu. Takze aby me nekdo nechytal za slovo, ze to
> treba nejde jen tak proste rozseknout na kusy. Ano, zrejme se pri tom
> bude muset trochu premyslet. Ale pri vyvoji vice projektu, nebo pri vyvoji
> s vice vyvojari se vynalozene usili (podle me) bohate vrati.
> Dekuji.
> Petr Labaj
>
>     ----- Original Message -----
>     *From:* Ondřej Staněk <mailto:ostan89 na gmail.com>
>     *To:* HW-news <mailto:hw-list na list.hw.cz>
>     *Sent:* Thursday, January 31, 2013 12:25 AM
>     *Subject:* Re: Modul Eth PHY pro obecne pouziti
>
>     Prosím,
>     http://files.ostan.cz/MOB_STM32F4-ethernet.zip
>
>     S pozdravem,
>     Ondra Staněk
>
>     On 29.1.2013 16:41, Petr Labaj wrote:
>>     Dekuji.
>>     Ten SW by prisel velmi vhod, at neresim soucasne problemy s HW i se SW.
>>
>>     Jeste jednou diky.
>>     Petr Labaj
>>
>>     *****************************
>>
>>     From: "Ondřej Staněk"<ostan89 na gmail.com>
>>     To: "HW-news"<hw-list na list.hw.cz>
>>     Sent: Tuesday, January 29, 2013 4:31 PM
>>     Subject: Re: Modul Eth PHY pro obecne pouziti
>>
>>
>>     Signálové vodiče byly na spojeny "od patice k patici" napřímo
>>     naletovanými rezistory. Délka max 4cm, snažil jsem se to udělat co
>>     nekratší. Proložení zemí jsem nijak neřešil, nebylo potřeba. Na
>>     testovacím kitu STM32F4 urazily RMII dráty ještě taky nějakou cestu, a
>>     na jeden vodič byl dokonce navěšený nějaký integrovaný obvod (tuším
>>     akcelerometr) a taky to nevadilo, nebylo potřeba ho sundavat z desky.
>>     Pin-kabely jsme netestovali, začal jsem rovnou s paticemi na univerzální
>>     desce.
>>
>>     Držím palce s oživováním a můžu taky poskytnout fungující kód pro
>>     STM32F4 (FreeRTOS s nakonfigurovaným lwIP stackem a podporou FPU).
>>
>>     S pozdravem,
>>     Ondra Staněk
>
>
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list

------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20130131/c1f01fdb/attachment-0001.htm>


Další informace o konferenci Hw-list