PWM 脉冲宽度调制

2023-02-23 11:30:41 浏览数 (2)

作者:坚果 公众号:"大前端之旅" 华为HDE,InfoQ签约作者,OpenHarmony布道师,擅长HarmonyOS应用开发、跨平台Flutter开发、熟悉服务卡片开发、小程序开发、GO的相关开发。开源项目gin-vue-admin成员之一,先后在CSDN等平台分享了多篇技术文章,I在“战码先锋”活动中作为大队长,累计培养三个小队长,带领100 队员完成Pr的提交合入。

PWM 概述

PWM(Pulse Width Modulation)又叫脉冲宽度调制,它是通过对一系列脉冲的宽度进行调制,等效出所需要的波形(包含形状以及幅值),对模拟信号电平进行数字编码,也就是说通过调节占空比的变化来调节信号、能量等的变化。占空比就是指在一个周期内,信号处于高电平的时间占据整个信号周期的百分比,例如方波的占空比就是 50%。

PWM 模块相关 API

接口名

描述

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 接口调用举例如下:

代码功能:定义了 GPIO_00 号口为 PWM3_OUT 模式且输出比例为 50%的占空比,最后停止。

代码语言:javascript复制
#include "iot_pwm.h"

IoTPwmInit(PWM3_OUT);

IoTPwmStart(PWM3_OUT,50,100);

IoTPwmStop(PWM3_OUT);

0 人点赞