Yilin Sun
763d32be90
Signed-off-by: Yilin Sun <imi415@imi.moe> |
||
---|---|---|
.. | ||
armgcc | ||
FreeRTOSConfig.h | ||
board.c | ||
board.h | ||
clock_config.c | ||
clock_config.h | ||
dcd.c | ||
dcd.h | ||
evkmimxrt1020_sdram_init.jlinkscript | ||
freertos_queue.c | ||
freertos_queue_v3_14.xml | ||
pin_mux.c | ||
pin_mux.h | ||
readme.md |
readme.md
Overview
This document explains the freertos_queue example. This example introduce simple logging mechanism based on message passing.
Example could be devided in two parts. First part is logger. It contain three tasks: log_add().....Add new message into the log. Call xQueueSend function to pass new message into message queue. log_init()....Initialize logger (create logging task and message queue log_queue). log_task()....Task responsible for printing of log output.
Second part is application of this simple logging mechanism. Each of two tasks write_task_1 and write_task_2 print 5 messages into log.
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
- EVK-MIMXRT1020 board
- Personal Computer
Board settings
No special settings are required.
Prepare the Demo
- Connect a USB cable between the host PC and the OpenSDA USB port on the target board.
- Open a serial terminal with the following settings:
- 115200 baud rate
- 8 data bits
- No parity
- One stop bit
- No flow control
- Download the program to the target board.
- Either press the reset button on your board or launch the debugger in your IDE to begin running the demo.
Note: To debug in qspiflash, following steps are needed:
- Select the flash target and compile.
- Set the SW8: 1 off 2 off 3 on 4 off, then power on the board and connect USB cable to J23.
- Start debugging in IDE.
- Keil: Click "Download (F8)" to program the image to qspiflash first then clicking "Start/Stop Debug Session (Ctrl+F5)" to start debugging. Running the demo ================ After the board is flashed the Tera Term will show debug console output.
Example output: Log 0: Task1 Message 0 Log 1: Task2 Message 0 Log 2: Task1 Message 1 Log 3: Task2 Message 1 Log 4: Task1 Message 2 Log 5: Task2 Message 2 Log 6: Task1 Message 3 Log 7: Task2 Message 3 Log 8: Task1 Message 4 Log 9: Task2 Message 4