Software Architecture
SiFli SDK is an officially provided software development framework customized based on RT-Thread. Using it, you can quickly develop applications running on SiFli Technology chip platforms.
The software framework is shown in the following diagram:
HAL is the Hardware Abstraction Layer, providing driver functionality independent of operating system services
RT-Thread Device Driver is implemented based on HAL, providing higher-level encapsulation. Users do not need to implement interrupt service routines, making it easier to use. For a more detailed comparison between HAL and RT-Thread device drivers, please refer to drivers.md.
Middleware (components) includes RT-Thread’s built-in software components (such as finsh, ulog), third-party components (located in the
external
directory), and self-developed components (located in themiddleware
directory). Applications can use all service interfaces including HAL to develop applications.
SDK Directory Structure
+---customer // Board support package
| +---boards // Board configuration files
| |
| +---peripherals // Board-level peripheral drivers
|
|
+---drivers
| +---cmsis // Chip register header files, startup files, linker scripts
| | +---Include
| | +---sf32lb52x
| | |
| | +---sf32lb55x
| | |
| | +---sf32lb56x
| | |
| | \---sf32lb58x
| |
| +---hal // HAL implementation code
| |
| \---Include // HAL header files
|
+---example // Examples
|
+---external // Third-party components
|
+---middleware // Self-developed components
|
+---rtos // Operating system
| +---freertos // FreeRTOS
| |
| +---os_adaptor // OS abstraction layer
| |
| |
| \---rtthread // RT-Thread
| \---bsp
| \---sifli
| \---drivers // RT-Thread device driver adaptation code
|
|
|
\---tools // Tools