2023 — Webservices and Applications
Table of Contents
- Table of Contents
- Used Libs, compiler and apps
- Tasks
- Style Guide
- Commit Messages Conventions
- Writing File System Data to QSPI Flash
- Documentation
Used Libs, Compiler and Apps
- lwip version 2.1.2
- CubeIDE version 1.12.1
- STM32CubeMX version 6.8.1
- Firmware Lib (stm32f7) 1.17.1
Tasks
Make for each task a separate c and h file. The name of the file is the name of the task. This way we can keep the code clean.
Style Guide
To maintain a consistent and clean codebase, follow the style guide. This document provides detailed instructions on naming conventions, code structure, and commenting practices.
Please read the style_guide.md carefully before making contributions.
Editor Configuration
To help you adhere to the style guide, use the provided configuration files for the code formatters in your code editor. You can choose from the following options:
-
.clang-format:- For Visual Studio Code and CLion users
- Or use the clang-format tool directly
-
eclipse_format.xml:- For Eclipse-based editors, including STM32CubeIDE.
- You can import it within eclipse settings,
Preferences -> LANGUAGE -> Code Style -> Formattertab.
Commit Messages Conventions
The subject line of a commit message should follow the following rules:
- Short and descriptive (max 50 chars)
- In imperative present tense
- Capitalized
- Not end with a period
Example:
Implement access right management
The body of a commit message may be used to explain the what and why of a commit.
Writing File System Data to QSPI Flash
Please read the llfs.md document for instructions on how to enable the external loader in STM32CubeIDE.
Documentation
Documentation is placed in the docs folder. If your part needs documentation (e.g. how to use tcp cmd interface), add a markdown file in the above-mentioned folder.
This folder contains the following documents:
- llfs.md: Linked List File System
- lcd_api.md: LCD API
- logger.md: Logging and Debugging Messages
- mkllfs.md: Make Linked List File System
- style_guide.md: Style Guide
- tftp.md: Trivial File Transfer Protocol
- udp_broadcast.md: UDP Broadcast