avatar

松果工作室

欢迎光临

  • 首页
  • ESP
  • LVGL
  • freeRTOS
  • 快速笔记
  • 考察日志
  • 个人收藏
  • 我的服务
Home (STM32)PWM DMA
文章

(STM32)PWM DMA

Posted 2024-12-22 Updated 2025-12- 27
By YCP
4~6 min read

CubeMX 配置

  1. Channel2 -- PWM Generation CH2
  2. DMA Setting -- TIM CH2 通用配置(内存到外设)
  3. 参数配置 -- Prescaler(决定占空比调节的精细度),Counter period(和前者一起,决定了周期)

PWM DMA

#include "default_task.h"
#include "main.h"
#include "syscfg.h"
#include "FreeRTOS.h"
#include "task.h"
#include "tim.h"

#define NUM 9
uint32_t send_Buf[9] = { 0};
void default_task(void *pt){
    for (int i = 0; i < NUM; i++){
        send_Buf[i] = 100 * (i + 1);
    }
    send_Buf[NUM - 1] = 0;
    HAL_TIM_PWM_Start_DMA(&htim2,TIM_CHANNEL_2,send_Buf,NUM);
    for(;;){
        HAL_TIM_PWM_Start_DMA(&htim2,TIM_CHANNEL_2,send_Buf,NUM);

        vTaskDelay(10);
    }
}
void HAL_TIM_PWM_PulseFinishedCallback(TIM_HandleTypeDef *htim)
{
    HAL_TIM_PWM_Stop_DMA(&htim2, TIM_CHANNEL_2);
}
STM
License:  CC BY 4.0
Share

Further Reading

OLDER

(LIB)多级菜单

NEWER

(STM32) 串口

Recently Updated

  • (ESP-IDF)LVGL 模拟器
  • (ESP-IDF)LVGL 自定义对象加入编码器组
  • (ESP-IDF)vscode配置文件
  • (Elec)来复再生式晶体管单管收音机
  • (ESP-IDF)ESPNOW

Trending Tags

LVGL WCH Linux Elec ThatProject freeRTOS STM ESP Flutter Others

Contents

©2026 松果工作室. Some rights reserved.

Using the Halo theme Chirpy