-
21. Data: 2014-05-19 08:32:54
Temat: Re: Początki z STM32 - Ethernet i kilka innych kwestii
Od: Atlantis <m...@w...pl>
W dniu 2014-05-17 18:37, mk pisze:
> Jeśli krytyczna jest wydajność to nie ma co się zastanawiać:
> mikrokontroler z wbudowanym Ethernetem.
> Wygoda? Rzecz względna, ale faktycznie ENC28J60 pod pewnymi względami
> może być wygodniejsze (np. design PCB).
Hmm... Istnieje jakiś standard układu wyprowadzeń w MCU z wbudowanym
kontrolerem Ethernetu i zewnętrznym interfejsie PHY? Można w miarę łatwo
poprowadzić magistralę złożoną z równoległych ścieżek, czy raczej trzeba
będzie się bawić w zworki i przelotki?
> uIP tylko do najprostszych aplikacji typu wysłanie lub odbieranie
> pojedynczych pakietów UDP, czy też najprostsze połączenia TCP (ale
> naprawdę najprostsze typu po połączeniu wysyłam parę bajtów i rozłączamy
> się).
Do tego spokojnie wystarczy Tuxgraphics, który jest w dodatku banalny w
obsłudze i konfiguracji. Czegoś lepszego potrzebowałbym np. do obsługi
telnetu.
> lwIP również warto ożenić z jakimś RTOS, np. z FreeRTOS. Bez
> wielowątkowości tworzenie aplikacji sieciowych, poza tymi najprostszymi,
> szybko stanie się koszmarem.
To raczej jeszcze daleko przede mną. Poza tym gdybym potrzebował
wielowątkowości do jakiegoś poważniejszego projektu, pewnie sięgnąłbym
po jakąś linuksową płytkę. Zresztą zanim w moim przypadku zajdzie taka
potrzeba, to na rynku pojawią się tanie MCU SoC, mieszczące kompletny
linuksowy komputerek w obudowie LQFP. ;)
> Moim zdaniem warto, bo Ethernet to już szybkie przebiegi i łatwo
> popełnić jakiś błąd w projekcie. Układ może mieć nawet pozory działania,
Mówimy o Fast Ethernet czy o Ethernecie w ogólności. Bo zaprojektowałem
już kilka płytek z ENC28J60 i nie miałem jak dotąd żadnych problemów.
Pingi dochodzą bez gubienia pakietów. Nie pamiętam, żebym kiedyś nie
otrzymał odpowiedzi na wysłany pakiet UDP.
> ale będą gęsto i często np. ginąć pakiety, transmisja będzie się
> zacinać. Nie będziesz wiedzieć czy soft Ci szwankuje czy może jednak
> hardware. Lepiej oprzeć się na czymś sprawdzonym.
Gdybym jednak chciał zaprojektować własną płytkę, to o czym przede
wszystkim powinienem pamiętać?
-
22. Data: 2014-05-19 11:26:51
Temat: Re: Początki z STM32 - Ethernet i kilka innych kwestii
Od: Waldemar Krzok <w...@z...fu-berlin.de>
Am 16.05.2014 12:06, schrieb Atlantis:
> Przymierzam się powoli do zrobienia kolejnego kroku w nauce
> programowania MCU (do tej pory tylko AVR-y) i wypróbowania 32-bitowych
> układów STM.
>
> Mam jednak kilka pytań:
>
> 1) Ponieważ w wielu swoich projektach wykorzystuję interfejs Ethernet,
> chciałbym się dowiedzieć jak to jest realizowane na tej platformie.
> Przeważnie korzysta się z ENC28J60, tak samo jak na ATmegach, czy może
> warto zainteresować się układami z wbudowanym kontrolerem? Pytam,
> ponieważ te które widziałem nie posiadały wbudowanego transceivera i
> trzeba było dołączyć do nich zewnętrzny układ PHY. Które rozwiązanie
> zapewnia większą wygodę i wydajność?
> 2) Jaki stos powinienem zastosować? Coś w rodzaju uIP, czy też z uwagi
> na większe zasoby sprzętowe warto od razu zainteresować się lwIP?
> 3) Jakich transferów mogę się spodziewać? Podejrzewam, że będzie lepiej
> niż na duecie Mega328 + ENC28J60. Jak bardzo lepiej? ;)
> 4) Warto zainwestować w jakąś płytkę ewaluacyjną? Gdy zaczynałem naukę
> programowania AVR-ów skleciłem sobie prostą płytkę z Megą8 i łącząc z
> płytką stykową budowałem proste układy. Potem eksperymentując z
> Ethernetem również skleciłem PCB z Megą328 i ENC28J60. Prawie z niej nie
> korzystałem... Podobnie zakupione jakiś czas temu Arduino od paru
> miesięcy leży w szufladzie. Po prostu gdy chcę zbudować jakiś układ ze
> znanych sobie i/lub dobrze opisanych części, po prostu robię projekt
> płytki, wytrawiam ją i buduję co mam zbudować. Nie tworzę tego samego
> dwa razy, za pierwszym razem na pająku/płytce stykowej. Czy takie
> podejście sprawdzi się również w przypadku STM32, czy tutaj jednak
> powinienem zainwestować w jakieś płytkę prototypową?
> 5) Jak taki MCU radzi sobie z szyfrowaniem AES? Powinienem się
> spodziewać zauważalnych przestojów?
W mojej nowej robocie panuje od około roku STM, do tego czasu był
używany AVR. Szef "rozkazał" przejście z różnych powodów, ale główną
przyczyną była cena. Używamy gotowych modułów, które kosztują
praktycznie śmieszną cenę. Jako, że robimy małe serie (10-100 sztuk)
robienie płytki pod gołe procesory i ich wlutowywanie po prostu się nie
opłaca. Taki STM32F3xx kosztuje jako moduł ok. 8EUR, solo może połowę,
ale trzeba zrobić layout i to ścierwo wlutować z całą menażerią dookoła.
Przy cenie godziny pracy ok. 50EUR to ne je ono.
W tej chwili mamy w użyciu dwa systemy, jeden oparty na F3, drugi na F4.
Na F3 są robione urządzenia, które są łączone z hostem przez USB/RS232,
na F4 z ethernetem. Choć nasze urządzenia są same w sobie proste, to
systemy mogą być dość skomplikowane. Np. taki jeden F4, który robi
kolega, steruje 32 RS232, 32 GPIO. Całość to ok. 100 urządzeń
połączonych ethernetem.
Moje urządzonko hula sobie na F3, ale będę je w tym tygodniu portował na
F4, bo potrzebuję sterować ethernetem, a do F3 nie wejdzie mi tcp/ip.
Jak już pisałem używamy gotowych płytek prototypowych. Jest na nich
wszystko, co potrzeba. Na mojej płytce robię co muszę, a STMa wstawiam
jak starego dobrego DILa do gniazdka i już wsio lata.
Waldek
--
My jsme Borgové. Sklopte štíty a vzdejte se. Odpor je marný.
-
23. Data: 2014-05-19 16:56:54
Temat: Re: Początki z STM32 - Ethernet i kilka innych kwestii
Od: j...@g...com
W dniu piątek, 16 maja 2014 12:06:31 UTC+2 użytkownik Atlantis napisał:
> Przymierzam się powoli do zrobienia kolejnego kroku w nauce
>
> programowania MCU (do tej pory tylko AVR-y) i wypróbowania 32-bitowych
>
> układów STM.
>
>
>
> Mam jednak kilka pytań:
>
>
>
> 1) Ponieważ w wielu swoich projektach wykorzystuję interfejs Ethernet,
> chciałbym się dowiedzieć jak to jest realizowane na tej platformie.
Wbudowany MAC z DMA.
>
> 2) Jaki stos powinienem zastosować? Coś w rodzaju uIP, czy też z uwagi
> na większe zasoby sprzętowe warto od razu zainteresować się lwIP?
Jak najbardziej lwIP. Polecam uzycie RTOS z odpowiedmin BSP dla wybranej
wersji procesora.
, np.:
- ChibiOS/RT http://www.chibios.org/dokuwiki/doku.php
- eCos http://ecos.sourceware.org/
- mBed https://mbed.org/
- NuttX http://nuttx.org/
i nie bawic sie w wynajdowanie kola.
> 3) Jakich transferów mogę się spodziewać? Podejrzewam, że będzie lepiej
> niż na duecie Mega328 + ENC28J60. Jak bardzo lepiej? ;)
Duzo.
> 4) Warto zainwestować w jakąś płytkę ewaluacyjną?
Tak zważywszy iz ST sprzedaje po cenie dumpingowej płytki ewaluacyjne
a czasem wręcz rozdaje;)
STM32F4DISCOVERY (moduł z kontrolerem):
http://pl.mouser.com/ProductDetail/STMicroelectronic
s/STM32F4DISCOVERY/?qs=J2qbEwLrpCGdWLY96ibNeQ==
STM32F4DIS-BB (płyta bazowa z PHY):
http://pl.mouser.com/Search/ProductDetail.aspx?qs=tp
9Gh8MiPay9fbHGaE7oZQ%3d%3d
Z powodzeniem nisko-seryjna produkcje można oprzeć o moduły ewaluacyjne.
-
24. Data: 2014-05-19 20:37:34
Temat: Re: Początki z STM32 - Ethernet i kilka innych kwestii
Od: mk <reverse_lp.pw@myzskm>
W dniu 2014-05-19 08:32, Atlantis pisze:
> W dniu 2014-05-17 18:37, mk pisze:
>
>> Jeśli krytyczna jest wydajność to nie ma co się zastanawiać:
>> mikrokontroler z wbudowanym Ethernetem.
>> Wygoda? Rzecz względna, ale faktycznie ENC28J60 pod pewnymi względami
>> może być wygodniejsze (np. design PCB).
>
> Hmm... Istnieje jakiś standard układu wyprowadzeń w MCU z wbudowanym
> kontrolerem Ethernetu i zewnętrznym interfejsie PHY? Można w miarę łatwo
> poprowadzić magistralę złożoną z równoległych ścieżek, czy raczej trzeba
> będzie się bawić w zworki i przelotki?
Jeśli istnieje to nie zauważyłem :)
Pinologia MII/RMII STM32 taka sobie... na jednej warstwie raczej nie da
rady.
>> uIP tylko do najprostszych aplikacji typu wysłanie lub odbieranie
>> pojedynczych pakietów UDP, czy też najprostsze połączenia TCP (ale
>> naprawdę najprostsze typu po połączeniu wysyłam parę bajtów i rozłączamy
>> się).
>
> Do tego spokojnie wystarczy Tuxgraphics, który jest w dodatku banalny w
> obsłudze i konfiguracji. Czegoś lepszego potrzebowałbym np. do obsługi
> telnetu.
uIP dosyć szybko i bezproblemowo uruchomiłem, ale nie będę bronił, czy
lobbował za uIP.
>> lwIP również warto ożenić z jakimś RTOS, np. z FreeRTOS. Bez
>> wielowątkowości tworzenie aplikacji sieciowych, poza tymi najprostszymi,
>> szybko stanie się koszmarem.
>
> To raczej jeszcze daleko przede mną. Poza tym gdybym potrzebował
> wielowątkowości do jakiegoś poważniejszego projektu, pewnie sięgnąłbym
> po jakąś linuksową płytkę. Zresztą zanim w moim przypadku zajdzie taka
> potrzeba, to na rynku pojawią się tanie MCU SoC, mieszczące kompletny
> linuksowy komputerek w obudowie LQFP. ;)
W jakiś RTOS warto zainwestować. Warto stosować nawet mało-średnich
projektach. Jak przedstawiłeś jesteś na etapie przesiadki 8 do 32-bitów.
Jeśli jeszcze nie masz w arsenale swoich kompetencji budowania aplikacji
mikrokontrolerowych opartych o RTOS, to ja na Twoim miejscu bym się tym
zajął niż jakimiś Ethernetami. A przy aplikacjach Ethernetowych wiedza
ta będzie tylko procentować.
Jeśli chodzi o pingwina stawianego na małych platformach, to się już z
nim przepraszam od jakiegoś czasu. Zgadzam się, że Ethernet na
mikrokontrolerze to zawsze mniejsza lub większa rzeźba. Nawet jak się
wyrzeźbi to apetyt rośnie w miarę jedzenia: a to przydała by możliwość
równoległej obsługi większej liczby połączeń, a to jeszcze jeden serwis,
a to jeszcze wypaśniejsze i ładniejsze www (czyli trzeba je komuś
zlecić, kto się tym profesjonalnie zajmuje; a jak ktoś zrobi, to zrobi
np. na Ruby on Rails :-) ), a w urządzeniu które na początku miało być
prostym rejestratorem danych w końcu dochodzi się do konkluzji: a
dlaczego by zmagazynowanych danych nie udostępniać w postaci bazy
danych... Ale z drugiej strony jakieś proste, ale bardzo szybkie I/O,
czy jakieś inne ustrojstwa mające pracować w rygorze czasu rzeczywistego
(STM32 np. wspiera IEEE1588).
>> Moim zdaniem warto, bo Ethernet to już szybkie przebiegi i łatwo
>> popełnić jakiś błąd w projekcie. Układ może mieć nawet pozory działania,
>
> Mówimy o Fast Ethernet czy o Ethernecie w ogólności. Bo zaprojektowałem
> już kilka płytek z ENC28J60 i nie miałem jak dotąd żadnych problemów.
> Pingi dochodzą bez gubienia pakietów. Nie pamiętam, żebym kiedyś nie
> otrzymał odpowiedzi na wysłany pakiet UDP.
Piszę o Fast Ethernecie i raczej o połączeniach na drodze PHY-wtyk.
A "u mnie działa" nie równa się "u klienta działa" :)
>> ale będą gęsto i często np. ginąć pakiety, transmisja będzie się
>> zacinać. Nie będziesz wiedzieć czy soft Ci szwankuje czy może jednak
>> hardware. Lepiej oprzeć się na czymś sprawdzonym.
>
> Gdybym jednak chciał zaprojektować własną płytkę, to o czym przede
> wszystkim powinienem pamiętać?
Poprawny dobór elementów (czasami nie tylko co do wartości znamionowych
głównego parametru), właściwe zasilanie, właściwy design płytki (patrz
pdfy z zaleceniami), sprawdzenie częstotliwości pracy generatora, trochę
szczęścia.
Inna jeszcze sprawa czy robisz dla siebie, czy robisz produkt który musi
przejść testy EMC.
pzdr
mk
-
25. Data: 2014-05-20 18:12:09
Temat: Re: [OT] Początki z STM32 - Ethernet i kilka innych kwestii
Od: "tusk, donald tusk" <N...@g...pl>
a może Ktoś napisać czym programuje się te procki, jaki toolchain? może
jakieś wprowadzenie w dziedzinę, byłbym zobowiązany...
-
26. Data: 2014-05-20 19:49:38
Temat: Re: [OT] Początki z STM32 - Ethernet i kilka innych kwestii
Od: Andrzej <d...@o...pl>
W dniu 2014-05-20 18:12, tusk, donald tusk pisze:
> a może Ktoś napisać czym programuje się te procki, jaki toolchain? może
> jakieś wprowadzenie w dziedzinę, byłbym zobowiązany...
>
1. Keil uVision
2. Attolic True Studio
Obie aplikacje darmowe dla 32kB kodu. Niestety sama biblioteka panela
dotykowego to ponad 40kB.
3. CooCox (darmowy)
4. Literatura po polsku - książki z wydawnictwa BTC (drogie)
5. Płytka - mnóstwo w Kamami, AVT, Propox itd. Godne polecenia (IMHO)
-Maple mini - moduł w formie DIL
-seria Disco(very)
Ciekawy jest również moduł HY-miniSTM32V (zawiera kolorowy wyświetlacz z
panelem dotykowym cena ok 50$).
-
27. Data: 2014-05-20 20:06:27
Temat: Re: [OT] Początki z STM32 - Ethernet i kilka innych kwestii
Od: "tusk, donald tusk" <N...@g...pl>
W dniu 2014-05-20 19:49, Andrzej pisze:
> W dniu 2014-05-20 18:12, tusk, donald tusk pisze:
>> a może Ktoś napisać czym programuje się te procki, jaki toolchain? może
>> jakieś wprowadzenie w dziedzinę, byłbym zobowiązany...
>>
> 1. Keil uVision
> 2. Attolic True Studio
> Obie aplikacje darmowe dla 32kB kodu. Niestety sama biblioteka panela
> dotykowego to ponad 40kB.
> 3. CooCox (darmowy)
> 4. Literatura po polsku - książki z wydawnictwa BTC (drogie)
> 5. Płytka - mnóstwo w Kamami, AVT, Propox itd. Godne polecenia (IMHO)
> -Maple mini - moduł w formie DIL
> -seria Disco(very)
> Ciekawy jest również moduł HY-miniSTM32V (zawiera kolorowy wyświetlacz z
> panelem dotykowym cena ok 50$).
dziękuję, ale potrzebuję małych wyjaśnień, jeśli chodzi o Keila to
mówisz o tym: KEIL MDK ARM? jeśli nie to jak brzmi pełna nazwa programu?
-
28. Data: 2014-05-20 20:25:45
Temat: Re: [OT] Początki z STM32 - Ethernet i kilka innych kwestii
Od: Andrzej <d...@o...pl>
W dniu 2014-05-20 20:06, tusk, donald tusk pisze:
> W dniu 2014-05-20 19:49, Andrzej pisze:
>> W dniu 2014-05-20 18:12, tusk, donald tusk pisze:
>>> a może Ktoś napisać czym programuje się te procki, jaki toolchain? może
>>> jakieś wprowadzenie w dziedzinę, byłbym zobowiązany...
>>>
>> 1. Keil uVision
>> 2. Attolic True Studio
>> Obie aplikacje darmowe dla 32kB kodu. Niestety sama biblioteka panela
>> dotykowego to ponad 40kB.
>> 3. CooCox (darmowy)
>> 4. Literatura po polsku - książki z wydawnictwa BTC (drogie)
>> 5. Płytka - mnóstwo w Kamami, AVT, Propox itd. Godne polecenia (IMHO)
>> -Maple mini - moduł w formie DIL
>> -seria Disco(very)
>> Ciekawy jest również moduł HY-miniSTM32V (zawiera kolorowy wyświetlacz z
>> panelem dotykowym cena ok 50$).
>
> dziękuję, ale potrzebuję małych wyjaśnień, jeśli chodzi o Keila to
> mówisz o tym: KEIL MDK ARM? jeśli nie to jak brzmi pełna nazwa programu?
>
Tak MDK-ARM Version 5.10 (ostatnia wersja).
-
29. Data: 2014-05-20 20:45:20
Temat: Re: [OT] Początki z STM32 - Ethernet i kilka innych kwestii
Od: "tusk, donald tusk" <N...@g...pl>
W dniu 2014-05-20 20:25, Andrzej pisze:
> W dniu 2014-05-20 20:06, tusk, donald tusk pisze:
>> W dniu 2014-05-20 19:49, Andrzej pisze:
>>> W dniu 2014-05-20 18:12, tusk, donald tusk pisze:
>>>> a może Ktoś napisać czym programuje się te procki, jaki toolchain? może
>>>> jakieś wprowadzenie w dziedzinę, byłbym zobowiązany...
>>>>
>>> 1. Keil uVision
>>> 2. Attolic True Studio
>>> Obie aplikacje darmowe dla 32kB kodu. Niestety sama biblioteka panela
>>> dotykowego to ponad 40kB.
>>> 3. CooCox (darmowy)
>>> 4. Literatura po polsku - książki z wydawnictwa BTC (drogie)
>>> 5. Płytka - mnóstwo w Kamami, AVT, Propox itd. Godne polecenia (IMHO)
>>> -Maple mini - moduł w formie DIL
>>> -seria Disco(very)
>>> Ciekawy jest również moduł HY-miniSTM32V (zawiera kolorowy wyświetlacz z
>>> panelem dotykowym cena ok 50$).
>>
>> dziękuję, ale potrzebuję małych wyjaśnień, jeśli chodzi o Keila to
>> mówisz o tym: KEIL MDK ARM? jeśli nie to jak brzmi pełna nazwa programu?
>>
> Tak MDK-ARM Version 5.10 (ostatnia wersja).
dzięki, a patrzyłem tak sobie na USB, piszą że kod dostępny tylko w
MDK-Professional, a może da się skądś zassać?
-
30. Data: 2014-05-20 20:48:04
Temat: Re: [OT] Początki z STM32 - Ethernet i kilka innych kwestii
Od: "tusk, donald tusk" <N...@g...pl>
a jeśli chodzi o rozeznanie w samym TCP/IP to jaką książką warto by się
zainteresować?