找回密码
 立即注册
楼主: 13767917844

8g2k64s4 增强型PWM上电初始化正常,程序中初始化无PWM输出 | 已解决

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2025-08-28 09:57:20
已绑定手机

1

主题

7

回帖

31

积分

新手上路

积分
31
发表于 2025-8-26 19:45:47 | 显示全部楼层
现在我使能了S_PW2,后边就不动了,貌似和之前效果一致.函数改成下边了
截图202508261945334219.jpg
回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2025-08-28 09:57:20
已绑定手机

1

主题

7

回帖

31

积分

新手上路

积分
31
发表于 2025-8-26 19:53:23 | 显示全部楼层
我现在P_SW2使能后,后面就一直开着,使能函数改成如下。效果还是和之前一样,上电初始化可以,后面就不行。
截图202508261953227468.jpg
回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:644
  • 最近打卡:2026-03-20 08:58:57
已绑定手机

52

主题

2488

回帖

8796

积分

论坛元老

积分
8796
发表于 2025-8-27 10:15:25 | 显示全部楼层
建议用下面官方例子进行测试,功能验证正常后再进行修改或者移植:
8G-8G库函数例程包-独立程序-33-15位增强型PWM模式呼吸灯程序-STC8G
例程包下载地址:https://www.stcai.com/khs
截图202508271013207290.jpg
截图202508271014449816.jpg
回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2025-08-28 09:57:20
已绑定手机

1

主题

7

回帖

31

积分

新手上路

积分
31
发表于 2025-8-27 15:11:58 | 显示全部楼层
现在的问题不是没有输出,是停止输出后,再开启没有输出。怀疑是不是某些寄存器设置访问有延时需求?或者说其它外设会对PWM功能有干扰?

点评

没有你说的延时问题,寄存器都是马上有效的。 测试我8楼的例子了吗?  详情 回复 发表于 2025-8-27 16:34
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:307
  • 最近打卡:2026-03-19 10:21:34

84

主题

7299

回帖

1万

积分

超级版主

积分
15676
发表于 2025-8-27 16:34:34 | 显示全部楼层
137679*** 发表于 2025-8-27 15:11
现在的问题不是没有输出,是停止输出后,再开启没有输出。怀疑是不是某些寄存器设置访问有延时需求?或者说 ...

没有你说的延时问题,寄存器都是马上有效的。
测试我8楼的例子了吗?
回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2025-08-28 09:57:20
已绑定手机

1

主题

7

回帖

31

积分

新手上路

积分
31
发表于 2025-8-28 09:57:20 | 显示全部楼层
已经确认到问题点了,程序中有个数组,指到了溢出位置,
可能导致地址访问异常,修改掉后可以正常使能失能。

和初始化寄存器配置没有关联,但是怎么导致PWM出问题的不清楚。
感谢大家。
回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2026-01-22 14:09:18
已绑定手机

1

主题

1

回帖

7

积分

新手上路

积分
7
发表于 2026-1-22 14:17:45 | 显示全部楼层
按如下代码PWM只有细线,无法调占空比,是什么情况?
P_SW2 = 0x80;
        PWMCFG23 &= 0xf0;
        PWMSET = 0x04;
PWM2CKS = 0x00;
PWM2C = 1100;
       

PWM20T1= 120;
PWM20T2= 0x00;
PWM20CR= 0x80;
        //PWM20HLD=0;
       
PWM21T1= 240;
PWM21T2= 0x00;
PWM21CR= 0x80;
        //PWM21HLD=0;
       
PWM22T1= 360;
PWM22T2= 0x00;
PWM22CR= 0x80;
        //PWM20HLD=0;
PWM23T1= 0x960;
PWM23T2= 0x00;
PWM23CR= 0x80;
        //PWM20HLD=0;
       
        PWM24T1= 480;
PWM24T2= 0x00;
PWM24CR= 0x80;
//PWM20HLD=0;
PWM25T1= 600;
PWM25T2= 0x00;
PWM25CR= 0x80;
//PWM20HLD=0;
PWM26T1= 720;
PWM26T2= 0x00;
PWM26CR= 0x80;
//PWM20HLD=0;
PWM27T1= 840;
PWM27T2= 0x0;
PWM27CR= 0x80;
//PWM20HLD=0;
PWMCFG23 = 0x01;
P_SW2 = 0x00;
回复

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2026-3-22 06:40 , Processed in 0.113781 second(s), 79 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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