电子产业一站式赋能平台

PCB联盟网

搜索
查看: 786|回复: 1
收起左侧

【信盈达】鸿蒙系统驱动程序--2、编写APP

[复制链接]

2607

主题

2607

帖子

7472

积分

高级会员

Rank: 5Rank: 5

积分
7472
发表于 2020-9-14 11:56:40 | 显示全部楼层 |阅读模式
【信盈达】鸿蒙系统驱动程序--2、编写APP, APP先获得服务,再调用Dispatch即可。需要注意的是里面用的是HdfSBuf传递数据。 以下是hello_test.c的源码。
2.0.1获取服务

31.png (26.29 KB, 下载次数: 0)

下载附件  保存到相册  

1 小时前 上传


2.0.2分配HdfBuf 要分配两个HdfBuf:data、reply。data用于向驱动传参数,reply用来保存驱动返回的数据。 代码如下:

32.png (38.01 KB, 下载次数: 0)

下载附件  保存到相册  

1 小时前 上传 如果不向驱动提供数据,上面的第32行不是必须的,现在之所以保留是因为内核有些问题。
2.1 调用Dispatch函数

这就像在Linux中调用ioctl一样,代码如下:

33.png (21.84 KB, 下载次数: 0)

下载附件  保存到相册  

1 小时前 上传


2.2 取出数据



34.png (17.15 KB, 下载次数: 0)

下载附件  保存到相册  

1 小时前 上传


2.3 把APP源码放入系统 先在整个系统源码的根目录下创建一个子目录,比如myapp,在里面放入hello_test.c。 再修改 drivers/hdf/lite/manager/BUILD.gn,如下:

35.png (40.04 KB, 下载次数: 0)

下载附件  保存到相册  

1 小时前 上传
2.4编译、烧写、测试
1、编译 在目录下运行: python build.py ipcamera -phi3516dv300_liteos_a -b debug
2、烧写 烧写out/ipcamera_hi3516dv300_liteos_a/目录下的文件: liteos.bin,这是内核 rootfs.img,这是文件系统
2.5 测试输出结果

36.png (62.48 KB, 下载次数: 0)

下载附件  保存到相册  

1 小时前 上传

开发板测试结果:

37.png (28.71 KB, 下载次数: 0)

下载附件  保存到相册  

1 小时前 上传

注:文档和视频中所有的图片及代码截图皆为示意图,具体以HarmonyOS官网发布内容为准。
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


联系客服 关注微信 下载APP 返回顶部 返回列表