网站服务器繁忙是怎么回事,福州住房建设厅网站,如何加入小说网站做打字员,西安稳定的seo目录 一、PWM 概述二、PWM 模块相关API三、接口调用实例四、PWM HDF驱动开发4.1、开发步骤(待续...) 坚持就有收获 一、PWM 概述
PWM#xff08;Pulse Width Modulation#xff09;又叫脉冲宽度调制#xff0c;它是通过对一系列脉冲的宽度进行调制#xff0c;等效出所需要… 目录 一、PWM 概述二、PWM 模块相关API三、接口调用实例四、PWM HDF驱动开发4.1、开发步骤(待续...) 坚持就有收获 一、PWM 概述
PWMPulse Width Modulation又叫脉冲宽度调制它是通过对一系列脉冲的宽度进行调制等效出所需要的波形包含形状以及幅值对模拟信号电平进行数字编码也就是说通过调节占空比的变化来调节信号、能量等的变化。占空比就是指在一个周期内信号处于高电平的时间占据整个信号周期的百分比例如方波的占空比就是 50%。 计算公式如下 占空比 高电平时间 周期时间 ∗ 100 % 占空比 \frac{高电平时间}{周期时间} * 100\% 占空比周期时间高电平时间∗100%
PWM 操作流程如下 二、PWM 模块相关API
头文件路径base/iothardware/peripheral/interfaces/inner_api/iot_pwm.h
接口函数描述unsigned int IoTPwmInit(unsigned int port)PWM初始化unsigned int IoTPwmDeinit(unsigned int port)PWM去初始化unsigned int IoTPwmStart(unsigned int port, unsigned short duty, unsigned int freq)按配置的参数输出PWM信号unsigned int IoTPwmStop(unsigned int port)停止PWM信号输出
三、接口调用实例
//代码功能定义了 GPIO_00 号口为 PWM3_OUT 模式且输出比例为 50%的占空比最后停止。#include iot_pwm.h
IoTPwmInit(PWM3_OUT);
IoTPwmStart(PWM3_OUT,50,100);
IoTPwmStop(PWM3_OUT);四、PWM HDF驱动开发
在HDF框架中PWM接口适配模式采用独立服务模式如图1所示。在这种模式下每一个设备对象会独立发布一个设备服务来处理外部访问设备管理器收到API的访问请求之后通过提取该请求的参数达到调用实际设备对象的相应内部方法的目的。独立服务模式可以直接借助HDF设备管理器的服务管理能力但需要为每个设备单独配置设备节点增加内存占用。
独立服务模式下核心层不会统一发布一个服务供上层使用因此这种模式下驱动要为每个控制器发布一个服务具体表现为
驱动适配者需要实现HdfDriverEntry的Bind钩子函数以绑定服务。
device_info.hcs文件中deviceNode的policy字段为1或2不能为0。
PWM模块各分层作用
接口层提供打开PWM设备、设置PWM设备周期、设置PWM设备占空时间、设置PWM设备极性、设置PWM设备参数、获取PWM设备参数、使能PWM设备、禁止PWM设备、关闭PWM设备的接口。
核心层主要提供PWM控制器的添加、移除以及管理的能力通过钩子函数与适配层交互。
适配层主要是将钩子函数的功能实例化实现具体的功能。
图 1 PWM独立服务模式结构图 4.1、开发步骤(待续…)
PWM模块适配包含以下四个部分。
驱实例化驱动入口配置属性文件实例化PWM控制器对象驱动调试
坚持就有收获