- Potrebni materiali
- Shema vezja
- Nalaganje nakladalnika Maple Boot na razvojno ploščo STM32
- Priprava IDE Arduino in namestitev gonilnikov
- Programiranje STM32 (modra tabletka) neposredno prek vrat USB
STM32 razvojni svet ohišje STM32F103C8 Mikrokontroler je vse bolj priljubljena zaradi svoje ARM Cortex M3 arhitekture, ima visoko hitrost delovanja in bolj obrobnih možnosti. Ker je to ploščo mogoče enostavno programirati z uporabo Arduino IDE, je postala priljubljena izbira za številne ljubitelje in inženirje za hitro izdelavo prototipov.
V prejšnji vadnici smo se naučili osnov razvojne plošče STM32 in jo tudi programirali tako, da utripa LED. Toda pri tem je bila ena velika pomanjkljivost. Za programiranje plošče smo uporabili modul programerja FTDI, med nalaganjem in testiranjem kode pa smo morali preklopiti zagonski 0 mostiček med in 1 položaj, kar je zagotovo zastrašujoča naloga. Tudi vrata mini-USB na razvojni plošči so ostala popolnoma neuporabljena. Razlog za to je, da ob nakupu razvojne plošče STM32 ni priložen zagonski nalagalnik Arduino, zato računalnik ob povezavi prek USB plošče ne bo odkril.
Upamo pa, da obstaja poskusni zagonski nalagalnik, ki ga je razvil LeafLabs za Maple mini plošče. Ta zagonski nalagalnik lahko enkrat vklopite v STM32, nato pa lahko neposredno uporabimo vrata USB plošče STM32 za nalaganje programov, tako kot katere koli druge plošče Arduino. Vendar pa je ta zagonski nalagalnik v času dokumentiranja te vadnice še v fazi razvoja in ni priporočljiv za kritične aplikacije. Pred postopki s to vadnico se prepričajte, da ste prebrali prejšnjo vadnico, da boste razumeli osnove te plošče, vključno s podrobnostmi o specifikacijah in izvlečkih.
Potrebni materiali
- STM32 - (BluePill) Development Board (STM32F103C8)
- Programer FTDI
- Breadboard
- Priključne žice
- Prenosnik z internetom
Shema vezja
Za programiranje plošče STM32 Blue Pill neposredno prek vrat USB moramo najprej vstaviti zagonski nalagalnik Maple v MCU. Za to moramo uporabiti serijsko ploščo FTDI. Ta plošča je priključena na zatič Rx in Tx STM32, kot je prikazano spodaj.
Vcc zatič na plošči FTDI je povezan s 5V zatičem STM32 za napajanje plošče. Ozemljitev je povezana z ozemljitvijo STM32. Zatič Rx in Tx plošče FTDI je povezan z zatičem A9 in A10 STM32. Kjer je A9 Tx zatič STM32 MCU, A10 pa Rx pin.
Prepričajte se, da je med nalaganjem zagonskega nalagalnika zagonski zatič 0 na plošči nastavljen na 1 (način programiranja). Ko utripa zagonski nalagalnik, lahko ta zatič spremenite v začetni položaj (način delovanja).
Nalaganje nakladalnika Maple Boot na razvojno ploščo STM32
Ko vzpostavimo zgornjo povezavo, povežite ploščo FTDI z računalnikom in sledite korakom za vklop zagonskega nalagalnika v STM32.
1. korak: S strani github moramo prenesti binarne datoteke programske datoteke zagonskega nalagalnika (bin datoteka). Obstaja veliko različic datoteke bin, za ploščo Blue Pill uporabite to povezavo github in kliknite gumb za prenos, da prenesete datoteko bin.
2. korak: Nato moramo prenesti in namestiti programsko opremo za nalaganje STM Flash, da preneseno datoteko bin utripamo v STM32. Kliknite to povezavo, da pridete na spletno mesto ST, se pomaknite na dno in kliknite na programsko opremo
3. korak: Za prenos programske opreme morate vnesti svoj e-poštni naslov in povezava za prenos bo poslana na vaš e-poštni naslov. Nato sledite povezavi do spletnega mesta in znova kliknite na programsko opremo in prenos se bo začel. Da, nekoliko je moteče, ampak tako je treba storiti. Ne pozabite preveriti, ali je v mapi z vsiljeno pošto e-pošta, včasih traja nekaj minut, da prispe.
4. korak: Ko prenesete namestite programsko opremo, se prepričajte, da je plošča STM32 povezana z računalnikom prek plošče FTDI in nato zaženite programsko opremo. Programska oprema samodejno zazna vrata COM, če ne uporablja upravitelja naprav, in poskrbi, da ste izbrali pravilno številko vrat COM. V mojem primeru je COM4. Preostanek nastavitve pustite tako, kot je prikazano spodaj.
5. korak: Dvakrat kliknite gumb Naprej in programska oprema bo znova samodejno zaznala podrobnosti plošče in prikazala, kot je prikazano spodaj. Plošča, ki jo uporabljamo, je STM32F1 s 128K bliskovnim pomnilnikom.
6. korak: V naslednjem koraku izberite Prenos v napravo in poiščite mesto, kamor smo v 1. koraku prenesli datoteko za smeti, in jo izberite. Kliknite naprej.
7. korak: Programska oprema bo prenesla nekatere zahtevane datoteke, kot je prikazano spodaj, in nato začela postopek utripanja.
Korak 8: Ko je utripanje uspešno zaključeno, bomo dobili spodnji zaslon. Kliknite zapri in zaprite aplikacijo. Na ploščo STM32 smo uspešno spravili zagonski nalagalnik Arduino. Zdaj moramo pripraviti Arduino IDE in namestiti gonilnike, preden lahko programiramo ploščo STM32.
Priprava IDE Arduino in namestitev gonilnikov
Sledite spodnjim korakom, da prenesete in pripravite Arduino IDE za uporabo z razvojno ploščo STM 32.
1. korak: - Če še niste namestili Arduino IDE, ga prenesite in namestite s te povezave. Prepričajte se, da ste izbrali svoj pravi operacijski sistem.
2. korak: - Po namestitvi Arduino IDE odprite in prenesite potrebne pakete za ploščo STM32. To lahko storite tako, da izberete Datoteka -> Nastavitve .
3. korak: - S klikom na Preferences se odpre spodnje prikazano pogovorno okno. V dodatno besedilno polje URL upravitelja plošč prilepite spodnjo povezavo
dan.drown.org/stm32duino/package_STM32duino_index.json
in pritisnite OK.
4. korak: - Zdaj pojdite na Orodje -> Plošče -> Upravitelj plošč . S tem se odpre pogovorno okno upravitelja plošč, poiščite »STM32F1« in namestite paket, ki se prikaže.
5. korak: Po namestitvi paketa pojdite na C: \ Program Files (x86) Arduino \ hardware \ Arduino_STM32-master \ drivers \ win, kjer boste našli install_drivers.bat in install_STM_COM_drivers.bat .
6. korak: Kliknite obe datoteki bat in namestite gonilnike. Dobili boste zaslon DOS, kot je prikazano spodaj.
Zdaj je Arduino IDE pripravljen za programiranje razvojne plošče STM32 (Blue Pill) in gonilniki so tudi nameščeni.
Programiranje STM32 (modra tabletka) neposredno prek vrat USB
Odstranite ploščo FTDI in vse obstoječe povezave s svojega STM32. Preprosto uporabite vrata micro-USB na plošči STM32, da jih povežete z računalnikom, kot je prikazano spodaj. Prepričajte se, da je nož mostička 0 postavljen nazaj na 0 (način delovanja). V nadaljevanju nam ni treba več preklapljati mostička za nalaganje in zagon programov.
Vaš računalnik bi moral zdaj lahko odkriti ploščo. Počakajte nekaj časa, če opazite namestitev dodatnih gonilnikov. Nato pojdite v upravitelj naprav in preverite, ali je plošča STM32 odkrita v razdelku COM in vrata, kot je prikazano spodaj. Moj je povezan s COM8 z imenom Maple Mini.
Pojdite na Orodja in se pomaknite navzdol, da najdete generično serijo STM32F103C, kot je prikazano spodaj. Nato se prepričajte, da je različica tipa Flash 64k , hitrost procesorja 72MHz in spremenite način nalaganja na STM32duino Bootloader . Izberite tudi ustrezna vrata COM glede na vrata v upravitelju naprave.
Po izvedbi vseh sprememb preverite spodnji desni kot Arduino IDE in opazili boste, da je nastavljena naslednja nastavitev. Moja plošča STM32 je povezana s COM8, vendar se vaša morda razlikuje
Zdaj je Arduino IDE pripravljen za programiranje razvojnih plošč STM 32 Blue Pill. Naložimo vzorčni program za utripanje iz Arduino IDE na ploščo STM32 Blue Pill, da se prepričamo, da vse deluje pravilno. Primer programa najdete na
V primeru programa, ki se odpre, moramo narediti majhno spremembo. Program bo privzeto napisan za PB1, toda na naši plošči je vgrajena LED dioda priključena na PC13, zato zamenjajte vse PB1 s PC13, zato moramo nadaljevati. Celoten primer program, ki je prirejena je mogoče najti tudi na dnu te strani.
Koda znotraj funkcije zanke je prikazana spodaj, kjer lahko opazimo, da je zatič PC13 1000 VISOK (vklopljen) 1000 milisekund, nato pa NIS (izklopljen) še nadaljnjih 1000 milisekund in to neomejeno večkrat, odkar je v funkcija zanke . Tako se zdi, da LED utripa s presledkom 1000 milisekund.
digitalWrite (PC13, HIGH); // vklop LED (HIGH je nivo napetosti) zakasnitev (1000); // čakamo na drugi digitalWrite (PC13, LOW); // izklopimo LED z nizko zakasnitvijo napetosti (1000); // počakajte sekundo
Pritisnite gumb za nalaganje na Arduino IDE in vaš program se bo zbral in naložil. Če je vse delovalo po pričakovanjih, morate na konzoli Arduino IDE videti naslednje.
Če je bil program uspešno naložen, potem mora zeleni LED utripati v intervalu 1 sekunde, kot je prikazano na spodnjem videoposnetku. Za povečanje ali zmanjšanje zakasnitve se lahko tudi ukvarjate s programom. Zdaj lahko začnete uporabljati razvojno ploščo STM32 (Blue Pill) kot vse druge plošče Arduino, torej vam ni treba več spreminjati položaja mostičkov ali uporabljati zunanje strojne opreme za nalaganje in preizkušanje programov.
Upam, da ste razumeli vadnico in se vam je zdelo koristno začeti uporabljati ploščo STM32. Če imate kakršne koli težave, jih pustite v oddelku za komentarje, povejte mi tudi, katere projekte bi morali poskusiti s to ploščo STM32 v prihodnosti.