MCUXpresso_MIMXRT1052xxxxB/boards/evkbimxrt1050/freertos_examples/freertos_generic
Yilin Sun 6baf4427ce
Updated to v2.15.000
Signed-off-by: Yilin Sun <imi415@imi.moe>
2024-03-18 23:15:10 +08:00
..
armgcc Updated to v2.15.000 2024-03-18 23:15:10 +08:00
FreeRTOSConfig.h Updated to v2.14.0 2023-11-30 20:55:00 +08:00
board.c Updated to v2.15.000 2024-03-18 23:15:10 +08:00
board.h Updated to v2.15.000 2024-03-18 23:15:10 +08:00
clock_config.c Updated to v2.14.0 2023-11-30 20:55:00 +08:00
clock_config.h Updated to v2.14.0 2023-11-30 20:55:00 +08:00
dcd.c Updated to v2.14.0 2023-11-30 20:55:00 +08:00
dcd.h Updated to v2.14.0 2023-11-30 20:55:00 +08:00
evkbimxrt1050_sdram_init.jlinkscript Updated to v2.14.0 2023-11-30 20:55:00 +08:00
freertos_generic.c Updated to v2.14.0 2023-11-30 20:55:00 +08:00
freertos_generic_v3_14.xml Updated to v2.15.000 2024-03-18 23:15:10 +08:00
pin_mux.c Updated to v2.14.0 2023-11-30 20:55:00 +08:00
pin_mux.h Updated to v2.14.0 2023-11-30 20:55:00 +08:00
readme.md Updated to v2.15.000 2024-03-18 23:15:10 +08:00

readme.md

Overview

This document explains the freertos_generic example. It is based on code FreeRTOS documentation from http://www.freertos.org/Hardware-independent-RTOS-example.html. It shows combination of several tasks with queue, software timer, tick hook and semaphore.

The example application creates three tasks. The prvQueueSendTask periodically sending data to xQueue queue. The prvQueueReceiveTask is waiting for incoming message and counting number of received messages. Task prvEventSemaphoreTask is waiting for xEventSemaphore semaphore given from vApplicationTickHook. Tick hook give semaphore every 500 ms.

Other hook types used for RTOS and resource statistics are also demonstrated in example:

  • vApplicationIdleHook
  • vApplicationStackOverflowHook
  • vApplicationMallocFailedHook

SDK version

  • Version: 2.15.000

Toolchain supported

  • IAR embedded Workbench 9.40.1
  • GCC ARM Embedded 12.2
  • Keil MDK 5.38.1
  • MCUXpresso 11.8.0

Hardware requirements

  • Mini/micro USB cable
  • EVKB-IMXRT1050 board
  • Personal Computer

Board settings

No special settings are required.

Prepare the Demo

  1. Connect a USB cable between the host PC and the OpenSDA USB port on the target board.
  2. Open a serial terminal with the following settings:
    • 115200 baud rate
    • 8 data bits
    • No parity
    • One stop bit
    • No flow control
  3. Download the program to the target board.
  4. Either press the reset button on your board or launch the debugger in your IDE to begin running the demo. Running the demo ================ After the board is flashed the Tera Term will start periodically printing the state of generic example.

Example output: Event task is running. Receive message counter: 1. Receive message counter: 2. Receive message counter: 3. Receive message counter: 4. Receive message counter: 5. Receive message counter: 6. Receive message counter: 7. Receive message counter: 8. Receive message counter: 9. Receive message counter: 10. Receive message counter: 11. Receive message counter: 12. Event task is running. Receive message counter: 13. Receive message counter: 14. ...