Jak zacit s STM32?

Ondrej ondrej-hwl na hawsys.cz
Úterý Listopad 24 14:52:36 CET 2015


Zdravím

stál jsem nedávno před stejným problémem. Nejschůdnější řešení se 
nakonec ukázalo:
pro překlad/psaní kódu si stáhnou "System Workbench for STM32" - v 
podstatě Eclipse, které má rovnou v sobě gcc
pro vygenerování základního kódu "STM32CubeMX" + Cube knihovny
případně ještě na bonus "STM32 ST-LINK Utility", kterým můžete ověřit, 
že programátor/procesor je naživu

Pro import projektu z Cube do OpenSTM je potřeba postupovat podle 
návodu: http://www.openstm32.org/Importing+a+STCubeMX+generated+project

A to je celé. Možná že pravý chlap a pojídači koláčků to dělají jinak, 
ale pokud si to nechcete zbytečně komplikovat, tak tohle je nejméně 
komplikovaná cesta.

Ondřej

Dne 20.11.2015 v 22:16 Pavel Kutina napsal(a):
> Zdravím,
>
> když už se tu rozebírají začátky s Freescale, měl bych podobný dotaz - 
> jak začít s STM32?
>
> <krátká verze>
> Je někde návod, co na deset kliknutí stáhne nějaké předkonfigurované 
> IDE tak, abych instalací nestrávil dva večery, ale po deseti minutách 
> blikal LEDkou?
> </krátká verze>
>
> <dlouhá verze>
> Potřeboval bych návod pro úplné blbce: mám na stole destičky s 
> STM32F103C8T6, k němu připojený čínský ST-Link. Píšu do toho v MikroE 
> Pascalu, funguje to. Ale protože jsem byl poslední dobou okolnostmi (a 
> možná i pohodlností) donucen napsat si něco pro Arduino, zjistil jsem, 
> že se mi C začíná možná i trochu zamlouvat (a speciálně pro kolegu 
> Weka - ano, tuším cosi o tom, že Arduinovské C je takové "C pro 
> lenochy", to splňuju - neživí mne to).
>
> No a říkal jsem si, že by nebylo špatné zkusit si pro začátek s STM32 
> alespoň zablikat diodou, ale v nějakém rozumném prostředí a právě v C. 
> Existuje něco, co bude fungovat v podobném stylu, jako mé oblíbené 
> nástroje, tedy stáhnu jeden balík, pak párkrát odkliknu Yes, spustím 
> IDE, vytvořím projekt, vyberu procesor, otevřu main.c, napíšu šest 
> řádků, odkliknu Build & Run - a zablikám diodou?
>
> To, na čem jsem se "zmlsal", tedy MikroE kompilátory a Arduino (je si 
> to trochu podobné přístupem), je jednak konfigurace (viz postup výše), 
> jednak kupodivu dokumentace. MikroE má v podstatě ke všem (přeloženým 
> a bohužel "zamčeným", tedy bez zdrojáku) knihovnám většinou celkem 
> slušné příklady, u Arduina je to složitější jen v tom, že se při tom 
> jen musím ptát googlu. U "dospělého" C vidím X set možností, jak 
> dosahnout téhož cíle, ovšem s tím, že návody jsou vzájemně 
> nekompatibilní, neaktuální, každý si přilinkuje X dalších různých 
> knihoven a začátečník se v tom ztratí, když mu to začne vyhatovat 
> chyby v překladu u knihovny, o které do té doby netušil ani to, že 
> existujem natožpak, že jí mí v projektu.
>
> Ted jsem si zkousel nainstalovat CooCox, našel jsem docela hezký návod 
> pro blbce, přehledný step by step. Akorát tedy maličko neaktuální... 
> Skončil jsem při vytváření projektu, jelikož jsem nepobral, co všechno 
> (a hlavne proč) bych mel do projektu přidat, nakonec jsem vybral C 
> library, cmsis core a STM32F10x_LD_STDLIB. Zkusil jsem Build prázdneho 
> projektu, a protože si hraju v posteli na EEE901 (čas na hraní mám v 
> posteli před spaním), trvalo to 32 vteřin (build nepříliš prázdného 
> projektu u kompilátoru MikroE je v jednotkách vteřin na stejném 
> železe, u Arduina je to kapku delší, ale snesitelné). V závěru jsem 
> šel do preferences - a celý CooCox si bez varování ustlal... Fajn.
>
> Existuje někde kuchařka pro jakékoliv použitelné IDE (pro danou HW 
> konfiguraci a pro Windows), která bude alespoň relativně aktuální, 
> budou tam examply od blikání diodou až po práci s periferiemí a 
> nestávím zbytek víkendu konfigurací?
>
> Možná mám špatný přístup, ale... začínal jsem na ZX-81. Začínal jsem 
> tak, že jsem si vzal manuál a stránku po stránce přepisoval examply k 
> jednotlivým příkazům a zkoumal, co který parametr mění a jak to 
> využít. Pak jsem přešel ke Spectru, chvíli u Sharpu, potom k PC - a 
> tam jsem zakotvil u Turbo Pascalu, který měl v helpu opět examply pro 
> jednotlivé příkazy, tak jsem je bral jeden po druhém. Prakticky totéž 
> jsem dělal v dalších jazycích (FoxPro, VisualBasic, Delphi a PHP) a 
> podobně jsem se pak učil zacházet i s Mikropascalem nebo tím Arduinem.
>
> Nějak tak to asi dělá každý. Rád bych nějak nějak podobně rozlousknul 
> to zatracený C pro ARM, ale kudy a jak?
>
> U mnou zmíněných jazyků mi to připadá, že dostanu krabici Lega a z ní 
> si můžu složit, co potřebuju, bez ohledu na to, jestli aktuálně 
> potřebuju složit tři kostičky, nebo tři tisíce.
>
> U C mám dojem, že sice potřebuju složit dohromady tři kostičky Lega, 
> ale dostanu k dispozici akademickou knihovnu, hromadu písku a návod na 
> výrobu lopatičky z plechovky od sardinek - s tím, že si samozřejmě 
> můžu ty tři kostičky postupně vyrobit a ještě obdržím informaci, jak 
> je to super, protože si je můžu udělat tak, jak sám chci. Hmmm.
> </dlouhá verze>
>
> Asi jsem se potřeboval vykecat z určité frustrace, ale kdyby někdo měl 
> nějaký rozumný postup, tak pěkně prosím...
>
> Díky.
>
> Pavel Kutina
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list



Další informace o konferenci Hw-list