Project overview

ANAX CBS is a multi-platform STM32-based project intended for sensor polling, inter-device exchange, and data collection in a distributed CBS environment.

The project currently includes:

  • an APP branch, which contains the operational application logic;

  • a BOOTLOADER branch, separated beginning from the architectural transition after version 9.0;

  • several hardware platforms with partially shared and partially platform-specific files.

Core documentation logic

The documentation is organized so that a reader can quickly answer the following questions:

  • what the project does;

  • which branch is being documented;

  • which platform is being considered;

  • which files are common across platforms;

  • which files differ by platform;

  • where to find the current code, historical code, comparison tables, and future tasks.

High-level source structure

The most important architectural principle is the separation between:

  • platform-neutral application logic, primarily concentrated in user_code_0.h and user_code_2.h;

  • platform-specific bindings, primarily concentrated in platform.h;

  • CubeMX-generated initialization code, primarily concentrated in main.c.

The documentation is therefore split accordingly.