mylms

... web o elektronice


Vývojová deska "Arduino" s procesorem STM32

Do jedné aplikace jsem potřeboval trochu rychlejší procesor, než ATmega. Potřebuji totiž měřit s inkrementálním snímačem s rozlišením 0,005 mm, který svými výstupy spouští přerušení procesoru. To je následně počítáno. Na Ardunino Nano a Micro (procesor ATmega 328, ATmega32U4) načítání sice fungovalo, ale při rychlejším pohybu docházelo k nepřesnému měření – procesor jednoduše na vstupy nezareagoval (snímač má rozlišení 5 μm, tedy 200 impulsů na 1 mm délky). A to nepočítám ještě logiku programu, která by dále zatěžovala procesor.

Rozhodl jsem se tedy zkusit zakoupit z Číny „něco jako Arduino“, ale s 32bitovým procesorem STM32F103C8T6. Jde v podstatě o další ze spousty vývojových desek, ale tentokrát s procesorem od STM. Za cenu ušmudlanýho dolaru-osmdesát je to lepší volba než klony Arduina Nano za dva doláče.

modul-stm32-1

 

Detaily desky si můžete přečíst na stránkách výrobce. Ve zkratce se jedná o 32-bitový ARM procesor s maximální frekvencí 72 MHz, 64 kB flash pamětí a napájený 3,3 V. 



Protože deska nejde programovat přímo přes USB kabel, je nutné k programování použít programátor. Z Číny jsem tedy dokoupil programátor ST-Link V2. Programátor se jednoduše připojí na piny vývojové desky a pomocí Arduino IDE se deska naprogramuje.

modul-stm32-2

programátor ST-Link V2

 

Nejprve je nutné nainstalovat ovladače pro ST-Link (STSW-LINK009). Ten se dá stáhnout přímo na stránkách STM kliknutím na tlačítko Get Software. Před stažením je nutné se zaregistrovat (zadat mail). Do USB počítače se programátor zapojí a pokud počítač ovladač nenainstaluje ovladač rovnou, lze pomocí Správce zařízení správný ovladač doinstalovat.

Na GitHubu je nutné stáhnout potřebné soubory. Balík je nutné rozbalit do složky Dokumenty/Arduino/hardware* (složku hardware je většinou potřeba vytvořit). Dále v manažeru desek (Nástroje > Vývojová deska > Manažer desek) doinstalujeme desku Arduino Zero (stačí do vyhledávání napsat Zero). V Nastavení zvolíme potřebné parametry desky a programátoru. Jako vývojovou desku zvolíme „Generic STM32F103C series“, Upload method zvolíme „STLink“
* Cesta k potřebné složce je v Soubor > Vlastnosti > „Umístění projektů“

modul-stm32-3

 

modul-stm32-4

Nastavení Arduino IDE

 

Desku je s programátorem nutné propojit čtyřžilovým kablíkem. Na modulu je to odshora GND – SWCLK – SWDIO – 3.3V (viz obrázek). Nyní stačí program zkompilovat a nahrát. Modul má na pinu č. 13 zapojenou LEDku, stejně jako běžné Arduino. Ta by se s pomocí vhodného programu měla rozblikat. POZOR, deska má napájení pouze 3,3 V! 5 V lze přivést pouze na USB port a několik pinů.

 

modul-stm32-6

Modul v pokusném zapojení s LCD a několika senzory a DC-DC měničem MINI-360

 

 

modul-stm32-7

Označení pinů modulu s procesorem STM32

 

Program pro tento modul je podobný jako pro běžné Arduino. Je zde však několik odlišností, kvůli kterým nemusí např. fungovat všechny knihovny. Je dobré tedy nutné si vše tedy pořádně odzkoušet. Jedna z odlišností, která mě napadá je označení pinů PA, PB, … místo A a D. Funkce analogWrite(pin, 0–255) je nutné u tohoto modulu volat jako pwmWrite(pin, 0–65535). Jinak lze rozchodit běžné věci jako je komunikace přes I2C, SPI, ovládání displeje apod.

arduino-i2c-sensor-4

Displej 320×240 px. ovládaný procesorem STM32F103C

 

Program lze samozřejmě psát i ve Visual Studiu. Jinak by to nemělo smysl :) Nastavení Visual Studia je podobné jako u Arduina IDE. Jako desku zvolíme „Generic STM32F103C series“ a pole programátor necháme prázdné. Program se zkompiluje a nahraje tlačítkem „Build and Upload“.

modul-stm32-5

Programování STM32F103C ve Visual Studiu

 

Zatím jsem to moc nepotřeboval, protože jsem k této desce měl vždy připojený displej, ale nevím, jestli je možné u tohoto modulu použít sériový monitor např. pro diagnostiku.



Napsal Petan před pěti dny v kategorii Elektronika. Připojeno 0 komentářů.
Přečteno 38x.

Na programy zde poskytované není žádná záruka na funkčnost (viz licence). Jednotlivé články, stejně jako celý obsah stránek není návodem a slouží pouze k studijním účelům. Zapojení výše mají pouze informativní charakter! Vždy se řiďte originálním návodem k použití! Na elektrickém (vyhrazeném) zařízení smí pracovat pouze osoba s příslušnou kvalifikací dle vyhlášky 50/78 Sb! Vše tedy děláte na vlastní nebezpečí! Autor stránek nebere žádnou zodpovědnost za případné újmy na zdraví, životě, majetku a jiné!

Jakékoliv části webu je zakázáno bez svolení autora a uvedení zdroje publikovat! Některé části článků mohou obsahovat texty, případně obrázky ze stránek Wikipedia a Wikimedia Commons. Tyto části jsou dostupné pod původní licencí Creative Commons.



Doposud nebyl připojen žádný komentář. Buďte první!

Připojte váš komentář!

* Hvězdičkou jsou označena povinná pole. Autor stránek odpovídá vždy do komentáře, ne na přiložený mail!