硬件抽象层
硬件抽象层(Hardware Abstact Layer, HAL)定义了芯片硬件访问接口,用户可以使用这个接口访问底层硬件资源,不同芯片系列的HAL接口兼容,便于应用程序在不同芯片平台的移植。
SF32LB52x系列有两个CPU,HCPU用于高性能计算,LCPU运行蓝牙协议栈,不对应用开放。
通常运行在HCPU的软件可以访问LCPU的硬件资源,但是需要确保LCPU处于打开运行状态,并且LCPU没有使用这些资源。当HCPU/ACPU软件使用LCPU的硬件的时候,需要在睡眠唤醒的时候,首先将LCPU唤醒,以确保LCPU硬件资源的访问,否则会引发系统访问失败而死机。
运行在LCPU的软件不能使用HCPU的硬件资源,仅仅可以在HCPU/ACPU处于打开运行状态,访问一些HCPU的寄存器,这种访问不建议使用。
HAL的移植
以下函数需要在移植到其他实时操作系统的时候实现: