- Szükséges anyagok
- Kördiagramm
- A Maple Boot loader feltöltése az STM32 fejlesztői táblára
- Az Arduino IDE előkészítése és az illesztőprogramok telepítése
- Az STM32 (kék tabletta) programozása közvetlenül az USB porton keresztül
A STM32 Development Board ház a STM32F103C8 mikrokontroller egyre egyre népszerűbb köszönhetően ARM Cortex M3 építészet, azt nagy működési sebesség és több kerületi lehetőségeket. Mivel ez a tábla könnyen programozható az Arduino IDE használatával, sok hobbista és mérnök számára előnyös választássá vált a gyors prototípus készítéshez.
Korábbi oktatóanyagunkban megtanultuk az STM32 Fejlesztő Testület alapjait, és azt is programoztuk, hogy egy LED villogjon. De volt egy hatalmas hátránya vele. A Board programozásához FTDI programozó modult használtunk, és a kód feltöltése és tesztelése közben váltanunk kellett a boot 0 jumpert és 1 pozíciót, ami bizony félelmetes feladat. A fejlesztõlap mini-USB portja szintén teljesen kihasználatlan maradt. Ennek az az oka, hogy amikor megvásárolja az STM32 fejlesztõpanelt, az nem jár Arduino készenléti betöltõvel, így a számítógép nem fogja felfedezni a táblát, ha USB-n keresztül csatlakoztatja.
Remélhetőleg mégis létezik egy kísérleti boot betöltő, amelyet a LeafLabs fejlesztett a Maple mini táblákhoz . Ez a rendszerbetöltő egyszer felvillanhat az STM32-be, és ezt követően közvetlenül az STM32 kártya USB-portját használhatjuk programok feltöltésére, csakúgy, mint bármely más Arduino táblát. Ez a rendszerbetöltő azonban az oktatóanyag dokumentálásakor még fejlesztési szakaszban van, és kritikus alkalmazásokhoz nem ajánlott. Mielőtt folytatná ezt az oktatóanyagot, győződjön meg arról, hogy elolvasta az előző oktatóanyagot, hogy megértse a tábla alapjait, beleértve a specifikációkkal és a kitűzőkkel kapcsolatos részleteket.
Szükséges anyagok
- STM32 - (BluePill) Fejlesztési Testület (STM32F103C8)
- FTDI programozó
- Kenyérlemez
- Csatlakozó vezetékek
- Laptop internet
Kördiagramm
Az STM32 Blue Pill kártya programozásához közvetlenül az USB porton keresztül először be kell villantanunk a Maple rendszerbetöltőt az MCU-ba. Ehhez Serial FTDI kártyát kell használnunk. Ez a kártya az alábbiak szerint csatlakozik az STM32 Rx és Tx tűjéhez.
Az FTDI kártya Vcc tűje csatlakozik a kártya tápellátásának STM32 5V tűjéhez. A föld csatlakozik az STM32 földeléséhez. Az FTDI kártya Rx és Tx csapja az STM32 A9 és A10 tűjéhez van csatlakoztatva. Ahol az A9 az STM32 MCU Tx csapja és az A10 az Rx tű.
A rendszerbetöltő feltöltése közben győződjön meg arról, hogy a táblán a boot 0 jumper csapja 1-re van állítva (programozási mód). A rendszerbetöltő felvillanása után ez a csap visszaállítható a kiinduló helyzetbe (üzemmód).
A Maple Boot loader feltöltése az STM32 fejlesztői táblára
Miután létrehoztuk a fenti kapcsolatot, csatlakoztassa az FTDI kártyát a számítógépéhez, és kövesse a lépéseket a rendszerbetöltő felvillanására az STM32-be.
1. lépés: Le kell töltenünk a boot loader program fájljának bináris fájljait (bin fájl) a github oldalról. A kukafájlnak sok változata létezik, a Blue Pill táblához használja ezt a github linket, és kattintson a letöltés gombra a kuka fájl letöltéséhez.
2. lépés: Ezután le kell töltenünk és telepítenünk kell az STM Flash loader szoftvert, hogy a letöltött bin fájl az STM32-be villanjon. Erre a linkre kattintva juthat be az ST webhelyére, görgessen az aljára, és kattintson a szoftver letöltésére
3. lépés: A szoftver letöltéséhez be kell írnia az e-mail címét, és a letöltési linket elküldi az e-mailre. Ezután kövesse a linket a webhelyre, és kattintson a szoftver letöltése gombra, és a letöltés megkezdődik. Igen, ez egy kicsit frusztráló, de ezt így kell csinálni. Ne felejtse el ellenőrizni a spam mappát az e-mailek iránt, néha néhány percbe telik, amíg az e-mail megérkezik.
4. lépés: Miután letöltötte a szoftver telepítését, ellenőrizze, hogy az STM32 kártya csatlakozik-e a számítógéphez az FTDI kártya segítségével, majd indítsa el a szoftvert. A szoftver automatikusan felismeri a COM portot, ha nem használja az Eszközkezelőt, és győződjön meg arról, hogy a megfelelő COM port számot választotta. Az én esetemben ez a COM4. Hagyja a beállítás többi részét az alábbiak szerint.
5. lépés: Kattintson kétszer a Tovább gombra, és a szoftver ismét automatikusan észleli a tábla részleteit és megjelenik az alábbiak szerint. Az általunk használt tábla az STM32F1, 128K flash memóriával.
6. lépés: A következő lépésben válassza a Letöltés eszközre lehetőséget, és keresse meg azt a helyet, ahová az 1. lépésben letöltöttük a bin fájlt, és válassza ki azt. Kattintson a következőre.
7. lépés: A szoftver letölti a szükséges fájlokat az alábbiak szerint, majd megkezdi a villogást.
8. lépés: Miután a villogás sikeresen befejeződött, megkapjuk az alábbi képernyőt. Kattintson a bezárásra, és lépjen ki az alkalmazásból. Sikeresen felvillantottuk az STM32 táblát az Arduino rendszerbetöltővel. Most elő kell készítenünk az Arduino IDE-t és telepítenünk kell az illesztőprogramokat, mielőtt programozni tudnánk az STM32 kártyát.
Az Arduino IDE előkészítése és az illesztőprogramok telepítése
Kövesse az alábbi lépéseket az Arduino IDE letöltéséhez és előkészítéséhez az STM 32 fejlesztői táblával való használatra.
1. lépés: - Ha még nem telepítette az Arduino IDE szoftvert, töltse le és telepítse erről a linkről. Győződjön meg róla, hogy a megfelelő operációs rendszert választotta.
2. lépés: - Az Arduino IDE telepítése után nyissa meg és töltse le a szükséges csomagokat az STM32 táblához. Ezt a Fájl -> Beállítások menüpont kiválasztásával teheti meg.
3. lépés: - A Preferences gombra kattintva megnyílik az alább látható párbeszédpanel. A további Táblákkezelő URL szövegmezőbe illessze be az alábbi linket
dan.drown.org/stm32duino/package_STM32duino_index.json
és nyomja meg az OK gombot.
4. lépés: - Most lépjen az Eszköz -> Táblák -> Igazgatóság menedzser oldalra . Ez megnyitja a Táblák kezelő párbeszédpanelt, rákeres az „STM32F1” kifejezésre, és telepíti a megjelenő csomagot.
5. lépés: A csomag telepítése után keresse meg a C: \ Program Files (x86) Arduino \ hardware \ Arduino_STM32-master \ drivers \ win webhelyet, ahol megtalálja az install_drivers.bat és az install_STM_COM_drivers.bat fájlokat.
6. lépés: Kattintson a denevérfájlokra, és telepítse az illesztőprogramokat. Kap egy DOS képernyőt az alábbiak szerint.
Most az Arduino IDE felkészült az STM32 (Blue Pill) Fejlesztő Testület programozására, és az illesztőprogramok is telepítve vannak.
Az STM32 (kék tabletta) programozása közvetlenül az USB porton keresztül
Távolítsa el az FTDI kártyát és az összes meglévő kapcsolatot az STM32-ből. Csak használja az STM32 kártya micro-USB portját az alábbiak szerint a számítógéphez történő csatlakoztatáshoz. Győződjön meg arról, hogy az áthidaló 0 tűje 0-ra van állítva (Üzemmód). A továbbiakban már nem kell váltanunk a jumperrel a programok feltöltéséhez és futtatásához.
Számítógépének képesnek kell lennie felfedezni az igazgatóságot most. Várjon egy darabig, ha további illesztőprogramokat telepít. Ezután lépjen be az Eszközkezelőbe, és ellenőrizze, hogy az STM32 kártyát felfedezték-e a COM és a port részben az alábbiak szerint. Az enyém a Map8 Mini névvel kapcsolódik a COM8-hoz.
Menjen az Eszközök elemre, és görgessen lefelé, hogy megtalálja a Generic STM32F103C sorozatot az alábbiak szerint. Ezután ellenőrizze, hogy a változat 64k Flash típusú , a CPU sebessége 72MHz, és változtassa meg a feltöltés módját STM32duino Bootloader-re . Válassza ki a megfelelő COM-portot is az eszközkezelőn található portnak megfelelően.
Az összes módosítás elvégzése után ellenőrizze az Arduino IDE jobb alsó sarkát, és észre kell vennie, hogy a következő beállítás van beállítva. Az STM32 táblám csatlakozik a COM8-hoz, de a tiéd eltérhet
Az Arduino IDE készen áll az STM 32 Blue Pill fejlesztőtáblák programozására. Töltsük fel a Sample Blink programot az Arduino IDE-ről az STM32 Blue Pill táblára, hogy megbizonyosodhassunk róla, hogy minden megfelelően működik. A példa program megtalálható itt:
A megnyíló példaprogramban egy kis változtatást kell végrehajtanunk. Alapértelmezés szerint a program PB1-re lesz írva, de az alaplapunkon a fedélzeti LED a PC13-hoz van csatlakoztatva, ezért cserélje le az összes PB1-et PC13-ra, és jó vagyunk, ha folytatjuk. A módosított teljes példaprogram szintén az oldal alján található.
Csak a hurokfunkció belsejében található kód látható az alábbiakban, ahol észrevehetjük, hogy a PC13 csapot HIGH (be) állapotban tartjuk 1000 milliszekundumig, majd LOW (ki) állásba kapcsoljuk további 1000 milliszekundumig, és ezt végtelen ideig végzik, mivel hurok funkció. Így úgy tűnik, hogy a LED villog 1000 milliszekundum intervallummal.
digitalWrite (PC13, HIGH); // kapcsolja be a LED-et (HIGH a feszültségszint) késleltetés (1000); // várjon egy második digitalWrite-t (PC13, LOW); // kapcsolja ki a LED-t a feszültség alacsony késleltetésével (1000); // várj egy másodpercet
Nyomja meg a feltöltés gombot az Arduino IDE-n, és programját össze kell állítani és feltölteni. Ha minden a várakozásoknak megfelelően működött, akkor a következőket kell látnia az Arduino IDE konzolján.
Ha a program feltöltése sikeres volt, akkor látnia kell, hogy a zöld LED 1 másodpercenként villog, az alábbi videó szerint. A késleltetés növelésére vagy csökkentésére a programmal is babrálhat. Most már elkezdheti használni az STM32 (Blue Pill) Fejlesztő lapot, mint bármely más Arduino táblát, vagyis már nem kell megváltoztatnia a jumperek helyzetét, vagy külső hardvert kell használnia a programok feltöltéséhez és teszteléséhez.
Remélem, megértette az oktatóanyagot, és hasznosnak találta az STM32 Board használatának megkezdését. Ha bármilyen problémája van, hagyja őket a megjegyzés részben, mondja el azt is, hogy milyen projekteket kell kipróbálnunk a jövőben ezzel az STM32 táblával.