- Nastavitev Arduino IDE
- Nastavitev plošče STM8S103F3 za programiranje Arduino IDE
- LED utripa na STM8S103F3 z uporabo Arduina
- Preslikava pinov Arduino za STM8S103F3
- Sestavljanje knjižnic SPL v Arduino IDE
Arduino je zaradi svoje podporne uporabniške skupnosti nedvomno prerasel v uporabniku prijazno in hitro orodje za izdelavo prototipov. Danes platforma zaradi svoje odprtokodne narave ni omejena le na plošče Arduino, temveč tudi na druge razvojne plošče, kot so NodeMCU, ESP8266, STM32, MSP430 itd., Lahko tudi programirane iz Arduino IDE. Če vas zanima, kako, lahko sledite spodnjim povezavam.
- Programiranje NodeMCU z Arduino IDE
- Programiranje ESP8266 z Arduino IDE
- Programiranje STM32 z Arduino IDE
- Programiranje MSP430 z Energeia (podobno kot Arduino)
Brez dvoma je Arduino IDE odličen za začetnike, vendar je za profesionalni razvoj dobro sodelovati z domačimi razvojnimi okolji in prevajalniki. Tako kot MPLABX za mikrokrmilnike PIC in Studio Composer studio za mikrokrmilnike TI. Uporaba izvorne platforme nam omogoča, da delamo na ravni registra (po potrebi celo na ravni sestavljanja), kar omogoča, da je program bolj pomnilniško učinkovit. Zato smo, ko smo začeli z vadnico mikrokrmilnika STM8Sserije, je bila izbira platforme STVD in prevajalnik Cosmic C, ki ju je mogoče brezplačno prenesti in uporabiti. Na žalost je STVD zelo stara IDE in med delom z njim deluje kot v devetdesetih. Poleg tega orodje za programiranje STVP tudi ni dobro integrirano z IDE in ga morate uporabljati ločeno. To podaljša čas zbiranja in nalaganja ter oteži razvoj in odpravljanje napak.
Šel sem iskat alternative in takrat je na pomoč prišel Arduino IDE. Orodje, ki ga je Michael Mayor imenoval Sduino, nam omogoča enostavno programiranje mikrokrmilnikov STM8s (večina najbolj priljubljenih) iz Arduino IDE in le nekaj minut traja, da to nastavimo in začnemo. Zanimivo je, da nam Sduino poleg podpore za programiranje v slogu Arduino omogoča tudi uporabo Standardne periferne knjižnice (SPL), z drugimi besedami, skoraj isti program na STVD lahko zberemo v Arduino IDE. Čeprav je Sduino kul orodje, je še vedno v razvoju in še ne podpira številnih knjižnic in funkcij Arduino. Glede na to se naučimo uporabljati Arduino IDE z razvojno ploščo STM8S103F.Če ste popolnoma novi na tej plošči, preverite začetek z vadnico STM8S103F. Poleg STM8S103F, Sduino podpira tudi druge mikrokrmilnike STM8S, kot so STM8S003, STM8S105C, STM8S105K, STM8S, STM8S208MB, ESP14 itd. Postopek, razložen v tej vadnici, je enak za vse.
Nastavitev Arduino IDE
1. korak: Če ste popolnoma novi v okolju Arduino, prenesite Arduino na podlagi svojega operacijskega sistema in ga namestite.
2. korak: Sledite datoteki -> Nastavitve, da odprete okno z nastavitvami in prilepite spodnjo povezavo v polje z besedilom za upravljanje dodatnih URL-jev in kliknite V redu
github.com/tenbaht/sduino/raw/master/package_sduino_stm8_index.json
3. korak: Sledite Orodja -> Board -> Board manager, da odprete pogovorno okno upravitelja desk in poiščete »sduino«. Po namestitvi kliknite namestitev in zaprite pogovorno okno.
4. korak: Znova zaženite IDE in sledite Orodja -> Plošča -> STM8S103F3 . Če imate drugo razvojno ploščo, lahko izberete druge plošče.
Zdaj je Arduino IDE pripravljen za programiranje razvojne plošče STM8S103F3. Nastavimo ploščo, jo priključimo na računalnik in programiramo za preprosto utripanje LED.
Nastavitev plošče STM8S103F3 za programiranje Arduino IDE
Povežite ST-Link V2 z razvojno ploščo, kot je prikazano spodaj.
Povezave so precej naravnost in najboljši del je, da ne potrebujete zunanjih komponent. Moja nastavitev strojne opreme za programiranje je prikazana spodaj, pravkar sem uporabil ženske priključne žice. Vendar upoštevajte, da se izhod vašega ST-Link-a morda razlikuje od mojega; pred vzpostavljanjem povezav sledite izvleku na napravi.
Vzpostavite povezavo in napravo povežite z računalnikom, namestitev gonilnika se mora začeti samodejno. Z upraviteljem naprav lahko preverite, ali je računalnik pravilno odkril ST-LINK V2. Če prvič napajate ploščo, boste na plošči opazili utripajočo testno lučko.
LED utripa na STM8S103F3 z uporabo Arduina
Za preprosto utripanje LED lahko uporabimo program za utripanje iz razdelka primerov. Sledite datoteki -> Primer -> Splošni_Primer -> Osnove -> Utripa .
Celoten program za utripanje vgrajenega LED je prikazan spodaj -
void setup () {// inicializiramo digitalni pin LED_BUILTIN kot izhod. pinMode (LED_BUILTIN, IZHOD); } // funkcija zanke se vedno znova izvaja znova void loop () {digitalWrite (LED_BUILTIN, HIGH); // vklop LED (HIGH je nivo napetosti) zakasnitev (1000); // čakamo na drugi digitalWrite (LED_BUILTIN, LOW); // izklopimo LED tako, da naredimo napetost LOW delay (1000); // počakajte sekundo}
Kot lahko vidite, je to zelo podobno programu za utripanje Arduino. Če želite naložiti program, se prepričajte, da je vaša plošča povezana s st-link v2, kot je opisano zgoraj, in izberite programer kot “ST-Link / V2”, kot je prikazano spodaj.
Opomba: Za razliko od plošč Arduino vam ni treba izbrati ustreznih vrat COM za programiranje plošče. Vrata COM boste uporabljali samo za serijsko komunikacijo.
Ko so izbrana vrata COM, je tudi nalaganje kode zelo preprosto. Samo pritisnite gumb za nalaganje (spodaj obkrožen z rdečo) in koda se bo samodejno sestavila in naložila na naš forum.
To je to, program se naloži neposredno na ploščo in videli bi, da vgrajena LED utripa. Brez zunanje programske opreme za nalaganje, ničesar. Tako enostavno. Video si lahko ogledate na dnu te strani o delu.
Preslikava pinov Arduino za STM8S103F3
Če želite nadaljevati od tu, morate vedeti, kako nasloviti vsak zatič na razvojni plošči STM8S103F3. Preslikavo pinov lahko razberemo s spodnje slike -
Na primer iz sheme vezja plošče STM8S103F3 vemo, da je vgrajena LED dioda priključena na PB5. Za naslavljanje tega zatiča na Arduinu moramo uporabiti 3, zato lahko program zapišemo kot-
void setup () {// inicializiramo digitalni pin LED_BUILTIN kot izhod. pinMode (3, IZHOD); } // funkcija zanke teče vedno znova in znova za vedno void loop () {digitalWrite (3, LOW); // vklop LED (HIGH je nivo napetosti) zakasnitev (1000); // čakamo na drugi digitalWrite (3, HIGH); // izklopimo LED tako, da naredimo napetost LOW delay (1000); // počakajte sekundo}
Sestavljanje knjižnic SPL v Arduino IDE
Kot smo že omenili, lahko uporabimo knjižnico SPL tudi v Arduino IDE. Če se spomnite, smo v prejšnji vadnici za STM8S GPIO z gumbom napisali kodo za utripanje vgrajene LED in tudi zunanjo LED. Enako kodo z zelo malo sprememb je mogoče sestaviti tudi na Arduinu. Spremenjena koda je prikazana spodaj.
#define Green_LED GPIOA, GPIO_PIN_3 void setup () {GPIO_DeInit (GPIOA); // pripravimo vrata A za delujoči GPIO_DeInit (GPIOB); // pripravimo vrata B za delovanje // prijavi PA2 kot vhodni vlečni zatič GPIO_Init (GPIOA, GPIO_PIN_2, GPIO_MODE_IN_PU_IT); // prijavi PA3 kot izhodni zatič z vlečnim izvlekom GPIO_Init (Green_LED, GPIO_MODE_OUT_PP_LOW_SLOW); // PB5 prijavimo kot push pull izhodni zatič GPIO_Init (GPIOB, GPIO_PIN_5, GPIO_MODE_OUT_PP_LOW_SLOW); } void loop () {if (GPIO_ReadInputPin (GPIOA, GPIO_PIN_2)) // če je pritisnjen gumb GPIO_WriteLow (Green_LED); // LED sveti drugače GPIO_WriteHigh (Green_LED); // LED IZKLOPLJENO GPIO_WriteReverse (GPIOB, GPIO_PIN_5); zamuda (100); }
Če zaključimo, da je Arduino IDE skupaj s Sduino zelo dobra izbira, če želite začeti svoj razvoj s STM8S. Vendar je platforma še v razvoju in številne knjižnice Arduino še niso podprte. Kljub temu, če želite poglobiti in prispevati k razvoju, bi bilo super. Toda zaradi učenja bom nadaljeval vadnico s STVD in kozmičnim prevajalnikom C.