Untitled

Documentation

Project Overview

                                                                                     Architecture

                                                                                 Architecture

Queues

Table with used queues between tasks:

Queue Type Size (bytes) Tasks
Sensor_Queue struct sensor 8 StartAquisition Task → TouchGFX
Termination_Resistor uint8_t 1 TouchGFX ↔ Default Task
Sampling_size uint8_t 1 TouchGFX → Start_aquisition
Bitrate uint8_t 1 Can_sampling → TouchGFX
CAN_fill_level_queue uint32_t 1 Can_sampling → TouchGFX
pin1 uint8_t 1 TouchGFX ↔ Default Task
pin3 uint8_t 1 TouchGFX ↔ Default Task
pin6 uint8_t 1 TouchGFX ↔ Default Task
pin7 uint8_t 1 TouchGFX ↔ Default Task
pin8 uint8_t 1 TouchGFX ↔ Default Task
pin9 uint8_t 1 TouchGFX ↔ Default Task
pin11 uint8_t 1 TouchGFX ↔ Default Task
pin12 uint8_t 1 TouchGFX ↔ Default Task
pin13 uint8_t 1 TouchGFX ↔ Default Task
pin14 uint8_t 1 TouchGFX ↔ Default Task
pin15 uint8_t 1 TouchGFX ↔ Default Task
pin16 uint8_t 1 TouchGFX ↔ Default Task

Custom struct

struct sensor{ float voltage; float current; }

Tasks

Default Task

This task is responsible for the relay board actuation using i2c, and comunication with the UI for the buttons using te queues named pinX

                                                                                                       Default Task

                                                                                                   Default Task

Aquisition Task

This task will do the aquisition from the current sensor and will also read the system voltage

                                                                                                            Aquisition Task

                                                                                                        Aquisition Task