1# HAL层实现<a name="ZH-CN_TOPIC_0000001062862633"></a> 2 3- [UTILS](#section1394788286) 4- [IOT外设子系统](#section958113200811) 5- [WLAN服务](#section1331917210911) 6 7HAL层主要功能是实现轻OpenHarmony与芯片的解耦,以下模块描述的是轻OpenHarmony系统对芯片接口的依赖情况。 8 9## UTILS<a name="section1394788286"></a> 10 11**基本介绍:** 12 13公共基础提供通用的基础组件,这些基础组件可被各业务子系统及上层应用所使用。基础组件依赖芯片文件系统实现,需要芯片平台提供实现文件的打开、关闭、读写、获取大小等功能。 14 15**公共基础HAL层接口说明:** 16 17需要芯片适配相关接口的实现,对芯片文件系统接口依赖请参考[utils的HAL头文件](https://gitee.com/openharmony/utils_native_lite/tree/master/hals/file)。 18 19## IOT外设子系统<a name="section958113200811"></a> 20 21**基本介绍** 22 23提供轻OpenHarmony专有的外部设备操作接口。本模块提供设备操作接口有:FLASH, GPIO, I2C, PWM, UART, WATCHDOG等。 24 25**IOT外设子系统HAL层接口说明**: 26 27需要芯片适配相关接口的实现,对芯片设备外设接口依赖请参考[IOT外设子系统的HAL头文件](https://gitee.com/openharmony/iothardware_peripheral/tree/master/interfaces/inner_api)。 28 29## WLAN服务<a name="section1331917210911"></a> 30 31**基本介绍:** 32 33WLAN服务适用于设备接入WLAN无线局域网场景,包括: 34 35- 使用STA模式,作为接入方接入其他设备、路由器开启的WLAN无线局域网接入点; 36 37- 使用AP模式,开启无线局域网接入点,允许其他设备连接。 38 39 40借助WLAN服务,开发者可以实现对系统中WLAN的控制,包括开启关闭、扫描发现、连接断开等功能。 41 42此外,WLAN服务还包括事件listen功能,开发者可以listen WLAN的状态,并在状态发生变化时立刻感知。 43 44**WLAN服务HAL层接口说明:** 45 46代码路径及接口定义如下: 47 48``` 49foundation/communication/interfaces/kits/wifi_lite/wifiservice/ 50├── station_info.h 51├── wifi_device_config.h 52├── wifi_device.h 53├── wifi_error_code.h 54├── wifi_event.h 55├── wifi_hotspot_config.h 56├── wifi_hotspot.h 57├── wifi_linked_info.h 58└── wifi_scan_info.h 59``` 60 61具体的实现需要各厂家按照定义的接口在vendor/\*\*\*/\*\*\*/\*\*\*\_adapter中实现,例如hi3861中具体实现在 62 63``` 64vendor/hisi/hi3861/hi3861_adapter/hals/communication/wifi_lite/wifiservice/ 65├── BUILD.gn 66└── source 67├── wifi_device.c 68├── wifi_device_util.c 69├── wifi_device_util.h 70└── wifi_hotspot.c 71``` 72 73需要芯片适配相关接口的实现,对芯片设备外设接口依赖请参考[WLAN服务的头文件](https://gitee.com/openharmony/communication_wifi_lite/tree/master/interfaces/wifiservice)。 74 75