STM32 Minimum System Development Board a Arduino IDE
- April 19 2016
- STM32F4, STM32F7, STM32L1, STM32F3, Nucleo, Discovery
- 4474x Přečteno
Pro ostatní, kteří sem zavítají a hledají informace jak přejít z 8-bitového atmela, které programují "jako Arduino" na první nejlevnější ARM, což je aktuálně STM32F103C8T6 na ebay prodávané jako hotový modul "STM32 Minimum System Development Board" podobný deskám Arduino mini a micro popíšu pár informací pro zprovoznění na Windows:
1) Použít Arduino IDE 1.6.5-r5 (poslední verze z řady 1.6.5)
S vyšší verzí to již nebude fungovat!
Neinstalovat tedy verzi 1.6.6 ani žádnou novější!
Jenom rozbalit:
http://arduino.cc/download_handler.php?f=/arduino-1.6.5-r5-windows.zip
Nebo včetně instalátoru:
http://arduino.cc/download_handler.php?f=/arduino-1.6.5-r5-windows.exe
2) V Arduino IDE spustit Boards manager (manažer desek) a nainstalovat podporu pro Arduino SAM Boards (32-bits ARM Cortex-M3).
Zvolit samozřejmě stejnou verzi jako je celé IDE, tedy 1.6.5
Ukončit Arduino IDE. Stejně bude potřeba jeho pozdější restart.
3) Najít a stáhnout Arduino_STM32 z Github.com:
https://github.com/rogerclarkmelbourne/Arduino_STM32
Rozbalit stažený zip soubor (Arduino_STM32-master.zip) a přejmenovat výslednou rozbalenou složku na 'Arduino_STM32'
Celou složku pak zkopírovat do složky Arduino IDE 1.6.5. a podadresáře 'hardware'.
Např. v mém případě je výsledek 'C:\arduino-1.6.5-r5\hardware\Arduino_STM32\...'
4) Spustit Arduino IDE 1.6.5 a vybrat desku 'Generic STM32F103C series' a následně procesor 'STM32F103C8'.
Vytvořit nějaký příklad programu např. blikání zabudovanou ledkou.
Pozor, pin 13 s ledkou se zde jmenuje PC13, nikoliv jenom 13!
5) Zkusit přeložit = ověřit program. Pokud se zadaří, tak je ve windows temp složce výsledný soubor pro procesor s koncovkou *.cpp.bin
Nejsnažší cesta pro jeho nalezení je nastavit si ve vlastnostech Arduino IDE 'Zobrazit více informací výstupu...'.
Při překladu je pak na posledním řádku i cesta k výslednému souboru např. 'C:\Users\LuBoss\AppData\Local\Temp\build7388408773964606060.tmp/test1.cpp.bin'.
Tento soubor je jakoby náhrada *.hex souboru z Arduina pro 8-bity a vlastně výsledek celého snažení.
6) Použít USB programátor 'ST link V2' a stáhnout si k němu ovladač a programovací sw 'STM32 ST-LINK Utility'.
Vše lze zdarma po jednoduché registraci stáhnout z webu www.st.com
Třeba to někomu pomůže a ušetří spoustu času ;-)
DODATEK:
Je potřeba externí programátor. Ten ale na čínském elektronickém tržišti stojí zanedbatelně. V současnosti zhruba $6.
Nicméně dnes jsem zjistil, že v Arduino IDE je možnost uploadu programu pomocí metody 'STLink' a kupodivu funguje naprosto parádně. Není pak potřeba hledat přeložený binární program a nahrávat jej pomocí STM32 ST-LINK Utility,
což je výrazné zjednodušení :-)
Doplnění administrátora: ST-LINK Utilita i pro Linux
Děkuji za velmi dobře zpracovaný návod na fóru. Happy coding :-)