找回密码
 立即注册
楼主: 神农鼎

8H/32G系列的PWM输出任意周期和任意占空比的波形

[复制链接]
  • 打卡等级:偶尔看看III
  • 打卡总天数:38
  • 最近打卡:2024-02-22 09:29:24

5

主题

51

回帖

285

积分

中级会员

积分
285
发表于 2023-11-23 11:31:43 | 显示全部楼层
梁*** 发表于 2023-4-11 21:22
不知道你看的是哪里的例程,初始化函数都有操作。PWMXPSCR是PWM时钟分频寄存器。PWMA_ARR=500是指周期为5 ...

梁工 我想问一下 PWM时钟 是系统文件自动配置好了吗?用户只需要配置 PSC ARR,还是用户需要配置系统时钟
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:50
  • 最近打卡:2025-04-30 22:59:03

73

主题

5882

回帖

1万

积分

超级版主

积分
12073
发表于 2023-11-23 12:06:58 | 显示全部楼层
PWM时钟建议用户按需配置。比如下面的例子:
PWMA_PSCR = 11;        // 预分频寄存器, 分频 Fck_cnt = Fck_psc/(PSCR[15:0]+1), 边沿对齐PWM频率 = SYSclk/((PSCR+1)*(AAR+1)), 中央对齐PWM频率 = SYSclk/((PSCR+1)*(AAR+1)*2).
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:38
  • 最近打卡:2024-02-22 09:29:24

5

主题

51

回帖

285

积分

中级会员

积分
285
发表于 2023-11-23 15:28:17 | 显示全部楼层
梁*** 发表于 2023-4-11 21:22
不知道你看的是哪里的例程,初始化函数都有操作。PWMXPSCR是PWM时钟分频寄存器。PWMA_ARR=500是指周期为5 ...

梁工  我想问一下  以下代码我配置  P3.3 P3.4的输出引脚是正常的,配置其他的引脚无法正常输出,是不是我那个寄存器配错另外。例如我配置 P1.2 P1.3引脚  PWM1_ENO = 0x0C;   PWM1_CCMR2 = 0x60;  PWM1_CCER1 = 0x50; 这三个关键的引脚看着手册配的,但目前实在无法找出问题原因。求指点。

void Io_Init(void)
{
                PWM1_PSCRH = 0x00;        //预分频寄存器
                PWM1_PSCRL = 0x04;        //预分频寄存器
               
                PWM1_ARRH = 0x80; //设置周期时间  0x80-336HZ 0x40-674HZ
                PWM1_ARRL = 0x00;
       
                PWM1_PS = 0x00;  //高级 PWM 通道输出脚选择位

                PWM1_ENO = 0;
                PWM1_ENO = 0x0C;

                PWM1_CCER1 = 0x00; //写 CCMRx 前必须先清零 CCxE 关闭通道
                PWM1_CCER2 = 0x00;

                PWM1_CCMR2 = 0x60;         //通道模式配置PWM模式1                        PWM1模式
                PWM1_CCMR1 = 0x30;         //通道模式配置输出比较模式  翻转模式
                PWM1_CCER1 = 0x50;//配置通道输出使能和极性
                PWM1_CCER2 = 0x40;

    PWM1_BKR = 0x80; //使能主输出
    PWM1_IER = 0x04; //使能中断
    PWM1_CR1 |= 0x01; //开始计时,向上计数模式

    EA = 1;     //打开总中断
}

点评

操作初始化之前,要先有下面一句: P_SW2 |= 0x80; //SFR enable  详情 回复 发表于 2023-11-23 15:37
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:50
  • 最近打卡:2025-04-30 22:59:03

73

主题

5882

回帖

1万

积分

超级版主

积分
12073
发表于 2023-11-23 15:37:31 | 显示全部楼层
Hons*** 发表于 2023-11-23 15:28
梁工  我想问一下  以下代码我配置  P3.3 P3.4的输出引脚是正常的,配置其他的引脚无法正常输出,是不是 ...

操作初始化之前,要先有下面一句:
        P_SW2 |= 0x80;                //SFR enable   
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:38
  • 最近打卡:2024-02-22 09:29:24

5

主题

51

回帖

285

积分

中级会员

积分
285
发表于 2023-11-23 15:43:06 | 显示全部楼层
梁*** 发表于 2023-11-23 15:37
操作初始化之前,要先有下面一句:
        P_SW2 |= 0x80;                //SFR enable

我的代码是有的 我只是贴上来的时候删减了。

点评

请直接测试我的例程: STC32G-高级PWM范例程序下载 https://www.stcaimcu.com/forum.php?mod=viewthread&tid=1778 (出处: 国芯论坛-STC全球32位8051爱好者互助交流社区) STC8H系列-高级PWM范例程序下载 https://ww  详情 回复 发表于 2023-11-23 15:46
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:50
  • 最近打卡:2025-04-30 22:59:03

73

主题

5882

回帖

1万

积分

超级版主

积分
12073
发表于 2023-11-23 15:46:47 | 显示全部楼层
Hons*** 发表于 2023-11-23 15:43
我的代码是有的 我只是贴上来的时候删减了。

请直接测试我的例程:

STC32G-高级PWM范例程序下载
https://www.stcaimcu.com/forum.php?mod=viewthread&tid=1778
(出处: 国芯论坛-STC全球32位8051爱好者互助交流社区)

STC8H系列-高级PWM范例程序下载
https://www.stcaimcu.com/forum.php?mod=viewthread&tid=1779
(出处: 国芯论坛-STC全球32位8051爱好者互助交流社区)
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:38
  • 最近打卡:2024-02-22 09:29:24

5

主题

51

回帖

285

积分

中级会员

积分
285
发表于 2023-11-23 16:26:55 | 显示全部楼层
梁*** 发表于 2023-11-23 15:46
请直接测试我的例程:

STC32G-高级PWM范例程序下载

下完打开只有一个.h文件 是我下的不对吗??

点评

还有一个目录的,你仔细找找。不要解压缩在有一堆文件的目录中,那样你很难找到的。  详情 回复 发表于 2023-11-24 00:13
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:372
  • 最近打卡:2025-05-01 10:53:48

12

主题

125

回帖

1685

积分

金牌会员

积分
1685
发表于 2023-11-23 21:07:06 | 显示全部楼层
AI*** 发表于 2023-1-7 13:52
你好,这个例程他没有设置pwm输出频率,所以导致这个例程周期最大设置65536,也就是最大周期是6ms,就没办 ...

PWM有时钟分频设置   时钟分下频率可以实现更低的周期
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:50
  • 最近打卡:2025-04-30 22:59:03

73

主题

5882

回帖

1万

积分

超级版主

积分
12073
发表于 2023-11-24 00:13:40 | 显示全部楼层
Hons*** 发表于 2023-11-23 16:26
下完打开只有一个.h文件 是我下的不对吗??

还有一个目录的,你仔细找找。不要解压缩在有一堆文件的目录中,那样你很难找到的。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:38
  • 最近打卡:2024-02-22 09:29:24

5

主题

51

回帖

285

积分

中级会员

积分
285
发表于 2023-11-24 08:41:26 | 显示全部楼层
梁*** 发表于 2023-11-24 00:13
还有一个目录的,你仔细找找。不要解压缩在有一堆文件的目录中,那样你很难找到的。 ...

好像真没有 我下的是贵司提供的  STC8H系列-高级PWM相关程序.rar 文件  但是打开就只有一个 .h  文件,没有其他的文件夹了

点评

不可能的,这个程序包已经放了超过7个月,无数的有过户下载过,你还是没有认真看,或者直接双击压缩文件,就有出来了。 为此我再次下载,双击压缩文件,即可看到内容: [attachimg]27704[/attachimg]  详情 回复 发表于 2023-11-24 09:24
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-5-2 09:07 , Processed in 0.145136 second(s), 109 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表