Main

src/driving_board/main.c

contains the main firmware entry point and runtime logic for the driving board. The system is built on FreeRTOS (CMSIS-RTOS v2) and runs multiple tasks concurrently.


Initialization

init_board()

This function initializes the full system before starting the scheduler.

It:


Tasks

The system runs 3 main threads:

MainTask

This task handles: Ethernet communication Diagnostics message creation and sending Periodic data updates

Example Flow For Sending A Message:


PwmTask

This task runs the control loop.

It:


DrivingEncoderTask

This task processes encoder data.

It:


Revision #4
Created 2026-04-20 00:27:33 UTC by Irem Civginer
Updated 2026-04-23 12:27:12 UTC by Irem Civginer