为了方便查阅,本文汇集了我在学习鸿蒙驱动子系统过程中,曾经遇到过的HDF驱动框架提供的API。 同时,还加入了一些对这些API的个人理解和解读。
另外,大家也可以去阅读这些API的源码或官方文档:
https://device.harmonyos.com/cn/docs/documentation/apiref/core-0000001054718073
前一篇: 《HDF驱动框架的API》(2)
1、官方文档
https://device.harmonyos.com/cn/docs/documentation/apiref/core-0000001054718073#ZH-CN_TOPIC_0000001054718073__gab54f9e79649505f668d6d276fb447a2b
2、定义
drivers/framework/include/core/hdf_io_service_if.h
1、官方文档
https://device.harmonyos.com/cn/docs/develop/apiref/driverconfig-0000001055678040#ZH-CN_TOPIC_0000001055678040__ga09c9585a5d95c79fd5ee4bd8863ba66a
2、定义
drivers/framework/include/config/device_resource_if.h
驱动的加载方式。
1、官方文档
https://device.harmonyos.com/cn/docs/develop/apiref/core-0000001054718073#ZH-CN_TOPIC_0000001054718073__section550733843112509
2、定义
drivers/framework/include/core/hdf_device_desc.h
驱动对外发布服务的策略。
1、官方文档
https://device.harmonyos.com/cn/docs/develop/apiref/core-0000001054718073#ZH-CN_TOPIC_0000001054718073__section550733843112509
2、定义
drivers/framework/include/core/hdf_device_desc.h
功能:向HDF注册驱动。
1、官方文档
https://device.harmonyos.com/cn/docs/develop/apiref/core-0000001054718073#ZH-CN_TOPIC_0000001054718073__ga99831072fdca13e3c423a14fa6a83c34
2、定义
drivers/framework/include/core/hdf_device_desc.h
drivers/framework/core/common/include/host/hdf_device_section.h
功能:以error级别输出日志信息。
1、官方文档
https://device.harmonyos.com/cn/docs/develop/apiref/driverutils-0000001055518036#ZH-CN_TOPIC_0000001055518036__ga78a7d97e44c6dac52a5d9d849c1a65d4
2、定义
drivers/framework/include/utils/hdf_log.h
GPIO驱动属于基于HDF驱动框架开发的一种平台设备驱动,它提供一套标准的接口供应用程序或其它设备驱动使用。平台设备一般指SOC的片上外设,比如:GPIO、IIC、UART、RTC等。
设置GPIO的方向。第1个参数gpio
:GPIO端口的编号;第2个参数val
:GPIO的方向(见5.2.2节)。
int32_t GpioWrite(uint16_t gpio, uint16_t val)
1、头文件
drivers/framework/include/platform/gpio_if.h
2、官方文档
https://device.harmonyos.com/cn/docs/develop/apiref/gpio-0000001054918103#ZH-CN_TOPIC_0000001054918103__ga5c628216d209fa76c69eca69856bc0ae
写GPIO。第1个参数gpio
:GPIO端口的编号;第2个参数val
:GPIO要输出的值(见5.2.1节)。
int32_t GpioWrite(uint16_t gpio, uint16_t val)
1、头文件
drivers/framework/include/platform/gpio_if.h
2、官方文档
https://device.harmonyos.com/cn/docs/documentation/apiref/gpio-0000001054918103#ZH-CN_TOPIC_0000001054918103__ga7dee8242ba9335b3217635ba64764bc4
drivers/framework/include/platform/gpio_if.h
drivers/framework/include/platform/gpio_if.h