ARM tanfolyam 2 elads Fejleszt krnyezet Codesourcery G
- Slides: 30
ARM tanfolyam 2. előadás
Fejlesztő környezet - Codesourcery G++ lite: Letölthető a mentorgraphics honlapjáról (ARM-EABI változat) - Eclipse CDT - GNU-ARM Eclipse plugin
ARM-hoz tartozó fájlok • A gyártó honlapjáról letölthető, • Általában standard peripherials library néven fut, és. zip fájlban van • Továbbá az esetleges devboardhoz tartozó fájlok, driverek, programozó szoftverek
Telepítési sorrend • Codesourcery G++ lite telepítése a C: ARMCodesourcery mappába • Eclipse bemásolása a C: ARMeclipse mappába • Az eclipse indítása után: Help->Install New Software->Add és a. zip fájt megadni (GNU-ARM plugin) (next-ok : D )
Új project • File->New->C project->ARM Cross Target application és kiválasztani hogy Sourcery G++ lite • Utána a köv. oldalon csak a Release mellett legyen pipa • Majd Finish
Project konfigolása • Ezután CMSIS mappát létrehozni és telepakolni fájlokkal • DE: Most egszerűbb, mert előre kiadtam egy üres projectet
Beállítások • A Project Explorerben a project nevén jobbklikk>Properties… • A feljövő ablakban baloldalt a C/C++ build->Settings menüpontot megnyitni
• Target processor->Cortex-M 0 • …GCC C Compiler->Directories: hozzáadni a projecten belül a CMSIS mappát • …GCC C Compiler->Miscellanous->Language standard: ISO C 99 with GNU extensions • Majd a …GCC C linker-> stm 32_flash. ld
Szükséges fájlok összegyűjtése • A kontrollerhez letöltött libraryból fájlokat kell összeválogatni • • • STM 32 F 0 xx_Std. Periph_Lib_V 1. 0. 0LibrariesCMSISDeviceSTSTM 32 F 0 xxInclude LibrariesCMSISDeviceSTSTM 32 F 0 xxSourceTemplatesTrue. STUDIO. s ASM file ->A kiterjesztést. S-re átírni (nagy. S) LibrariesCMSISDeviceSTSTM 32 F 0 xxSourceTemplates ebből a system_stm 32 f 0 xx. c LibrariesCMSISInclude összes. H LibrariesSTM 32 F 0 xx_Std. Periph_Driver ebből az inc és src mappából most az alábbiakat …. rcc. c és rcc. h ->órajel modul driver …. gpio. c és gpio. h -> portlábakhoz állítgató cuccok, meg konfig cuccok …. tim. c és tim. h -> timer Linkerscript: …ProjectSTM 32 F 0 xx_Std. Periph_TemplatesTrue. STUDIOProjectstm 32_flash. ld És a konfigfájl, ez lehet innen: …ProjectSTM 32 F 0 xx_Std. Periph_ExamplesGPIOIOTogglestm 32 f 0 xx_conf. h
Mintaprojectek • Tök jól használható mintakódok vannak a. zip fájlban a ProjectSTM 32 F 0 xx_Std. Periph_Examples mappában. Perifériánként csoportosítva a mintakódokat. • A projecteket sajnos nem lehet csak úgy megnyitni, de ugyanígy összegyűjthetőek mint visszább írtam
stm 32 f 0 xx_conf. h • Csak azokat a fájlokat kapcsoljuk be amit használunk, mert a beincluedolt fájlokat befordítja • Save! • Majd build!
Hibák • Assert_param-> be kell incluedolni a stm 32 f 0 xx_conf. h fájlt a periféria drivereknél a. c-be • Javítás:
Hibák, folytatás… • A startup. S-ben ki kell kommentelni a bl __libc_init_array sort -->nem lesz malloc : ( de megvagyunk nélküle, meg elvileg kijavítható hiba
Hibajavítás után… • Hibátlan fordítás • Nekiállhatunk értelmeset kódolni…
LED villogtató • Csináljunk egyszerű hello world progit • Kell hozzá: – Késleltetés – LED villogtatás
Szoftveres késleltetés • Fontos a volatile kifejezés • Ezt írjuk a main() elé
GPIO init • A panelon a PC 8 -as lábon lévő LED-et akarjuk villogtatni • Órajelet adni a perifériának->ADATLAP
Egészítsük ki a main-t! • Save + Build
Letöltés • STM 32 ST-LINK Utility • File open-> Projectrelease. . . hex • OK->Program-> • Majd a boardon reset gomb • Örül!
Következő project: PWM • • • PC 9 LED-en ->adatlap ->TIM 3_CH 4 Alteratív funkcióba átkapcsolni TIM 3 -nak órajelet adni Időalapot beállítani Output. Compare modult beállítani Tetszőlegesen kitöltési tényezőt állítani
Timer Init
main() kiegészítése • Build majd Press play on tape
IT kezelés • Mi lenne ha, nem soft módon késleltetnénk, hanem IT-vel? • Már jár egy timerünk, 100 Hz-el • Írjunk egy IT rutint, ami a kék LED-et kapcsolgatja!
IT kezelő konfigolása
IT handler • Létrehozni az IT kezelő fgv-t, a fgv nevét a startup. S fájlból lehet kihámozni • A flaget nekünk kell törölni
A main() kiegészítése • Globális változók (volatile!)
Hardfault handler • Mint a kékhalál a PC-nél. • Célszerű belerakni egy LED bekapcsolását
A mai alkalom után tudunk… • GPIO-t kezelni • Timer-t elindítani, OC modult használni • IT-t bekapcsolni, használni • Szabad otthon kísérletezni : )
Köszönöm a figyelmet!
- Elads
- Elads crm
- Public candy companies
- Gépjármű kárszakértő képzés
- Police medic tanfolyam
- Android tanfolyam
- Fbő képzés
- Lever classes
- 3rd class lever sporting examples
- Linker arm left arm
- Ring clasp tooth
- Direct retainer parts
- Effort arm and resistance arm
- Arms length body definition
- Arm exception handling
- Arm cpu comparison
- Jazz dance positions
- Criteri el escorial
- Romer absolute arm 7525
- Digital design and computer architecture arm edition
- Arm cache organization
- In general, what volume does a 2½" (65-mm) handline flow?
- Arm university
- Biceps brachii prime mover
- Additive sculpture materials
- What is another arm of the atlantic ocean cradled by mexico
- Parts of a microscope
- Human arm and whale flipper function
- Hinders moving when loosened and starts
- Bulbus jugularis
- Architettura arm