完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
5.0共2个课时7047人已学习
讲师:张飞 张飞实战电子高级工程师
1. 目标
学会调用OHOS gpio接口的驱动,包括设置gpio口的方向(输入还是输出),设定gpio管脚的值,使能gpio口中断,中断服务函数的使用等。
本调试在sample_test demo的基础上进行,sample_test涉及到的知识点,本文不再赘述。
2. 设置83号管脚为输出方向:
管脚的输出方向总计用三种类型,输入、输出和错误。
3. 设置管脚中断服务函数,并使能中断
OHOS的gpio管脚中断有五种类型,如下:
在中断服务函数里面,实现变量加2,通过输出这个变量的值,我们就可以判定程序有没有进入中断服务函数。
4. 触发端口中断,进入中断服务函数
首先,清零需要观察的变量g_irqCnt,为判定测试结果做准备。
其次,如果83号端口目前状态为High,那就设为low,并等待200ms;如果83号口目前状态为low,那就设置为High,并等待200ms。为中断函数的触发创造条件。
我们程序中,管脚RISING和FALLING都会进入中断,如果程序执行正确,那么一定会进入中断服务程序。
5. 通过用户态指令调用驱动程序
通过Dispatch函数会根据用户态发来的指令类型,调用响应的驱动程序。
6. 运行成功示意图
从运行结果来看,g_irqCnt的值变成了2,中断服务函数执行了。gpio驱动代码测试成功。
注:本文档或视频中所有的图片,代码截图仅供参考,具体以HarmonyOS官网发布的最新内容为准。
专栏评论
课程评分