Kazalo:
- Zaloge
- 1. korak: Odprite Keil UVision IDE
- Korak: Izberite napravo
- 3. korak: Upravljajte okolje za izvajanje
- 4. korak: Kopirajte FreeRTOS v mapo projekta
- 5. korak: Dodajte datoteke FreeRTOS v Project
- 6. korak: Konfigurirajte pot zaglavnih datotek FreeRTOS
- 7. korak: Dodajte datoteko »FreeRTOSConfig.h« v Project
- 8. korak: Dodajte datoteko "main.c" z osnovno predlogo
- 9. korak: Komplet za odkrivanje STM32F407 povežite z računalnikom/prenosnikom
- 10. korak: V konfiguraciji prevajalnika izberite ST-Link Debugger
- 11. korak: Konfigurirajte razhroščevalnik ST-Link
- Korak: Zgradite in naložite kodo
- Korak: Pojdite v okno za odpravljanje napak in odprite serijski monitor
- Korak 14: Zaženite kodo, da si ogledate izhod v oknu za iskanje napak f
2025 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2025-01-13 06:58
Izbira FreeRTOS kot operacijskega sistema v realnem času za vaš vdelani projekt je odlična izbira. FreeRTOS je resnično brezplačen in ponuja številne preproste in učinkovite funkcije RTOS. Toda nastavitev freeRTOS od začetka je lahko težavna ali pa lahko rečem nekoliko zmedena, saj zahteva nekaj prilagoditev, na primer dodajanje datotek, specifičnih za mikrokrmilnik, nastavitev poti do datotek z glavo itd. V tem navodilu vas bom vodil, kako nastaviti FreeRTOS na vaš komplet za odkrivanje STM32F407 podrobno uporabite Kiel uVision IDE.
Zaloge
- Več o FreeRTOS -u najdete na freertos.org
- Navodila za prenos brezplačne programske opreme RTROS Navodila za prenos izvorne kode RTOS
- Popolne podrobnosti o kompletu za odkrivanje STM32F407 Začetek uporabe STM32F407 Discovery KIt
- Github Repository FreeRTOS v kompletu za odkrivanje STM32F407
1. korak: Odprite Keil UVision IDE
Odprite Keil uVision IDE. Kliknite na projekt, izberite Nov projekt uVision … Nato izberite svoj delovni imenik in vnesite želeno ime projekta.
Korak: Izberite napravo
Ko projektu daste ime, morate v naslednjem koraku dodati napravo. Tukaj dodajamo mikronski krmilnik STM32F407VG podjetja STMicroelectronics. Izberite STM32F407VG in kliknite V redu.
3. korak: Upravljajte okolje za izvajanje
Naslednji korak je izbira komponente knjižnice/gonilnika na zavihku Upravljanje okolja med časom izvajanja. Tukaj izberite vse komponente, kot je prikazano na zgornji sliki. Ko preverite vsa ustrezna polja, kliknite Razreši in nato V redu.
4. korak: Kopirajte FreeRTOS v mapo projekta
Zdaj morate kopirati celotno mapo FreeRTOS v mapo projekta.
5. korak: Dodajte datoteke FreeRTOS v Project
Ko kopirate mapo FreeRTOS v mapo projekta, morate v svoj projekt dodati vse potrebne datoteke FreeRTOS.
- V Keilu izberite Target1, z desno miškino tipko kliknite in izberite Dodaj novo skupino. Preimenujte to skupino v FreeRTOS.
- Zdaj kliknite na skupino FreeRTOS, z desno tipko miške kliknite na Dodaj obstoječe datoteke v skupino "FreeRTOS …"
- Dodajte vse datoteke FreeRTOS, kot je prikazano na zgornji sliki.
Pot do iskanja teh datotek v mapi FreeRTOS je:
- Datoteke: croutine, event_groups, list, queue, stream_buffer, opravila in časovniki. Pot: (…. / FreeRTOSv10.2.1 / FreeRTOS / Vir)
- Datoteke: heap_4 (Obstajajo 4 datoteke za upravljanje pomnilnika, ki lahko koga dodajo). Pot: (…. / FreeRTOSv10.2.1 / FreeRTOS / Source / prenosni / MemMang)
- Datoteke: port.c (to je datoteka, specifična za MCU). Pot: (… / FreeRTOSv10.2.1 / FreeRTOS / Source / prenosni / RVDS / ARM_CM4F)
Opomba: Različica FreeRTOS se lahko spremeni. Uporabite samo najnovejšo različico, ki je na voljo.
6. korak: Konfigurirajte pot zaglavnih datotek FreeRTOS
Ko dodate izvorne datoteke FreeRTOS, morate prevajalniku povedati, kje se nahajajo ustrezne datoteke z glavo. Zato moramo konfigurirati možnost prevajalnika.
Desni klik na Target1 Možnost za Target "Target1.." C/C ++ Vključi pot. Vključite te poti:
- Vključi mapo v FreeRTOS (… / FreeRTOSv10.2.1 / FreeRTOS / Source / include)
- Imenik RVDS (… / FreeRTOSv10.2.1 / FreeRTOS / Source / prenosni / RVDS / ARM_CM4F)
Opomba: Če imate datoteke z glavo, vključite pot teh datotek z glavo, kot je razloženo zgoraj.
7. korak: Dodajte datoteko »FreeRTOSConfig.h« v Project
FreeRTOS ima eno pomembno datoteko z glavo, imenovano FreeRTOSConfig.h. Ta datoteka vsebuje prilagoditve za posamezno aplikacijo (v našem primeru za Cortex M4F MCU). Zaradi poenostavitve sem kopiral datoteko FreeRTOSConfig.h, specifično za MCU, v imenik RVDS. Tudi v koraku 6 smo že dodali pot RVDS. Če jo dodajate sami, morate to datoteko dodati v svoj projekt in tudi vključiti pot do te datoteke, kot je razloženo v 6. koraku.
Če želite datoteko FreeRTOSConfig.h sami dodati v želeni imenik, sem to datoteko vključil spodaj.
Za več informacij kliknite tukaj FreeRTOSConfig.h
8. korak: Dodajte datoteko "main.c" z osnovno predlogo
- Zdaj ustvarite novo skupino uporabnikov (preimenoval sem jo v »Uporabniška aplikacija«).
- V to skupino dodajte novo datoteko C (dodal sem datoteko z imenom main.c).
- To je datoteka, v kateri obstaja funkcija main (). V to datoteko sem vključil vse minimalno zahtevane funkcije in glave, da se projekt uspešno prevede.
Spodaj najdete datoteko main.c z osnovno predlogo.
9. korak: Komplet za odkrivanje STM32F407 povežite z računalnikom/prenosnikom
10. korak: V konfiguraciji prevajalnika izberite ST-Link Debugger
Z desno miškino tipko kliknite Target1, nato kliknite možnost za Target "Target1..", nato se pomaknite do zavihka Debug in izberite ST-Link-Debugger, kot je prikazano na zgornji sliki
11. korak: Konfigurirajte razhroščevalnik ST-Link
Ko v koraku 10 izberete razhroščevalnik ST-Link, kliknite Nastavitve, nato izberite Sledenje in preverite vsa polja, kot je prikazano na zgornji sliki.
Korak: Zgradite in naložite kodo
Po zaključku vseh korakov sestavite projekt in se prepričajte, da v kodi ni napak. Po uspešnem sestavljanju kodo naložite v svoj komplet za odkrivanje.
Korak: Pojdite v okno za odpravljanje napak in odprite serijski monitor
Po nalaganju pojdite na odpravljanje napak windowviewSerial WindowsDebug (printf) Viewer, kot je prikazano na zgornji sliki.
Korak 14: Zaženite kodo, da si ogledate izhod v oknu za iskanje napak f
Zadnji korak je, da zaženete kodo, kot je prikazano na sliki, da vidite izpis v oknu printf. Tukaj v main.c sem izvedel 2 preprosti nalogi, imenovani task1 in task2. Naloga imata enako prednost in samo natisneta ime naloge. Zaradi istih prioritet lahko vidite, da oba tečeta in natiskata ime.