找回密码
 立即注册
×

00:00:00

您有一张0.1元限时体验卡,马上领取获得VIP尊享特权。

STC8A8K64芯片增强型PWM模块中断向量问题请教

2024-5-1 22:35 来自 huiyong828 发布 @ 综合讨论

本帖最后由 huiyong828 于 2024-5-1 22:36 编辑

硬件实现四路PWM,应用于开关电源全桥电路

42837

现在只是按照要求初始化PWM,能实现PWM1 PWM4 与PWM2 PWM3相位差90度。
42838

代码如下:
  1. /******************** PWM15配置 ********************/
  2. void        PWM15_config(void)
  3. {
  4.         PWM15_InitTypeDef                PWM15_InitStructure;

  5. //        DT_Value = 2;                                //占空比
  6. //        CY_Value = 225;                        //周期
  7.         temp1 = (u16)(CY_Value * DT_Value /100);        //计算出导通时间
  8.         temp2 = (u16)(CY_Value/2 + temp1);                                //低电平输出位置
  9.         temp3 = (u16)(CY_Value/2);                                                                //高电平输出位置

  10.         PWM15_InitStructure.PWM_Enable    = ENABLE;                //PWM使能,  ENABLE, DISABLE
  11.         PWM15_InitStructure.PWM_Period    = CY_Value;                //PWM周期,  0~0x7fff
  12.         PWM15_InitStructure.PWM_Clock_Sel = PWM_CLK_SYS;                //时钟源选择,  PWM_CLK_SYS, PWM_CLK_TM2
  13.         PWM15_InitStructure.PWM_Clock_PS  = 0;                                //系统时钟分频参数(PS+1分频),  0~15
  14.         PWM15_InitStructure.PWM_CInt      = ENABLE;        //计数器归零中断使能,  ENABLE, DISABLE
  15.         PWM15_InitStructure.PWM_Counter   = ENABLE;                //计数器使能,  ENABLE, DISABLE
  16.         PWM15_Init(&PWM15_InitStructure);
  17.        
  18.         PWM15Duty(PWM15_1,temp1,                0);                //PWM_ID, 输出低电平位置, 输出高电平位置
  19.         PWM15Duty(PWM15_2,temp2,temp3
复制代码

免责声明:

本平台旨在开源共享精神,请勿发布敏感信息,任何违法信息我们将移交公安机关;

热门标签 更多

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-15 20:27 , Processed in 0.082745 second(s), 28 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

返回顶部