|
鸿蒙Hi3516 纯手工打造从应用层到驱动层示例,
本帖最后由 PCB00023915 于 2020-11-6 09:56 编辑
鸿蒙Hi3516 纯手工打造从应用层到驱动层示例
鸿蒙的应用和驱动构建涉及到的文件较多,能够重新编译的源代码较少,重新构建了一个示例和需要修改的文件。
1. 应用层 一般在applications目录下,新建应用目录CallLED; applications\CallLED;新建新用文件 CallLED.c
callled1.png (47.93 KB, 下载次数: 0)
下载附件 保存到相册
昨天 16:51 上传
callled2.png (72.64 KB, 下载次数: 0)
下载附件 保存到相册
昨天 16:51 上传
2. 驱动层 一般在vendor\huawei\hdf\ 目录, 新建驱动层LED目录,vendor\huawei\hdf\LED ;新建LED.c文件
LED1.png (78.16 KB, 下载次数: 0)
下载附件 保存到相册
昨天 16:51 上传
LED2.png (47.6 KB, 下载次数: 0)
下载附件 保存到相册
昨天 16:51 上传
应用层文件、编译链接图标:
app1.png (126.78 KB, 下载次数: 0)
下载附件 保存到相册
昨天 16:29 上传
驱动层文件、编译链接图示:
driver1.png (90.94 KB, 下载次数: 0)
下载附件 保存到相册
昨天 16:29 上传
driver2.png (53.37 KB, 下载次数: 0)
下载附件 保存到相册
昨天 16:29 上传
踩坑点: 驱动层使用 HDF_LOGI打印必须要定义HDF_LOG_TAG ;否则没有打印输出
#define HDF_LOG_TAG LED
HDF_LOGI(“HdfLedSampleBind “);
/**
* @Brief Prints logs at the information level.
*
* To use this function, you must define <b>HDF_LOG_TAG</b>, for example, #define HDF_LOG_TAG evt.
*
* @since 1.0
* @version 1.0
*/
#define HDF_LOGI(fmt, arg...) printf(“[HDF:I/“ LOG_TAG “]“ fmt “\r\n“, ##arg)
驱动层 定义后,使用HDF_LOGI有时也不行,不会有打印输出,还会出现sendheartbeat fail;使用dprintf则一直都有。
ok.png (17.75 KB, 下载次数: 0)
下载附件 保存到相册
昨天 16:37 上传 |
|