- Reikalingos medžiagos
- Grandinės schema
- „Maple Boot loader“ įkėlimas į „STM32 Development“ plokštę
- „Arduino IDE“ paruošimas ir tvarkyklių diegimas
- STM32 („Blue Pill“) programavimas tiesiogiai per USB prievadą
STM32 plėtros taryba korpusas STM32F103C8 Mikrovaldikliai vis labiau populiarėja dėl savo ARM Cortex M3 architektūra, jis turi aukštą veiklos greitį ir daugiau periferinius galimybes. Be to, kadangi šią plokštę galima lengvai užprogramuoti naudojant „Arduino IDE“, tai tapo geriausiu pasirinkimu daugeliui mėgėjų ir inžinierių, norint greitai sukurti prototipus.
Ankstesnėje mūsų pamokoje mes išmokome STM32 plėtros valdybos pagrindus ir užprogramavome ją mirksėti šviesos diodu. Bet tai buvo vienas didžiulis trūkumas. Norėdami programuoti valdybą, naudojome FTDI programuotojo modulį, taip pat turėjome perjungti įkrovos 0 trumpiklį tarp ir 1 padėties, tuo pačiu įkeliant ir išbandant kodą, o tai tikrai nelengva užduotis. Be to, „Development Board“ mini USB prievadas liko visiškai nenaudojamas. Priežastis tai yra ta, kad įsigijus STM32 kūrimo plokštę, nėra „Arduino“ paruošto įkroviklio, todėl plokštės neatras jūsų kompiuteris, kai jis bus prijungtas per USB.
Tikimės, kad egzistuoja „ LeafLabs“ sukurtas eksperimentinis įkrovos krautuvas „Maple“ mini plokštėms. Šį įkrovos pakrovėją galima vieną kartą įjungti į STM32, o tada mes galime tiesiogiai naudoti STM32 plokštės USB prievadą programoms įkelti, kaip ir bet kurios kitos „Arduino“ plokštės. Tačiau šis įkroviklis vis dar yra kūrimo etape dokumentuojant šią pamoką ir nerekomenduojamas kritinėms programoms. Prieš pradėdami naudoti šią mokymo programą, įsitikinkite, kad perskaitėte ankstesnę mokymo programą, kad suprastumėte šios lentos pagrindus, įskaitant išsamią informaciją apie specifikacijas ir išimtis.
Reikalingos medžiagos
- STM32 - („BluePill“) plėtros valdyba (STM32F103C8)
- FTDI programuotojas
- Bandomoji Lenta
- Jungiamieji laidai
- Nešiojamas kompiuteris su internetu
Grandinės schema
Norėdami programuoti „STM32 Blue Pill“ plokštę tiesiai per USB prievadą, pirmiausia turime įjungti „Maple“ įkrovos įtaisą į MCU. Norėdami tai padaryti, turime naudoti „Serial FTDI“ plokštę. Ši plokštė yra prijungta prie STM32 Rx ir Tx kaiščių, kaip parodyta žemiau.
FTDI plokštės Vcc kaištis yra prijungtas prie STM32 5V plokštės maitinimo kaiščio. Žemė yra prijungta prie STM32 žemės. FTDI plokštės Rx ir Tx kaiščiai yra prijungti prie atitinkamai STM32 A9 ir A10 kaiščių. Kur A9 yra STM32 MCU Tx kaištis, o A10 - Rx kaištis.
Įkeldami įkrovos įkroviklį įsitikinkite, kad lentos įkrovos 0 jungiklio kaištis yra nustatytas į 1 (programavimo režimas). Kai pradinis krautuvas mirksi, šį kaištį galima pakeisti į pradinę padėtį (darbo režimą).
„Maple Boot loader“ įkėlimas į „STM32 Development“ plokštę
Kai atliksime pirmiau nurodytą jungtį, prijunkite FTDI plokštę prie savo kompiuterio ir atlikite nurodytus veiksmus, kad įkrovos įkroviklis būtų įjungtas į STM32.
1 žingsnis: Mes turime atsisiųsti įkrovos programos failo dvejetainius failus (šiukšliadėžės failą) iš „github“ puslapio. Yra daugybė šiukšliadėžės failo versijų. „Blue Pill“ lentoje naudokite šią „github“ nuorodą ir spustelėkite atsisiuntimo mygtuką, kad atsisiųstumėte šiukšliadėžės failą.
2 žingsnis: Tada turime atsisiųsti ir įdiegti „STM Flash loader“ programinę įrangą, kad atsisiųstos šiukšliadėžės failas mirksėtų į STM32. Spustelėkite šią nuorodą, kad patektumėte į ST svetainę, slinkite į apačią ir spustelėkite gauti programinę įrangą
3 žingsnis: Norėdami atsisiųsti programinę įrangą, turite įvesti savo el. Pašto adresą, o atsisiuntimo nuoroda bus nusiųsta į jūsų el. Paštą. Tada spustelėkite nuorodą atgal į svetainę ir dar kartą spustelėkite „Gauti programinę įrangą“ ir pradėsite atsisiųsti. Taip, tai šiek tiek apmaudu, tačiau taip reikėtų elgtis. Nepamirškite patikrinti, ar jūsų el. Laiškuose nėra šlamšto aplanko, kartais prireikia kelių minučių, kol el. Paštas bus gautas.
4 žingsnis: Kai atsisiųsite, įdiekite programinę įrangą, įsitikinkite, kad STM32 plokštė prijungta prie kompiuterio per FTDI plokštę, tada paleiskite programinę įrangą. Programinė įranga automatiškai aptiks COM prievadą, jei nenaudosite „Device Manager“ ir įsitikinsite, kad pasirinkote teisingą COM prievado numerį. Mano atveju tai yra COM4. Palikite likusį nustatymą taip, kaip parodyta žemiau.
5 žingsnis: Du kartus spustelėkite mygtuką Kitas ir programinė įranga vėl automatiškai aptiks lentos informaciją ir rodys, kaip parodyta žemiau. Mūsų naudojama plokštė yra STM32F1 su 128K „flash“ atmintimi.
6 žingsnis: Kitame žingsnyje pasirinkite Atsisiųsti į įrenginį ir pereikite prie vietos, kurioje atsisiuntėme šiukšliadėžės failą atlikdami 1 veiksmą, ir pasirinkite jį. Spustelėkite kitą.
7 žingsnis: Programinė įranga atsisiųs kai kuriuos reikalingus failus, kaip parodyta žemiau, ir tada pradės mirksėti.
8 žingsnis: Kai mirksėjimas bus sėkmingai baigtas, gausime žemiau pateiktą ekraną. Spustelėkite uždaryti ir uždarykite programą. Sėkmingai mirktelėjome STM32 plokštę su „Arduino“ įkrovikliu. Dabar, norėdami užprogramuoti STM32 plokštę, turime paruošti „Arduino IDE“ ir įdiegti tvarkykles.
„Arduino IDE“ paruošimas ir tvarkyklių diegimas
Atlikite toliau nurodytus veiksmus, norėdami atsisiųsti ir paruošti „Arduino IDE“, skirtą naudoti su „STM 32 Development Board“.
1 žingsnis: - Jei dar neįdiegėte „Arduino IDE“, atsisiųskite ir įdiekite jį iš šios nuorodos. Įsitikinkite, kad pasirinkote teisingą operacinę sistemą.
2 žingsnis: - Įdiegę „Arduino IDE“, atidarykite ir atsisiųskite reikiamus STM32 plokštės paketus. Tai galima padaryti pasirinkus Failas -> Nuostatos .
3 žingsnis: - Spustelėję Parinktys, atidarysite žemiau pateiktą dialogo langą. Papildomame lentų tvarkyklės URL teksto laukelyje įklijuokite žemiau esančią nuorodą
dan.drown.org/stm32duino/package_STM32duino_index.json
ir paspauskite Gerai.
4 žingsnis: - Dabar eikite į Įrankis -> Lentos -> Valdybos valdytojas . Tai atvers „Boards manager“ dialogo langą, ieškos „STM32F1“ ir įdiegs pasirodžiusį paketą.
5 žingsnis: Įdiegę paketą, eikite į C: \ Program Files (x86) Arduino \ hardware \ Arduino_STM32-master \ drivers \ win \ win, kur rasite install_drivers.bat ir install_STM_COM_drivers.bat .
6 žingsnis: Spustelėkite abu šikšnosparnio failus ir įdiekite tvarkykles. Jūs gausite DOS ekraną, kaip parodyta žemiau.
Dabar „Arduino IDE“ yra parengta programuoti STM32 („Blue Pill“) plėtros valdybą, taip pat įdiegti tvarkyklės.
STM32 („Blue Pill“) programavimas tiesiogiai per USB prievadą
Išimkite FTDI plokštę ir visas esamas jungtis iš savo STM32. Tiesiog naudokite STM32 plokštės „micro-USB“ prievadą, kad prijungtumėte jį prie kompiuterio, kaip parodyta žemiau. Įsitikinkite, kad džemperio 0 kaištis yra padėtyje 0 (darbo režimas). Vėliau mums nebereikia perjungti trumpiklio, kad galėtume įkelti ir paleisti programas.
Jūsų kompiuteris turėtų sugebėti atrasti lentą dabar. Palaukite šiek tiek laiko, jei matote, kad įdiegiami papildomi tvarkyklės. Tada patekite į „ Device manager“ ir patikrinkite, ar jūsų STM32 plokštė atrasta skyriuje COM ir prievadas, kaip parodyta žemiau. Mano prisijungta prie COM8 pavadinimu „Maple Mini“.
Eikite į „ Tools“ ir slinkite žemyn, kad rastumėte „Generic STM32F103C“ seriją, kaip parodyta žemiau. Tada įsitikinkite, kad variantas yra 64 k „ Flash“ tipo , procesoriaus greitis yra 72 MHz ir pakeiskite įkėlimo būdą į „ STM32duino Bootloader“ . Taip pat pasirinkite teisingą COM prievadą pagal įrenginių tvarkytuvėje esantį.
Atlikę visus pakeitimus, patikrinkite apatinį dešinįjį „Arduino IDE“ kampą ir turėtumėte pastebėti, kad nustatytas šis nustatymas. Mano STM32 plokštė prijungta prie COM8, bet jūsų gali skirtis
Dabar „Arduino IDE“ yra pasirengusi užprogramuoti „STM 32 Blue Pill Development Board“. Norėdami įsitikinti, kad viskas veikia tinkamai, įkelkime „Arduino IDE“ pavyzdinę „Blink“ programą į „STM32 Blue Pill“ plokštę. Programos pavyzdį galite rasti
Atidarytoje programos pavyzdyje turime padaryti nedidelį pakeitimą. Pagal numatytuosius nustatymus programa bus parašyta PB1, tačiau mūsų plokštėje borto šviesos diodas yra prijungtas prie PC13, todėl pakeiskite visus PB1 į PC13, ir mes galime tęsti. Visą modifikuotą programos pavyzdį taip pat galite rasti šio puslapio apačioje.
Vien tik ciklo funkcijos kodas rodomas žemiau, kur galime pastebėti, kad PC13 kaištis laikomas HIGH (įjungtas) 1000 milisekundžių, o tada dar 1000 milisekundžių įjungiamas LOW (išjungtas) ir tai daroma begalę kartų, nes jis yra ciklo funkcija. Taigi atrodo, kad šviesos diodas mirksi 1000 milisekundžių intervalu.
„digitalWrite“ (PC13, HIGH); // įjungti šviesos diodą (HIGH yra įtampos lygis) vėlavimas (1000); // palaukite antro „ digitalWrite“ (PC13, LOW); // išjunkite šviesos diodą, padarydami mažą įtampą (1000); // palauk sekundę
Paspauskite „Arduino IDE“ įkėlimo mygtuką ir jūsų programa turėtų būti sukompiliuota ir įkelta. Jei viskas veikė taip, kaip tikėtasi, „Arduino IDE“ konsolėje turėtumėte pamatyti šiuos dalykus.
Jei programa sėkmingai įkelta, turėtumėte pamatyti, kad žalias šviesos diodas mirksi 1 sekundės intervalu, kaip parodyta toliau pateiktame vaizdo įraše. Taip pat galite mąstyti su programa, norėdami padidinti arba sumažinti vėlavimą. Dabar galite pradėti naudoti „STM32“ („Blue Pill“) plėtros plokštę, kaip ir bet kurias kitas „Arduino“ plokštes, ty jums nebereikia keisti džemperių padėties ar naudoti išorinės aparatūros programoms įkelti ir išbandyti.
Tikimės, kad supratote mokymo programą ir radote naudą pradėti naudotis „STM32 Board“. Jei turite kokių nors problemų, palikite juos komentarų skyriuje, taip pat pasakykite, kokius projektus ateityje turėtume išbandyti naudodami šią STM32 plokštę.