- Potrebné materiály
- Schéma zapojenia
- Načítanie zavádzača Maple Boot na vývojovú dosku STM32
- Príprava IDE Arduino a inštalácia ovládačov
- Programovanie STM32 (modrá pilulka) priamo cez USB port
STM32 Development Board Skriňa STM32F103C8 Mikroprocesor je stále viac populárny vďaka svojej ARM Cortex M3 architektúre, má vysokú prevádzkovú rýchlosť a ďalšie periférne možnosti. Pretože sa táto doska dá ľahko naprogramovať pomocou Arduino IDE, stala sa preferovanou voľbou pre mnohých fanúšikov a technikov pre rýchle prototypovanie.
V našom predchádzajúcom tutoriáli sme sa naučili základy vývojovej rady STM32 a naprogramovali sme ju tak, aby blikala LED. Malo to však jednu obrovskú nevýhodu. Na programovanie dosky sme použili programátorský modul FTDI a tiež sme museli počas nahrávania a testovania kódu prepínať prepojku bootovacej 0 medzi a 1 pozíciou, čo je určite náročná úloha. Taktiež mini-USB port na vývojovej doske zostal úplne nepoužívaný. Dôvodom je to, že keď je zakúpená vývojová doska STM32 , nedodáva sa s bootovacím nakladačom pripraveným pre Arduino, a preto ju počítač po pripojení cez USB neobjaví.
Dúfajme však, že existuje experimentálny zavádzač vyvinutý spoločnosťou LeafLabs pre mini dosky Maple. Tento bootloader je možné do STM32 flashovať raz a potom môžeme priamo použiť USB port na doske STM32 na nahrávanie programov rovnako ako na akékoľvek iné dosky Arduino. Tento zavádzač je však v čase dokumentovania tohto tutoriálu stále vo vývojovom štádiu a nie je vhodný pre kritické aplikácie. Pred pokračovaním v tomto tutoriáli si prečítajte predchádzajúci tutoriál, aby ste pochopili základné informácie o tejto doske vrátane podrobností o špecifikáciách a doplnkoch.
Potrebné materiály
- STM32 - vývojová doska (BluePill) (STM32F103C8)
- Programátor FTDI
- Nepál
- Pripojovacie vodiče
- Notebook s internetom
Schéma zapojenia
Ak chcete naprogramovať dosku STM32 Blue Pill priamo cez USB port, je potrebné najskôr naštartovať zavádzač Maple do MCU. Aby sme to dosiahli, musíme použiť dosku Serial FTDI. Táto doska je pripojená k pinom Rx a Tx na STM32, ako je to znázornené nižšie.
Pin Vcc dosky FTDI je pripojený k pinu STM32 5V napájania dosky. Zem je pripojená k zemi STM32. Pin Rx a Tx dosky FTDI je pripojený k pinom A9 a A10 modulu STM32. Kde A9 je pin Tx STM32 MCU a A10 je pin Rx.
Počas nahrávania bootloaderu sa uistite, či je prepojovací kolík bootovania 0 na doske nastavený na 1 (programovací režim). Akonáhle bliká bootloader, tento pin sa dá zmeniť späť do pôvodnej polohy (prevádzkový režim).
Načítanie zavádzača Maple Boot na vývojovú dosku STM32
Po vykonaní vyššie uvedeného pripojenia pripojte dosku FTDI k počítaču a postupujte podľa pokynov na zavedenie bootovacieho zavádzača do STM32.
Krok 1: Musíme si stiahnuť binárne súbory súborov zavádzacieho programu (súbor bin) zo stránky github. Existuje veľa verzií súboru bin, pre dosku Blue Pill použite tento odkaz github a kliknutím na tlačidlo sťahovania stiahnite súbor bin.
Krok 2: Ďalej musíme stiahnuť a nainštalovať softvér STM Flash loader, aby sme stiahli súbor bin do pamäte flash do STM32. Kliknutím na tento odkaz sa dostanete na webovú stránku ST, posuňte sa nadol a kliknite na položku získať softvér
Krok 3: Ak chcete stiahnuť softvér, musíte zadať svoju e-mailovú adresu a na váš e-mail sa odošle odkaz na stiahnutie. Potom postupujte podľa odkazu späť na webovú stránku, znova kliknite na možnosť získať softvér a začne sa sťahovanie. Áno, je to trochu frustrujúce, ale takto by sa to malo robiť. Nezabudnite skontrolovať e-mail vo svojom priečinku so spamom. Doručenie e-mailu niekedy trvá pár minút.
Krok 4: Po stiahnutí nainštalujte softvér, uistite sa, že je doska STM32 pripojená k vášmu počítaču prostredníctvom dosky FTDI, a potom spustite softvér. Softvér automaticky zistí port COM, ak nepoužíva Správcu zariadení, a uistite sa, že ste vybrali správne číslo portu COM. V mojom prípade je to COM4. Zvyšok nastavenia nechajte tak, ako je to znázornené nižšie.
Krok 5: Dvakrát kliknite na tlačidlo Ďalej a softvér znova automaticky zistí podrobnosti dosky a zobrazí sa, ako je uvedené nižšie. Doska, ktorú používame, je STM32F1 so 128K flash pamäťou.
Krok 6: V ďalšom kroku vyberte možnosť Stiahnuť do zariadenia, vyhľadajte umiestnenie, kam sme si stiahli náš súbor bin v kroku 1, a vyberte ho. Kliknite na Ďalej.
Krok 7: Softvér stiahne niektoré požadované súbory, ako je uvedené nižšie, a potom začne proces blikania.
Krok 8: Po úspešnom dokončení blikania sa zobrazí obrazovka nižšie. Kliknite na zavrieť a ukončite aplikáciu. Dosku STM32 sme úspešne flashovali pomocou bootovacieho nakladača Arduino. Teraz musíme pripraviť Arduino IDE a nainštalovať ovládače, aby sme mohli naprogramovať dosku STM32.
Príprava IDE Arduino a inštalácia ovládačov
Podľa nasledujúcich pokynov si stiahnite a pripravte IDE Arduino na použitie s vývojovou doskou STM 32.
Krok 1: - Ak ešte nemáte nainštalované IDE Arduino, stiahnite si ho a nainštalujte z tohto odkazu. Uistite sa, že ste vybrali správny operačný systém.
Krok 2: - Po inštalácii Arduino IDE otvorte a stiahnite požadované balíčky pre dosku STM32. Môžete to urobiť výberom položky Súbor -> Predvoľby .
Krok 3: - Kliknutím na Predvoľby sa otvorí nižšie zobrazené dialógové okno. Do nasledujúceho textového poľa URL správcu násteniek vložte nasledujúci odkaz
dan.drown.org/stm32duino/package_STM32duino_index.json
a stlačte OK.
Krok 4: - Teraz choďte na Tool -> Boards -> Board Manager . Týmto sa otvorí dialógové okno Správca dosiek, vyhľadá sa „STM32F1“ a nainštaluje sa zobrazený balík.
Krok 5: Po nainštalovaní balíka prejdite do priečinka C: \ Program Files (x86) Arduino \ hardware \ Arduino_STM32-master \ drivers \ win, kde nájdete install_drivers.bat a install_STM_COM_drivers.bat .
Krok 6: Kliknite na oba súbory netopierov a nainštalujte ovládače. Dostanete obrazovku systému DOS, ako je uvedené nižšie.
Teraz je Arduino IDE pripravené na programovanie vývojovej dosky STM32 (Blue Pill) a sú tiež nainštalované ovládače.
Programovanie STM32 (modrá pilulka) priamo cez USB port
Odpojte z vášho STM32 dosku FTDI a všetky existujúce pripojenia. Pomocou portu micro-USB na doske STM32 ho pripojte k počítaču, ako je to znázornené nižšie. Skontrolujte, či je kolík 0 prepojky nastavený dozadu na 0 (prevádzkový režim). Ďalej už nebudeme musieť prepínať prepojku, aby ste mohli nahrávať a spúšťať programy.
Váš počítač by mal byť schopný objaviť nástenku hneď teraz. Chvíľu počkajte, ak uvidíte, že sa inštalujú ďalšie ovládače. Potom choďte do Správcu zariadení a skontrolujte, či je vaša doska STM32 objavená v sekcii COM a port, ako je to zobrazené nižšie. Moja je pripojená k COM8 s názvom Maple Mini.
Prejdite do ponuky Nástroje a posuňte sa nadol a nájdite generickú sériu STM32F103C, ako je uvedené nižšie. Potom sa uistite, že variantom je 64k Flash , rýchlosť CPU je 72MHz a zmeňte spôsob nahrávania na STM32duino Bootloader . Vyberte tiež správny port COM podľa portu vo vašom správcovi zariadení.
Po vykonaní všetkých zmien skontrolujte pravý dolný roh Arduino IDE a mali by ste si všimnúť, že je nastavené nasledujúce nastavenie. Moja doska STM32 je pripojená k COM8, ale vaša sa môže líšiť
Teraz je Arduino IDE pripravené na programovanie vývojových dosiek STM 32 Blue Pill. Nahrajme program Sample Blink z IDE Arduino na dosku STM32 Blue Pill, aby sme sa ubezpečili, že všetko funguje správne. Ukážkový program nájdete na
V ukážkovom programe, ktorý sa otvorí, musíme urobiť malú zmenu. V predvolenom nastavení bude program napísaný pre PB1, ale na našej doske je palubná LED pripojená k PC13, takže vymeňte všetky PB1 za PC13 a môžeme pokračovať. Kompletný ukážkový program, ktorý je modifikovaný možno nájsť aj v dolnej časti tejto stránky.
Samotný kód vo vnútri funkcie slučky je zobrazený nižšie, kde si môžeme všimnúť, že pin PC13 je udržiavaný VYSOKÝ (zapnutý) po dobu 1000 milisekúnd a potom vypnutý LOW (vypnutý) po dobu ďalších 1000 milisekúnd, čo sa deje nekonečne dlho, pretože je v funkcia slučky . Zdá sa teda, že LED dióda bliká s intervalom 1 000 milisekúnd.
digitalWrite (PC13, HIGH); // rozsvieti LED (HIGH je úroveň napätia) delay (1000); // čakať na druhý digitalWrite (PC13, LOW); // zhasne LED dióda urobením malého oneskorenia napätia (1000); // počkaj chvíľu
Stlačte tlačidlo nahrávania na Arduino IDE a váš program by sa mal kompilovať a nahrať. Ak všetko fungovalo podľa očakávaní, mali by ste na svojej konzole Arduino IDE vidieť toto.
Pokiaľ bol program úspešne nahraný, mali by ste vidieť blikanie zelenej LED v intervale 1 sekundy, ako je to znázornené na videu nižšie. S programom sa môžete tiež pohrávať a zvyšovať alebo znižovať oneskorenie. Teraz môžete začať používať vývojovú dosku STM32 (Blue Pill) ako všetky ostatné dosky Arduino, to znamená, že už nemusíte meniť pozíciu prepojok alebo používať externý hardvér na nahrávanie a testovanie programov.
Dúfam, že ste pochopili výukový program a považovali ste za užitočné začať s doskou STM32. Ak máte problém nechať ich v sekcii komentárov, tiež mi povedzte, aké projekty by sme mali s touto doskou STM32 v budúcnosti vyskúšať.