Innehållsförteckning:

Konfigurera FreeRTOS From Scratch på STM32F407 Discovery Kit: 14 steg
Konfigurera FreeRTOS From Scratch på STM32F407 Discovery Kit: 14 steg

Video: Konfigurera FreeRTOS From Scratch på STM32F407 Discovery Kit: 14 steg

Video: Konfigurera FreeRTOS From Scratch på STM32F407 Discovery Kit: 14 steg
Video: Kort praktisk intro till ESP32 =Koda direkt i VS Code 2024, Juli
Anonim
Konfigurera FreeRTOS From Scratch på STM32F407 Discovery Kit
Konfigurera FreeRTOS From Scratch på STM32F407 Discovery Kit

Att välja FreeRTOS som ett realtidsoperativsystem för ditt inbäddade projekt är ett utmärkt val. FreeRTOS är verkligen gratis och har många enkla och effektiva RTOS -funktioner. Men det kan vara svårt att konfigurera freeRTOS från början eller så kan jag säga att det är lite förvirrande eftersom det kräver lite anpassning, till exempel att lägga till specifika filer för mikrokontroller, ställa in filhuvuden för rubriker, etc. I den här instruktionsboken kommer jag att guida dig hur du konfigurerar FreeRTOS på ditt STM32F407 Discovery -kit i detalj med Kiel uVision IDE.

Tillbehör

  • Du kan hitta mer om FreeRTOS på freertos.org
  • FreeRTOS nedladdningsguide RTOS källkodshämtningsinstruktioner
  • Komplett information om STM32F407 Discovery Kit Komma igång med STM32F407 Discovery KIt
  • Github Repository FreeRTOS på STM32F407 Discovery Kit

Steg 1: Öppna Keil UVision IDE

Öppna Keil UVision IDE
Öppna Keil UVision IDE

Öppna Keil uVision IDE. Klicka på ett projekt, välj Nytt uVision -projekt … Välj sedan din arbetskatalog och ange önskat projektnamn.

Steg 2: Välj enheten

Välj enheten
Välj enheten

När du har gett projektet namn måste du lägga till enhet i nästa steg. Här lägger vi till STM32F407VG Microncontroller från STMicroelectronics. Välj STM32F407VG och klicka sedan på OK.

Steg 3: Hantera körtidsmiljö

Hantera körtidsmiljö
Hantera körtidsmiljö

Nästa steg är att välja bibliotek/drivrutinkomponent på fliken Hantera körtidsmiljö. Välj här alla komponenter som visas i bilden ovan. När du har markerat alla lämpliga fält Klicka på Lös och klicka sedan på OK.

Steg 4: Kopiera FreeRTOS till din projektmapp

Kopiera FreeRTOS till din projektmapp
Kopiera FreeRTOS till din projektmapp

Nu måste du kopiera hela FreeRTOS -mappen till din projektmapp.

Steg 5: Lägg till FreeRTOS -filer i Project

Lägg till FreeRTOS -filer i Project
Lägg till FreeRTOS -filer i Project

När du har kopierat FreeRTOS -mappen i din projektmapp måste du lägga till alla nödvändiga FreeRTOS -filer i ditt projekt.

  1. I Keil, Välj mål1, högerklicka och välj sedan Lägg till ny grupp. Byt namn på denna grupp som FreeRTOS.
  2. Klicka nu på FreeRTOS-gruppen, högerklicka på välj Lägg till befintliga filer till gruppen "FreeRTOS …"
  3. Lägg till alla FreeRTOS -filer enligt bilden ovan.

Sökvägen till att hitta dessa filer i FreeRTOS -mappen är:

  • Filer: croutine, event_groups, list, kö, stream_buffer, uppgifter och timers. Sökväg: (…. / FreeRTOSv10.2.1 / FreeRTOS / Source)
  • Filer: heap_4 (Det finns 4 minneshanteringsfiler som lägger till någon). Sökväg: (…. / FreeRTOSv10.2.1 / FreeRTOS / Source / portable / MemMang)
  • Filer: port.c (Detta är en MCU -specifik fil). Sökväg: (… / FreeRTOSv10.2.1 / FreeRTOS / Source / portable / RVDS / ARM_CM4F)

Obs! FreeRTOS -versionen kan komma att ändras. Använd bara den senaste tillgängliga versionen.

Steg 6: Konfigurera sökvägen för FreeRTOS Header -filerna

Konfigurera sökvägen till FreeRTOS -huvudfilerna
Konfigurera sökvägen till FreeRTOS -huvudfilerna

När du har lagt till FreeRTOS -källfilerna måste du berätta för kompilatorn var respektive rubrikfiler finns. Därför måste vi konfigurera kompilatoralternativet.

Högerklicka på Target1 Alternativ för Target "Target1.." C/C ++ Inkludera sökväg. Se till att du inkluderar dessa vägar:

  1. Inkludera mapp i FreeRTOS (… / FreeRTOSv10.2.1 / FreeRTOS / Source / include)
  2. RVDS -katalog (… / FreeRTOSv10.2.1 / FreeRTOS / Source / portable / RVDS / ARM_CM4F)

Obs! Om du har några rubrikfiler, se till att du inkluderar sökvägen till dessa rubrikfiler enligt förklaringen ovan.

Steg 7: Lägg till filen "FreeRTOSConfig.h" i Project

Lägg till
Lägg till

FreeRTOS har en viktig rubrikfil som heter FreeRTOSConfig.h. Denna fil innehåller den applikationsspecifika (i vårt fall specifika för Cortex M4F MCU) anpassning. För enkelhetens skull har jag kopierat vår MCU -specifika FreeRTOSConfig.h -fil i RVDS -katalogen. Och även i steg 6 har vi redan lagt till RVDS -sökvägen. Om du lägger till den själv måste du lägga till den här filen i ditt projekt och också se till att du inkluderar sökvägen till filen som förklaras i steg 6.

Om du vill lägga till FreeRTOSConfig.h -filen själv i din föredragna katalog, har jag inkluderat den här filen nedan.

För mer information Klicka här FreeRTOSConfig.h

Steg 8: Lägg till "main.c" -filen med grundmallen

Lägg till
Lägg till
  • Skapa nu en ny användargrupp (jag har bytt namn till "Användarprogram").
  • Lägg till en ny C-fil till denna grupp (jag har lagt till en fil som heter main.c).
  • Det här är filen där huvudfunktionen () finns. Jag har inkluderat alla minsta nödvändiga funktioner och rubriker i den här filen så att projektet lyckas kompileras.

Du hittar main.c -filen med grundmallen nedan.

Steg 9: Anslut ditt STM32F407 Discovery Kit till din dator/bärbara dator

Anslut ditt STM32F407 Discovery Kit till din dator/bärbara dator
Anslut ditt STM32F407 Discovery Kit till din dator/bärbara dator

Steg 10: Välj ST-Link Debugger i kompilatorkonfiguration

Välj ST-Link Debugger i kompilatorkonfiguration
Välj ST-Link Debugger i kompilatorkonfiguration

Högerklicka på Target1, klicka sedan på Alternativ för Target "Target1..", navigera sedan till fliken Debug och välj ST-Link-Debugger som visas i bilden ovan

Steg 11: Konfigurera ST-Link Debugger

Konfigurera ST-Link Debugger
Konfigurera ST-Link Debugger

Efter att du valt ST-Link Debugger i steg 10, klicka på Inställningar, välj sedan Spåra och kontrollera alla fält som visas i bilden ovan.

Steg 12: Skapa och ladda upp koden

Skapa och ladda upp koden
Skapa och ladda upp koden

Efter att ha slutfört alla steg bygga projektet och se till att det inte finns några fel i koden. Efter lyckad sammanställning laddar du upp koden till ditt Discovery Kit.

Steg 13: Gå till Debug -fönstret och öppna seriell bildskärm

Gå till felsökningsfönstret och öppna seriell bildskärm
Gå till felsökningsfönstret och öppna seriell bildskärm

Efter uppladdning går du till felsökningsfönstervy Seriell Windows Debug (printf) Viewer som visas i bilden ovan.

Steg 14: Kör koden för att se fönstret Outut on Debug Printf

Kör koden för att se fönstret Outut on Debug Printf
Kör koden för att se fönstret Outut on Debug Printf

Det sista steget är att köra koden enligt bilden för att se utmatningen i utskriftsfönstret. Här i main.c har jag implementerat 2 enkla uppgifter som kallas task1 och task2. Båda uppgiften har samma prioritet och de skriver bara ut namnet på uppgiften. På grund av samma prioriteringar kan du se att båda körs och skriver ut namnet.

Rekommenderad: