一、GPIO与中断
接口介绍
wifiiot_gpio.h接口
其作用是用于初始化GPIO。
接口名 | 功能 |
GpioInit | 初始化GPIO |
GpioDeinit | 取消初始化GPIO |
GpioSetDir | 设置GPIO引脚方向 |
GpioGetDir | 获取GPIO引脚方向 |
GpioSetOutputVal | 设置GPIO引脚输出电平值 |
GpioGetOutputVal | 获取GPIO引脚输出电平值 |
wifiiot_gpio_ex.h接口
其作用是用于设置GPIO拉力和驱动器强度。
接口名 | 功能 |
IoSetPull | 设置GPIO引脚上拉 |
IoGetPull | 获取GPIO引脚上拉 |
IoSetFunc | 设置GPIO引脚功能 |
IoGetFunc | 获取GPIO引脚功能 |
IOSetDriverStrength | 设置GPIO驱动能力 |
IOGetDriverStrength | 获取GPIO驱动能力 |
查看LED对应的GPIO引脚
LED对应的GPIO引脚是GPIO2通过 控制GPIO2输出的的电平信号来实 现LED灯的闪烁。
●高电平时点亮LED灯。
●低电平时熄灭LED灯。
GPIO中断
1.GPIO中断API介绍 wifiiot_gpio.h接口简介:
wifiliot_gpio.h中包含声明GPIO中断相关函数。
接口名 | 功能 |
GpioRegisterIsrFunc | 设置GPIO引脚中断功能 |
GpioUnregisterIsrFunc | 取消GPIO引脚中断功能 |
GpioSetIsrMask | 屏蔽GPIO引脚中断功能 |
GpioSetIsrMode | 设置GPIO引脚中断触发模式 |
2.查看按键对应的GPIO引脚
3.操作GPIO点亮LED
打开“B2_basic_button"工程的button_example.c文件,可在代码中查看实现按键控制LED灯亮灭的代码
二、PWM子系统开发
API介绍
如何改变LED灯亮度
配置文件
一共需要修改两个hcs文件,分别是:device_info.hcs和pwm_config.hcs
1.首先 编辑st\bearpi_hm_micro\liteos_a\hdf_config\device_info\device_info.hcs增加pwm节点,该节点应该是在 platform :: host节点下创建。其中policy=1表示只对内核发布驱动服务,moduleName必须为HDF_PLATFORM_PWM,serviceName必须以HDF_PLATFORM_PWM_开头,后面的数字用来区别不同的pwm外设。
2.第二个配置文件就是自己创建的,在\bearpi_hm_micro\liteos_a\hdf_config\录下创建pwm目录,在目录中创建 pwm_config.hcs,其中PWM的计数频率是1MHZ,在代码中写死,可以修改;physics_register表示TIM的寄存器基地址,根据STM32MP1参考手册可知TIM2的寄存器地址是x40000000寄存器地址范围是0x70。
三、ADC采样开发
接口介绍
硬件设计
软件设计
该函数通过使用IoTAdcRead()函数来读取 ADC_CHANNEL_5 的数值存储在data中, IOT_ADC_EQU_MODEL_8 表示8次平均算法模式,IOT_ADC_CUR_BAIS_DEFAULT 表示默认的自动识别模式,最后通过 data * 1.8 * 4 / 4096.0 计算出实际的电压值。