梅科尔工作室OpenHarmony设备开发培训笔记-第四章学习笔记

qq62f2731d253eb
发布于 2022-8-9 23:30
浏览
0收藏

第四章 驱动子系统开发
操作GPIO
GPIO API介绍
wifiiot gpio.h接口简介:
这个.h中包含声明GPIO接口函数,这些功能用于初始化GPIO。

        wifiiot gpio ex.h接口简介:
            这个.h中包含声明扩展的GPIO接口函数,这些功能用于设置GPIO拉力和驱动器强度。


    查看LED对应的GPIO引脚
        LED对应的GPIO引脚是GPIO2通过控制GP1O2输出的的电平信号来实现LED灯的闪烁。
            ·高电平时点亮LED灯。
            ·低电平时熄灭LED灯。


    操作GPIO点亮LED
        打开“B1 basic led blink”工程的led_example.c文件,可在代码中查看实现LED以1S的频率闪烁代码

    GPIO扩展实验
        通过程序读取GPO引脚方向、输出电平值等,并通过串口打印显示出来


GPIO中断
    GPIO中断API介绍
        GpioRegisterlsrFunc
            设置GPIO引脚中断功能

        GpioUnregisterlsrFunc
            取消GPIO引脚中断功能

        GpioSetlsrMask
            屏蔽GPIO引脚中断功能

        GpioSetlsrMode
            设置GPIO引脚中断触发模式


    查看按键对应的GPIO脚
        F1和F2按键对应的GP1O引脚是分别是GPO11和GPIO12,通过检测GPO的电平信号来判断按键的状态

    GPO中断读取按键状态
        打开“B2 basic button”工程的button example.c文件,可在代码中查看实现按键控制LED灯亮灭的代码

    GPIO中断扩展实验
        改变中断触发模式,观察现象
            static void F1_Pressed(char arg)
            (void)arg;
            printf("This is F1_Pressed\r\n");
            GpioSetoutputVal(WIFI_IOT_IO_NAME_GPIO_2,1);
            GpioSetIsrMode(WIFI_IOT_IO_NAME_GPIO_11,WIFI_IOT_INT_TYPE_EDGE,WIFI_IOT_GPIO_EDGE_RISE_LEVEL_HIGH);
            static void F2_Pressed(char targ)
            {
            (void)arg;
            GpioSetoutputval(WIFI_IOT_IO_NAME_GPIO_2,0);
            printf("This is F2_Pressed\r\n");
            GpioSetIsrMask(WIFI_IOT_IO_NAME_GPIO_12,1);



PWM
ADC
12C
UART

收藏
回复
举报
回复
    相关推荐