HCIA-HarmonyOS设备开发认证V2.0-IOT硬件子系统-PWM

本文介绍了PWM的工作原理,包括其占空比概念和操作流程。详细讲述了PWM模块的相关API,如初始化、停止和配置。还探讨了在HDF框架中的独立服务模式驱动开发,涉及驱动实例化、配置和控制器对象的管理。
摘要由CSDN通过智能技术生成

在这里插入图片描述

一、PWM 概述

PWM(Pulse 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控制器对象
  • 驱动调试

坚持就有收获

在这里插入图片描述

  • 20
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
HCIA-HarmonyOS应用开发工程师V2.0模拟考试是为了评估考生对HarmonyOS应用开发的理解和掌握程度的考试。该考试主要包含以下几个方面: 1. 应用开发基础知识:考生需要了解HarmonyOS架构和组件,掌握应用开发的基本概念和原理,包括应用开发流程、应用打包、应用部署等内容。 2. Java基础知识:考生需要熟悉Java编程语言,理解Java类、对象、继承、多态等概念,掌握Java的常用语法和编程技巧。 3. HarmonyOS应用界面设计:考生需要了解应用界面设计的基本原则和方法,熟悉HarmonyOS的布局控件和界面元素,能够实现复杂的界面布局和交互效果。 4. 应用数据管理:考生需要了解应用数据的存储和管理方法,掌握HarmonyOS提供的数据库和文件系统API,能够实现数据的增删改查等操作。 5. 应用开发调试与测试:考生需要具备良好的调试和测试能力,能够利用调试工具分析和解决应用开发中遇到的问题,实现应用的调试和测试。 模拟考试通过对上述内容的考察来评估考生的综合能力和应用开发水平。考生可以通过模拟考试了解自己对HarmonyOS应用开发的熟悉程度,发现自己的不足之处,并在实际考试前有针对性地进行备考和提升。同时,模拟考试还可以让考生熟悉考试的题型和要求,提高应对考试的能力。 综上所述,HCIA-HarmonyOS应用开发工程师V2.0模拟考试是为了评估考生对HarmonyOS应用开发的掌握程度和能力的考试,通过对应用开发基础知识、Java基础知识、应用界面设计、应用数据管理等方面的考察来评估考生的综合能力。考生可以通过模拟考试了解自己的不足,并在备考中有针对性地提升自己的能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

攻下一城

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值