Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
STM32 uputstva za iskusne početnike
#1
Ovih dana prinuđen sam da po ubrzanom kursu savladam ARM CortexM0 do M4 arhitekturu i rad sa njima. Odabrao sam STM32x jer imaju jako nabavljive demo ploče, kao i tutorijale po internetu.

Elem, iako imam više godina iskustva sa Microchip PIC mikrokontrolerima, svih generacija, prelazak na STM32 ipak zahteva neke "zaokrete" u podešavanju i korišćenju. Poučen ovim iskustvom, ovde ću pokušati da vama približim neke stvari koje će vam olakšati prelazak na ove platforme a kako ih ja budem otkrivao i sebi razjašnjavao.

Uglavnom će to biti linkovi na neke korisne tutorijale, jer neću imati previše vremena da prevodim iste, ali makar da ne lutate. I konačno, pozivam i sve ostale da se priključe ovoj mojoj ideji, jer mikrokontroleri koji se danas koriste su veoma moćni, ali sa druge strane i veoma obimni sa mogućnostima i konfiguracijom, tako da je početnicima veoma teško da uz previše literature ubrzano startuju...

Polazna hardverska osnova je ova:
http://www.st.com/web/catalog/tools/FM11...253215.jsp

Odlučio sam da za IDE (razvojno okruženje) koristim Keil MDK ARM. Lepa vest je da se za Cortex M0 (STM32F0-Discovery) može dobiti legalna i besplatna licenca, a detalje možete pogledati ovde:
http://www2.keil.com/stmicroelectronics-stm32/mdk

Ovo je veoma "lagano" razvojno okruženje, tako da većina PC računara koje imamo biće sasvim dovovljna za udoban rad. Lepa iskustva sa Keil-om nosim još od generacija AT89C2051 kada sam sa njim radio. Ne spada u preterano "fancy" okruženja, ali vam zato ne trebaju GBy RAM-a da bi radio Smile


Inače, iz mog dosadašnjeg iskustva, ako savladate rad na CortexM0 mikrokontrolerima, veoma lagano možete koristiti i naredne generacije, a opet ako radite pod Keil MDK IDE-om, veoma slična koncepcija je i pod drugim okruženjima, odnosno kompajlerima. Mogu se jedino razlikovati integrisane biblioteke, kao što je slučaj sa Coocox IDE-om.

Kako je za korišćenje mikrokontrolera uvek potreban nekakav programator, za ove naše potrebe koristićemo ST-LINK, koji je programator i debuger istovremeno.
Lepa stvar je što je na Discovery ploči već integrisan ovaj programator, koga pomoću nekoliko "jumpera" možemo odvojiti od ostatka elektronike na toj ploči i koristiti ga kao samostalni programator kada konačno izradimo nezavistan uređaj od razvojne ploče.

Kako bi vam što više olakšali i primerima približili programiranje i korišćenje mikrokontrolera, ST se potrudio da za sve generacije mikrokontrolera obezbedi gotove primere i biblioteke. Takvi paketi se zovu STM32CubeFx, a unutar njih imate već pripremljene projekte i za Keil MDK u folderima MDK-ARM.
Za naš mikrokontroler linka za ovaj paket je:
http://www.st.com/web/en/catalog/tools/PF260612

Konačno, veoma, veoma korisna alatka je i STM32CubeMX:
http://www.st.com/web/catalog/tools/FM14...32cube-pr2

Ona vam omogućava da na jednostavan i grafički pregledan način odaberete na željenom mikrokontroleru periferije koje ćete koristiti i da vam finalno generiše kod sa inicijalizacijom istih. Meni lično je deo oko grafičkog prikaza mapiranja određenih periferija bio u ovom trenutku i najbitniji. Da ne bih listao gomilu dokumentacije gde da pronađem UART1,2,3 ili I2C, SPI itd... ovim alatom je to za minut gotovo. Takođe veoma korisno upozorava korelaciju i koliziju određenih periferija.


Kada smo se opskrbili potrebnim alatima, prelazimo na naredni korak a to je podešavanje ST-LINK programatora u MDK razvojnom okruženju...
Reply


Messages In This Thread
STM32 uputstva za iskusne početnike - by npejcic - 05-16-2015, 08:21 PM

Forum Jump:


Users browsing this thread: 2 Guest(s)