学习资料:
https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXTX003+Self-paced/courseware/859b86b40fa541a4951f97bdc8c18937/fe5db016525c44b3bad913cce4575005/
本节内容:
GPIO相关API
·如何操作GPIO点亮LED灯
何读取GPIO电平状态
主要步骤:
1.GPIO API介绍
2.查看LED对应的GPIO引脚
3.操作GPIO点亮LED
4.GPIO扩展实验
gpio api介绍:
wifiiot_gpio.h接口简介
这个.h中包含声明GPIO接口函数,这些功能用于初始化GPIO。
查看LED对应的GPIO引脚
LED对应的GPIO引脚是GPIO2通过控制GPIO2输出的的电平信号来实现LED灯的闪烁。
·高电平时点亮LED灯。
。低电平时熄灭LED灯。
打开“B1_basic_led_blink”工程的led_example.c文件:可在代码中查看实现LED以1S的频率闪烁代码
代码实现首先引入头文件
然后初始化
设置输出模式,与引脚号码。
具体亮暗规则代码如下:
api位于gpio.h
功能选择如图所示:
我们根据需求来选择
对代码进行根据要求修改之后
最后来编译烧录代码来测试代码现象。步骤和之前一样,再此不做过多赘述。
输出结果如下
总结:
1、了解GPIO输出相关API
2、掌握如何操作GPIO输出高电平点亮LED灯
3、如何读取GPIO当前的设置
本节课内容较为复杂,且教程较为快速,有许多点没有仔细解释,希望在接下来的课程可以再次进行讲解:
HarmonyOS驱动子系统开发—GPIO中断
主要内容
GPIO中断相关API
如何使用GPIO中断相关API
如何通过GPIO中断判断按键状态
主要步骤:
1.GPIO中断API介绍
2.查看按键对应的GPIO引脚
3.GPIO中断读取按键状态
4.GPIO中断扩展实验
GPIO中断API介绍
wifiiot_gpio.h接口简介:
wifiiot_gpio.h中包含声明GPIO中断相关函数。
查看按键对应的GPIO引脚
F1和F2按键对应的GPIO引脚是分别是GPIO11和GPIO12,通过检测GPIO的电平信号来判断按键的状态。
代码实现分析
首先初始化led,然后根据需求设置led灯代码功能。
根据电频变化来设置触发条件,如电频触发,或者边缘触发。
根据代码,以及自己所需的来设置。
代码修改后,进行代码烧录编译,
烧录成功后,我们修改代码进行扩展。首先进行一些打印,来使得现象更加明显
:
然后将中断类型进行修改。改为上升延中断。
修改之后进行代码编译烧录。可以看到结果如图说是,符合预期:
一直按下不会打印,只有在改变时才会打印。
总结:
1、了解GPIO中断APl
2、掌握如何通过按键去控制LED
3、如何改变GPIO中断的模式
本节在上节课的知识基础上进行讲解。拓展实验也让我们对知识有了更直观的了解。
HarmonyOS驱动子系统开发—PWM输出
本节主要内容:
、. PWM相关APl
.如何操作GPIO输出PWM
.如何使用PWM改变LED灯亮度
PWM API介绍
wifiiot_pwm.h接口简介:
这个wifiiot_pwm.h中包含声明PWM接口函数。
查看LED对应的GPIO引脚
LED对应的GPIO引脚是GPIO2通过控制GPIO2输出的的电平信号来实现LED灯的闪烁。
·高电平时点亮LED灯。
·低电平时熄灭LED灯。
输出PWM改变LED亮度
打开“B3_basic_pwm_led”工程的
pwm_example.c文件,可在代码中查看实玛输出不同占空比的PWM来改变LED的亮度码
分析实现代码。通过改变pwm来改变灯泡的亮度,即pwm占玶比。
代码
同样也要进行初始化,和端口,这些步骤与之前相同、
代码修改之后,检查无误后进行代码编译烧录。
最后我们得到最终结果
可以看到开发班上led灯亮度进行了亮度呼吸的效果。
总结:
1、了解PWM输出相关API
2、掌握如何操作GPIO输出PWM改变LED亮度
本节课我们可以清楚·的看到代码在板子上运行的实际效果,灯的变化这些都是可以由代码进行改变的,使得学习兴趣进行了极大改变。
HarmonyOS驱动子系统开发-ADC采样
主要内容
ADC相关APl
·如何使用ADC相关函数读取GPIO的电压值
步骤
1. ADC API介绍
2.查看ADC对应的GPIO引脚
3.ADC读取GPIO的电压值
ADC API介绍
wifiiot_adc.h接口简介:
这个wifiiot_adc.h中包含声明ADC接口函数。
AdcRead (WiflotAdcChanellndex channel,unsigned short * data,WifilotAdcEquModelsel equModel WifilotAdcCurBais curBais,unsigned short rstCnt )
查看ADC对应的GPIO引脚
本案例将使用板载用户按键F1来模拟GPIO口电压的变化。GPIO_11对应的是ADC Channel 5 ,所以需要编写软件去读取ADC Channel 5的电压。
ADC读取GPIO的电压值
打开“B4_basic_adc”工程的
adc_example.c文件,可在代码中查看实现读取ADC通道5的电压值的代码
代码编译解释运行:
该代码的意义与功能如下:
编译烧录之后结果如图所示:
按住f1
总结
1、了解ADC输出相关API
2、掌握如何使用ADC相关函数读取GPIO的电压值
心
本节课时间较短,内容也较少,但知识仍需要时间进行消化.
HarmonyOS驱动子系统开发-12C总线
主要内容:
l2C相关APl
如何使用I2C相关API
.如何通过I2C读写NFC芯片
主要步骤:
1.I2C API介绍
2.查看NFC的l2C对应的GPIO引脚
3.l2C读写NFC芯片
I2C API介绍:
wifiiot_i2c.h接口简介:
wifiiot_i2c.h中包含声明I2C接口函数。
wifiiot_i2c_ex.h接口简介:
wifiot_i2c_ex.h中包含声明扩展I2C接口函数。
查看NFC的I2C对应的GPIO引脚
NFC芯片的I2C对应的GPIO引脚是分别是GPIOO和GPIO1,所以需要编写软件使用GPIO_0和GPIO_1产生l2C信号去控制NFC芯片。
i2C读写NFC芯片
打开“B5_basic_i2c_nfc”工程的
i2c_example.c文件,可在代码中查看实现NCF读写的代码
代码解读价绍:
操作代码:
代码分别为·: 地址,参数,结构体、
代码修改后进行代码编译烧录,可以看到带有nfc的手机可以读取到代码中的数据。
· 1、了解I2C相关API
· 2、掌握如何操作I2C总线读写NFC芯片
本节课知识点多,并且理解起来由一定难度,对于我来说,有许多地方没有弄明白,总结由很多欠佳的地方。
HarmonyOS驱动子系统开发-UART读写
主要内容;
. UART相关API
。如何使用UART相关API
。如何通过UART进行数据收发
主要步骤;
1.UART API介绍
2.查看UART1对应的GPIO引脚3.UART读写数据
UART API介绍
wifiiot_uart.h接口简介:
wifiiot_uart.h中包含声明UART接口函数。
查看UART1对应的GPIO引脚
UART1对应的GPIO引脚是分别是GPIO5和GPIO6,将使用GPIO5和GPIO6进行UART数据的收发。
UART读写数据
打开“B6_basic_uart”工程的
uart_example.c文件,可在代码中查看实现UART读写数据。