嵌入式软件从整体上来看,架构设计很重要。这个题目也很大,逐步总结一下吧
RA有篇文章写的不错,这里也参考了一下
整体架构

进一步细分:

BSP
板级支持包构成灵活配置软件包 (FSP) 的底层,并且为其他 FSP 模块正常协同工作奠定了基础。为此,其主要任务是确保 MCU 从复位状态切换为用户应用程序状态。在实现此目的的过程中,它将设置时钟、中断、堆栈、堆、堆栈监视器和 C 语言运行环境。它还会配置端口的 I/O 引脚,并执行任何特定的电路板初始化。
HAL
在板级支持包 (BSP) 之上是硬件抽象层 (HAL),它以较小的内存占用量为外设提供高效的设备驱动程序,并且与MCU 的寄存器一致,以实现易于使用的接口,使程序员无需考虑具体的硬件。它是模块的集合(参见图 2-3),每个模块都是 RA 产品家族微控制器中可用的外设的驱动程序,如串行外设接口 (SPI) 或模数转换器 (ADC),其名称以 r_ 开头,便于与灵活配置软件包 (FSP) 的其他部分区分开来。所有这些模块本质上均与 RTOS 无关。
中间件
中间件层位于 HAL 层
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



