- Potřebné materiály
- Kruhový diagram
- Nahrání zavaděče Maple Boot na vývojovou desku STM32
- Příprava IDE Arduino a instalace ovladačů
- Programování STM32 (modrá pilulka) přímo přes USB port
STM32 Development Board Skříň STM32F103C8 Mikroprocesor je stále více populární díky své ARM Cortex M3 architektuře, má vysokou provozní rychlost a další periferní možnosti. Vzhledem k tomu, že lze tuto desku snadno naprogramovat pomocí Arduino IDE, stala se preferovanou volbou pro mnoho fandů a techniků pro rychlé prototypování.
V našem předchozím tutoriálu jsme se naučili základy vývojové desky STM32 a také jsme jej naprogramovali tak, aby blikal LED. Ale to mělo jednu obrovskou nevýhodu. K programování desky jsme využili programátorský modul FTDI a také jsme museli při nahrávání a testování kódu přepínat mezi startovací 0 propojkou a 1 pozicí, což je jistě skličující úkol. Také mini-USB port na vývojové desce zůstal zcela nepoužívaný. Důvodem je to, že když je zakoupena vývojová deska STM32, není dodávána se zaváděcím zavaděčem připraveným pro Arduino, a proto nebude deska po připojení přes USB počítačem objevena.
Doufejme však, že existuje experimentální zavaděč vyvinutý společností LeafLabs pro mini desky Maple. Tento zavaděč lze do STM32 jednou nahrát a poté můžeme přímo použít USB port na desce STM32 k nahrávání programů stejně jako na jakékoli jiné desky Arduino. Tento zavaděč je však v době dokumentování tohoto kurzu stále ve vývojové fázi a není vhodný pro kritické aplikace. Před zahájením tohoto tutoriálu se ujistěte, že jste si přečetli předchozí tutoriál, abyste porozuměli základům této desky, včetně podrobností o specifikacích a pin-outech.
Potřebné materiály
- STM32 - (BluePill) vývojová deska (STM32F103C8)
- Programátor FTDI
- Nepájivá deska
- Připojovací vodiče
- Notebook s internetem
Kruhový diagram
Chcete-li naprogramovat desku STM32 Blue Pill přímo přes USB port, musíme nejdříve flashovat zavaděč Maple do MCU. K tomu musíme použít desku Serial FTDI. Tato deska je připojena k pinům Rx a Tx na STM32, jak je znázorněno níže.
Pin Vcc desky FTDI je připojen k pinu STM32 5V napájení desky. Uzemnění je připojeno k uzemnění STM32. Kolíky Rx a Tx desky FTDI jsou připojeny ke kolíkům A9 a A10 STM32. Kde A9 je Tx pin STM32 MCU a A10 je Rx pin.
Během nahrávání zavaděče se ujistěte, že je propojovací kolík spouštěcí 0 na desce nastaven na 1 (režim programování). Jakmile bliká zavaděč, lze tento kolík změnit zpět do výchozí polohy (provozní režim).
Nahrání zavaděče Maple Boot na vývojovou desku STM32
Jakmile provedeme výše uvedené připojení, připojte desku FTDI k počítači a postupujte podle pokynů k zavedení bootovacího zavaděče do STM32.
Krok 1: Musíme stáhnout binární soubory programu zavaděče (soubor bin) ze stránky github. Existuje mnoho verzí souboru bin, pro desku Blue Pill použijte tento odkaz github a kliknutím na tlačítko stažení stáhněte soubor bin.
Krok 2: Dále musíme stáhnout a nainstalovat software STM Flash loader, abychom stáhli soubor bin do STM32. Kliknutím na tento odkaz se dostanete na webovou stránku ST, posuňte se dolů a klikněte na získat software
Krok 3: Chcete-li stáhnout software, musíte zadat svou e-mailovou adresu a na váš e-mail bude odeslán odkaz ke stažení. Poté postupujte podle odkazu zpět na webovou stránku, klikněte znovu na možnost získat software a stahování začne. Ano, je to trochu frustrující, ale takto by se to mělo dělat. Nezapomeňte zkontrolovat e-mail ve složce se spamem. Doručení e-mailu někdy trvá několik minut.
Krok 4: Po stažení si nainstalujte software, ujistěte se, že je vaše deska STM32 připojena k vašemu počítači prostřednictvím desky FTDI a poté spusťte software. Pokud nepoužívá Správce zařízení, software automaticky detekuje port COM a ujistí se, že jste vybrali správné číslo portu COM. V mém případě je to COM4. Zbytek nastavení ponechte tak, jak je znázorněno níže.
Krok 5: Dvakrát klikněte na tlačítko Další a software znovu automaticky detekuje podrobnosti desky a zobrazí se, jak je znázorněno níže. Deska, kterou používáme, je STM32F1 se 128K flash pamětí.
Krok 6: V dalším kroku vyberte Stáhnout do zařízení, přejděte do umístění, kam jsme si stáhli náš soubor bin v kroku 1, a vyberte jej. Klikněte na další.
Krok 7: Software stáhne některé požadované soubory, jak je znázorněno níže, a poté zahájí proces blikání.
Krok 8: Jakmile je blikání úspěšně dokončeno, dostaneme se na níže uvedenou obrazovku. Klikněte na zavřít a ukončete aplikaci. Úspěšně jsme flashovali desku STM32 bootovacím zavaděčem Arduino. Nyní musíme připravit IDE Arduino a nainstalovat ovladače, než budeme moci naprogramovat desku STM32.
Příprava IDE Arduino a instalace ovladačů
Podle níže uvedených kroků stáhněte a připravte IDE Arduino pro použití s vývojovou deskou STM 32.
Krok 1: - Pokud jste ještě nenainstalovali Arduino IDE, stáhněte si a nainstalujte jej z tohoto odkazu. Ujistěte se, že jste vybrali správný operační systém.
Krok 2: - Po instalaci Arduino IDE otevřete a stáhněte požadované balíčky pro desku STM32. To lze provést výběrem Soubor -> Předvolby .
Krok 3: - Kliknutím na Předvolby otevřete níže zobrazené dialogové okno. Do dalšího textového pole URL správce Boards vložte níže uvedený odkaz
dan.drown.org/stm32duino/package_STM32duino_index.json
a stiskněte OK.
Krok 4: - Nyní přejděte do nabídky Tool -> Boards -> Board Manager . Otevře se dialogové okno Správce desek, vyhledejte „STM32F1“ a nainstalujte balíček, který se zobrazí.
Krok 5: Po instalaci balíčku přejděte do složky C: \ Program Files (x86) Arduino \ hardware \ Arduino_STM32-master \ drivers \ win, kde najdete install_drivers.bat a install_STM_COM_drivers.bat .
Krok 6: Klikněte na oba soubory netopýrů a nainstalujte ovladače. Zobrazí se obrazovka systému DOS, jak je uvedeno níže.
Nyní je Arduino IDE připraveno pro programování vývojové desky STM32 (Blue Pill) a ovladače jsou také nainstalovány.
Programování STM32 (modrá pilulka) přímo přes USB port
Odeberte FTDI desku a všechna stávající připojení z STM32. Jednoduše použijte port micro-USB na desce STM32 a připojte jej k počítači, jak je znázorněno níže. Ujistěte se, že je kolík 0 propojky umístěn zpět na 0 (provozní režim). Dále již nemusíme přepínat propojku, abychom mohli nahrávat a spouštět programy.
Váš počítač by měl být schopen objevit Board hned teď. Chvíli počkejte, pokud uvidíte instalaci dalších ovladačů. Poté přejděte do Správce zařízení a zkontrolujte, zda je vaše deska STM32 objevena v části COM a port, jak je uvedeno níže. Důl je připojen k COM8 s názvem Maple Mini.
Přejděte na Nástroje a přejděte dolů a vyhledejte obecnou řadu STM32F103C, jak je znázorněno níže. Pak se ujistěte, že varianta je typu 64k Flash , rychlost CPU je 72MHz a změňte metodu nahrávání na STM32duino Bootloader . Vyberte také správný port COM podle portu ve správci zařízení.
Po provedení všech změn zkontrolujte pravý dolní roh IDE Arduino a měli byste si všimnout, že je nastaveno následující nastavení. Moje deska STM32 je připojena k COM8, ale vaše se může lišit
Nyní je Arduino IDE připraveno k programování vývojových desek STM 32 Blue Pill. Nahrajte program Sample Blink z IDE Arduino na desku STM32 Blue Pill, abychom se ujistili, že vše funguje správně. Ukázkový program najdete na
V ukázkovém programu, který se otevře, musíme provést malou změnu. Ve výchozím nastavení bude program napsán pro PB1, ale na naší desce je palubní LED připojena k PC13, takže vyměňte všechny PB1 za PC13 a je dobré pokračovat. Kompletní ukázkový program, který je modifikován lze nalézt také v dolní části této stránky.
Samotný kód uvnitř funkce smyčky je zobrazen níže, kde si můžeme všimnout, že pin PC13 je udržován VYSOKÝ (zapnutý) po dobu 1000 milisekund a poté vypnutý LOW (vypnutý) po dobu dalších 1000 milisekund, což se děje nekonečně dlouho, protože je v funkce smyčky . Zdá se tedy, že LED bliká s intervalem 1 000 milisekund.
digitalWrite (PC13, HIGH); // rozsvítí LED (HIGH je úroveň napětí) delay (1000); // čekání na druhý digitalWrite (PC13, LOW); // zhasne LED tím, že způsobí nízké zpoždění napětí (1000); // počkejte chvíli
Stiskněte tlačítko nahrávání na Arduino IDE a váš program by se měl zkompilovat a nahrát. Pokud vše funguje podle očekávání, měli byste na konzole Arduino IDE vidět následující.
Pokud byl program úspěšně nahrán, měli byste vidět zelenou LED blikající v intervalu 1 sekundy, jak je znázorněno na videu níže. Můžete také hrát s programem a zvyšovat nebo snižovat zpoždění. Nyní můžete začít používat vývojovou desku STM32 (Blue Pill) jako všechny ostatní desky Arduino, to znamená, že již nemusíte měnit pozici propojek nebo používat externí hardware k nahrávání a testování programů.
Doufám, že jste pochopili výukový program a zjistili jste, že je užitečné začít s deskou STM32. Pokud máte nějaký problém, nechte je v sekci komentářů, také mi řekněte, jaké projekty bychom měli s touto deskou STM32 v budoucnu vyzkoušet.