[技术相关] SWM190芯片PWM配置

[复制链接]
 楼主| 星辰大海不退缩 发表于 2023-8-24 10:00 | 显示全部楼层 |阅读模式
  1. #include "SWM190.h"


  2. int main(void)
  3. {
  4.         PWM_InitStructure  PWM_initStruct;
  5.        
  6.         SystemInit();
  7.        
  8.         PWM_initStruct.PWMnXN = 0;                                        //只输出PWM0A信号、不输出PWM0AN信号
  9.         PWM_initStruct.clkdiv = PWM_CLKDIV_8;                //F_PWM = 24M/8 = 3M       
  10.         PWM_initStruct.cycle = 10000;                                //3M/10000 = 300Hz,PWMnXN = 1时频率降低到150Hz
  11.         PWM_initStruct.hduty =  2500;                                //2500/10000 = 25%
  12.         PWM_initStruct.deadzone = 00;
  13.         PWM_initStruct.initLevel = 1;
  14.         PWM_initStruct.HEndIE = 0;
  15.         PWM_initStruct.NCycleIE = 0;
  16.         PWM_initStruct.HCycleIE = 0;       
  17.         PWM_Init(PWM0A, &PWM_initStruct);
  18.         PWM_Init(PWM0B, &PWM_initStruct);
  19.         PWM_Init(PWM1A, &PWM_initStruct);
  20.         PWM_Init(PWM1B, &PWM_initStruct);
  21.        
  22.         PORT_Init(PORTB, PIN1, PORTB_PIN1_PWM0A,  0);
  23.         PORT_Init(PORTB, PIN2, PORTB_PIN2_PWM0AN, 0);
  24.         PORT_Init(PORTB, PIN3, PORTB_PIN3_PWM0B,  0);
  25.         PORT_Init(PORTB, PIN4, PORTB_PIN4_PWM0BN, 0);
  26.         PORT_Init(PORTB, PIN5, PORTB_PIN5_PWM1A,  0);
  27.         PORT_Init(PORTB, PIN6, PORTB_PIN6_PWM1AN, 0);
  28.         PORT_Init(PORTD, PIN2, PORTD_PIN2_PWM1B,  0);
  29.         PORT_Init(PORTD, PIN3, PORTD_PIN3_PWM1BN, 0);
  30.        
  31.         PWM_Start(PWM0A);
  32.         PWM_Start(PWM0B);
  33.         PWM_Start(PWM1A);
  34.         PWM_Start(PWM1B);
  35.         PWMG->CHEN |= (1 << PWMG_CHEN_PWM0A_Pos) | (1 << PWMG_CHEN_PWM0B_Pos) | (1 << PWMG_CHEN_PWM1A_Pos) | (1 << PWMG_CHEN_PWM1B_Pos);        //多路同时启动
  36.        
  37.         while(1==1)
  38.         {
  39.        
  40.         }
  41. }


yinxiangh 发表于 2023-8-26 23:55 | 显示全部楼层
为什么不输出PWM0AN信号
tpgf 发表于 2023-9-8 17:31 | 显示全部楼层
能否详细介绍一下pwm的实现的功能呢
renzheshengui 发表于 2023-9-9 15:51 | 显示全部楼层
一共使能了四个pwm通道的输出吗
wakayi 发表于 2023-9-9 16:05 | 显示全部楼层
这段代码还需要结合系统时钟配置来分析啊
wowu 发表于 2023-9-9 16:18 | 显示全部楼层
同时输出的话 通道之间会产生干扰吗
xiaoqizi 发表于 2023-9-9 16:29 | 显示全部楼层
如果想要输出互补的波形 可以使用任意两个不同的pwm通道吗
木木guainv 发表于 2023-9-9 16:36 | 显示全部楼层
yinxiangh 发表于 2023-8-26 23:55
为什么不输出PWM0AN信号

PWM0AN信号是什么作用的呢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

287

主题

2525

帖子

6

粉丝
快速回复 在线客服 返回列表 返回顶部