总目录:
文档链接: https://mubucm.com/doc/2sINVHMg9Pm
密码: mkxb
本文幕布:
文档链接: https://www.mubucm.com/doc/3bgH9y_8Rnm
密码: wu9i
课程链接:
https://www.bilibili.com/video/BV1tv411b7SA?spm_id_from=333.999.0.0
HarmonyOS驱动子系统开发
1. 操作GPIO
1.1 GPIO API介绍
1.1.1wifiiot_gpio.h接口简介:
这个 .h中包含声明GPIO接口函数,这些功能用于初始化GPIO。
功能接口:
1.1.2 wifiiot_gpio_ex.h接口简介:
这个.h中包含声明扩展的GPIO接口函数,这些功能用于设置GPIO拉力和驱动器强度
功能接口:
1.2 查看LED对应的GPIO引脚
1.2.1 LED灯原理图
LED对应的GPIO引脚是GPIO2通过控制GPIO2输出的的电平信号来实现LED灯的闪烁。
- 高电平时点亮LED灯。
- 低电平时熄灭LED灯。
1.2.2 Hi3861原理图
1.3 操作GPIO点亮LED
1.3.1 文件位置:
"B1_basic_led_blink"工程 → “led_example.c”
- LED以 1s 的频率闪烁
1.3.2 代码:
1.4 GPIO扩展实验
1.4.1 实验效果:
通过程序读取GPIO引脚方向、输出电平值等,并通过串口打印显示出来。
2. GPIO中断
宣告结束,告知开始。
2.1 GPIO中断API介绍
2.1.1 wifiiot_gpio.h接口简介:
wifiiot_gpio.h 中包含声明GPIO中断相关函数。
2.1.1.1 功能接口:
2.2 查看按键对应的GPIO引脚
F1和F2按键对应的GPIO引脚是分别是GPIO11和GPIO12,通过检测GPIO的电平信号来判断按键的状态。
2.3 GPIO中断读取按键状态(操作GPIO点亮LED)
2.3.1 代码位置:
"B2_basic_button"工程 → “button_example.c”
- 按键控制LED灯亮灭的代码
2.3.2 代码:
2.4 GPIO中断扩展实验
2.4.1 实验效果:
改变中断触发模式,观察现象。
3. PWM输出
3.1 PWM API介绍
3.1.1 wifiiot_pwm.h接口简介:
这个 wifiiot_pwm.h 中包含声明PWM接口函数。
3.1.1.1 功能接口:
3.2 查看LED对应的GPIO引脚
LED对应的GPIO引脚是GPIO2通过控制GPIO2输出的的电平信号来实现LED灯的闪烁。
- 高电平时点亮LED灯。
- 低电平时熄灭LED灯。
3.3 输出PWM改变LED亮度
3.3.1 代码位置
"B3_basic_pwm_led"工程 → “pwm_example.c”
- 输入不同占空比的PWM来改变LED的亮度代码。
3.3.2 代码:
3.4 PWM扩展实验
3.4.1 实验代码:
4. ADC采样
4.1 ADC API介绍
4.1.1 wifiiot_adc.h 接口简介:
这个wifiiot_adc.h中包含声明ADC接口函数。
4.1.1.1 函数:
AdcRead (WifiIotAdcChannelIndex channel, unsigned short * data, WifiIotAdcEquModelSel equModel, WifiIotAdcCurBais curBais, unsigned short rstCnt )
① 功能接口:
② 参数:
4.2 查看ADC对应的GPIO引脚
本案例将使用板载用户按键F1来模拟GPIO口电压的变化。GPIO_11对应的是 ADC Channel 5 ,所以需要编写软件去读取ADC Channel 5的电压。
4.3 ADC读取GPIO的电压值
4.3.1 文件位置:
"B4_basic_adc"工程 → “adc_example.c”
- 读取ADC通道5的电压值的代码。
4.3.2 代码:
5. I2C总线
5.1 I2C API介绍
5.1.1 wifiiot_i2c.h接口简介:
"wifiiot_i2c.h"中包含声明I2C接口函数。
5.1.1.1 功能接口:
5.1.2 wifiiot_i2c_ex.h接口简介:
"wifiiot_i2c_ex.h"中包含声明扩展I2C接口函数。
5.1.2.1 功能接口:
5.2 查看 NFC 的 I2C 对应的GPIO引脚
NFC芯片的I2C对应的GPIO引脚是分别是GPIO0和GPIO1,所以需要编写软件使用GPIO_0和GPIO_1产生I2C信号去控制NFC芯片。
5.3 I2C读写NFC芯片
5.3.1 文件位置:
"B5_basic_i2c_nfc"工程 → “i2c_example.c”
- 实现NFC读写
5.3.2 代码:
6. UART读写
6.1 UART API介绍
6.1.1 wifiiot_uart.h接口简介:
wifiiot_uart.h中包含声明UART接口函数。
6.2 查看UART1对应的GPIO引脚
UART1对应的GPIO引脚是分别是GPIO5和GPIO6,将使用GPIO5和GPIO6进行UART数据的收发。
6.3 UART读写数据
6.3.1 文件位置:
"B6_basic_uart"工程 → “uart_example.c”
- UART读写数据
6.3.2 代码:
版权声明:本文为CSDN博主「繁依Fanyi」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_21484461/article/details/122781061
暂无评论