Taula de continguts:

Configuració de FreeRTOS des de zero al kit de descobriment STM32F407: 14 passos
Configuració de FreeRTOS des de zero al kit de descobriment STM32F407: 14 passos

Vídeo: Configuració de FreeRTOS des de zero al kit de descobriment STM32F407: 14 passos

Vídeo: Configuració de FreeRTOS des de zero al kit de descobriment STM32F407: 14 passos
Vídeo: #381 How to work with a Real Time Operating System and is it any good? (FreeRTOS, ESP32) 2024, De novembre
Anonim
Configuració de FreeRTOS des de zero al kit de descobriment STM32F407
Configuració de FreeRTOS des de zero al kit de descobriment STM32F407

Escollir FreeRTOS com a sistema operatiu en temps real per al vostre projecte incrustat és una gran opció. El FreeRTOS és realment gratuït i proporciona moltes funcions RTOS senzilles i efectives. Però configurar freeRTOS des de zero pot ser difícil o puc dir una mica confús, ja que requereix una certa personalització, com ara afegir fitxers específics del microcontrolador, establir camins de fitxers de capçalera, etc. En aquest manual, us guiaré sobre com configurar el vostre kit de descobriment STM32F407 detalladament mitjançant Kiel uVision IDE.

Subministraments

  • Podeu trobar més informació sobre FreeRTOS a freertos.org
  • Guia de descàrrega FreeRTOS Instruccions per descarregar el codi font RTOS
  • Informació completa sobre STM32F407 Discovery Kit Introducció a STM32F407 Discovery KIt
  • Dipòsit Github FreeRTOS al kit de descobriment STM32F407

Pas 1: obriu l'identificador ID de Keil UVision

Obriu Keil UVision IDE
Obriu Keil UVision IDE

Obriu Keil uVision IDE. Feu clic a un projecte i seleccioneu Projecte nou d'uVision … A continuació, seleccioneu el directori de treball i doneu el nom del projecte preferit.

Pas 2: seleccioneu el dispositiu

Seleccioneu el dispositiu
Seleccioneu el dispositiu

Un cop hagueu donat nom al projecte, al següent pas cal afegir el dispositiu. Aquí afegim el microcontrolador STM32F407VG de STMicroelectronics. Seleccioneu el STM32F407VG i feu clic a D'acord.

Pas 3: gestioneu l'entorn de temps d'execució

Gestioneu l'entorn en temps d'execució
Gestioneu l'entorn en temps d'execució

El següent pas és seleccionar el component de biblioteca / controlador a la pestanya Gestiona l'entorn de temps d'execució. Aquí seleccioneu tots els components tal com es mostra a la imatge superior. Un cop comproveu tots els camps adequats, feu clic a Resolve i, a continuació, feu clic a OK.

Pas 4: copieu FreeRTOS a la carpeta del vostre projecte

Copieu FreeRTOS a la carpeta del vostre projecte
Copieu FreeRTOS a la carpeta del vostre projecte

Ara heu de copiar tota la carpeta FreeRTOS a la carpeta del projecte.

Pas 5: afegiu fitxers FreeRTOS al projecte

Afegiu fitxers FreeRTOS al projecte
Afegiu fitxers FreeRTOS al projecte

Un cop hàgiu copiat la carpeta FreeRTOS dins de la carpeta del projecte, heu d'afegir tots els fitxers FreeRTOS necessaris al vostre projecte.

  1. A Keil, seleccioneu Target1, feu clic amb el botó dret i seleccioneu Afegeix un grup nou. Canvieu el nom d'aquest grup com a FreeRTOS.
  2. Ara feu clic al grup FreeRTOS, feu clic amb el botó dret a la selecció Afegeix fitxers existents al grup "FreeRTOS …"
  3. Afegiu tots els fitxers FreeRTOS tal com es mostra a la imatge superior.

El camí per trobar aquests fitxers a la carpeta FreeRTOS és:

  • Fitxers: croutine, event_groups, llista, cua, stream_buffer, tasques i temporitzadors. Camí: (…. / FreeRTOSv10.2.1 / FreeRTOS / Source)
  • Fitxers: heap_4 (Hi ha 4 fitxers de gestió de memòria que afegeixen qualsevol persona). Camí: (…. / FreeRTOSv10.2.1 / FreeRTOS / Source / portable / MemMang)
  • Fitxers: port.c (es tracta d’un fitxer específic de l’MCU). Camí: (… / FreeRTOSv10.2.1 / FreeRTOS / Source / portable / RVDS / ARM_CM4F)

Nota: la versió de FreeRTOS pot canviar. Simplement utilitzeu la versió més recent disponible.

Pas 6: configureu la ruta dels fitxers de capçalera de FreeRTOS

Configureu la ruta dels fitxers de capçalera de FreeRTOS
Configureu la ruta dels fitxers de capçalera de FreeRTOS

Un cop hàgiu afegit els fitxers font de FreeRTOS, haureu d’indicar al compilador on es troben els fitxers de capçalera respectius. Per tant, hem de configurar l’opció del compilador.

Feu clic amb el botó dret a l'opció Target1 per a l'objectiu "Target1.." Incloure el camí C / C ++. Assegureu-vos d'incloure aquests camins:

  1. Inclou la carpeta a FreeRTOS (… / FreeRTOSv10.2.1 / FreeRTOS / Source / include)
  2. Directori RVDS (… / FreeRTOSv10.2.1 / FreeRTOS / Source / portable / RVDS / ARM_CM4F)

Nota: Si teniu cap fitxer de capçalera, assegureu-vos d'incloure la ruta d'aquests fitxers de capçalera tal com s'ha explicat anteriorment.

Pas 7: afegiu el fitxer "FreeRTOSConfig.h" al projecte

Afegeix
Afegeix

El FreeRTOS té un fitxer de capçalera important anomenat FreeRTOSConfig.h. Aquest fitxer conté la personalització específica de l’aplicació (en el cas de MCU Cortex M4F). Per simplicitat, he copiat el fitxer FreeRTOSConfig.h específic de la MCU al directori RVDS. I també al pas 6, ja hem afegit el camí RVDS. Si l’afegiu vosaltres mateixos, heu d’afegir aquest fitxer al vostre projecte i assegureu-vos també d’incloure la ruta d’aquest fitxer tal com s’explica al pas 6.

Incase si voleu afegir el fitxer FreeRTOSConfig.h al vostre directori preferit, he inclòs aquest fitxer a continuació.

Per obtenir més informació, feu clic aquí FreeRTOSConfig.h

Pas 8: afegiu el fitxer "main.c" amb la plantilla bàsica

Afegiu el fitxer
Afegiu el fitxer
  • Ara creeu un grup d'usuaris nou (l'he canviat a "Aplicació d'usuari").
  • Afegiu un fitxer C nou a aquest grup (he afegit un fitxer anomenat main.c).
  • Aquest és el fitxer on existeix la funció main (). He inclòs totes les funcions i capçaleres mínimes necessàries en aquest fitxer perquè el projecte es compile amb èxit.

A continuació podeu trobar el fitxer main.c amb la plantilla bàsica.

Pas 9: connecteu el vostre kit de descobriment STM32F407 al vostre ordinador portàtil

Connecteu el vostre kit de descobriment STM32F407 al vostre ordinador portàtil
Connecteu el vostre kit de descobriment STM32F407 al vostre ordinador portàtil

Pas 10: seleccioneu Depurador ST-Link a la configuració del compilador

Seleccioneu Depurador ST-Link a Configuració del compilador
Seleccioneu Depurador ST-Link a Configuració del compilador

Feu clic amb el botó dret a Target1, feu clic a Opció per a l'objectiu "Target1.." i, a continuació, aneu a la pestanya Debug i seleccioneu ST-Link-Debugger tal com es mostra a la imatge superior

Pas 11: configureu el depurador ST-Link

Configureu el depurador ST-Link
Configureu el depurador ST-Link

Després de seleccionar el depurador ST-Link al pas 10, feu clic a Configuració i seleccioneu Traça i comproveu tots els camps tal com es mostra a la imatge anterior.

Pas 12: Creeu i pengeu el codi

Creeu i pengeu el codi
Creeu i pengeu el codi

Després de completar tots els passos, creeu el projecte i assegureu-vos que no hi hagi cap error al codi. Després de la compilació correcta, pengeu el codi al vostre Discovery Kit.

Pas 13: aneu a la finestra de depuració i obriu el monitor de sèrie

Aneu a la finestra de depuració i obriu el monitor de sèrie
Aneu a la finestra de depuració i obriu el monitor de sèrie

Després de carregar-lo, aneu a la finestra de depuració del Windows Viewer Serial WindowsDebug (printf) tal com es mostra a la imatge superior.

Pas 14: executeu el codi per veure la finestra Ouput on Debug Printf

Executeu el codi per veure la finestra Ouput on Debug Printf
Executeu el codi per veure la finestra Ouput on Debug Printf

El pas final és executar el codi tal com es mostra a la imatge per veure la sortida a la finestra printf. Aquí a main.c he implementat 2 tasques senzilles anomenades task1 i task2. Ambdues tasques tenen la mateixa prioritat i simplement imprimeixen el nom de la tasca. Degut a les mateixes prioritats, podeu veure-les totes dues en execució i impressió del nom.

Recomanat: