【TI MSPM0】PWM学习

一、样例展示

cpp 复制代码
#include "ti_msp_dl_config.h"

int main(void)
{
    SYSCFG_DL_init();

    DL_TimerG_startCounter(PWM_0_INST);

    while (1) {
        __WFI();
    }
}

TimerG0输出一对边缘对齐的PWM信号

TimerG0会输出一对62.5Hz的边缘对齐的PWM信号在PA12和PA13引脚上,PA12被控制成75%占空比,PA13被配置成50%占空比。

二、配置

1.频率占空比配置

配置PWM频率,用PWM频率乘以周期就是分频的时钟频率

如,2000*62.5就是125000

PWM波形主要在乎两个参数,一个是周期(频率),一个是占空比

  • start timer在代码中开启

2.pwm模式配置

关于边缘对齐和中心对齐,这篇文章PWM中心对齐和边沿对齐的区别和联系进行了详细解释,这里不再过多赘述

3.通道设置

一共可以设置4路PWM信号,但是4路的频率都是一样的,占空比可以单独设置

如,想输出1khz的两路信号,只想让占空比不同,用一个定时器就可以实现;

但是想输出两个不同频率的信号,就需要两个定时器实现

对于500 的计算,因为是向下计数(pwm模式),所以用2000-(2000*75)=500

4.定时器和引脚输出选择

相关推荐
时光找茬3 小时前
【瑞萨AI挑战赛-FPB-RA6E2】+ 从零开始:FPB-RA6E2 开箱测评与 e2 studio 环境配置
c++·单片机·边缘计算
星火开发设计4 小时前
类型别名 typedef:让复杂类型更简洁
开发语言·c++·学习·算法·函数·知识
@good_good_study4 小时前
FreeRTOS内存管理
单片机
Gorgous—l4 小时前
数据结构算法学习:LeetCode热题100-多维动态规划篇(不同路径、最小路径和、最长回文子串、最长公共子序列、编辑距离)
数据结构·学习·算法
Hello_Embed5 小时前
libmodbus 移植 STM32(基础篇)
笔记·stm32·单片机·学习·modbus
●VON6 小时前
Flutter for OpenHarmony 21天训练营 Day03 总结:从学习到输出,迈出原创第一步
学习·flutter·openharmony·布局·技术
香芋Yu6 小时前
【大模型教程——第四部分:大模型应用开发】第1章:提示工程与上下文学习 (Prompt Engineering & ICL)
学习·prompt
LYS_06186 小时前
寒假学习10(HAL库1+模数电10)
学习
runningshark6 小时前
【项目】示波器学习与制作
学习