文号
t31253
阅读
4592
回复
5
收藏
3
关于宏晶STC12C5A60S2的PWM
2011/01/13
IP:浙江
如何才能使STC12C5A60S2的PWM输出关闭啊,汇编语言。我的程序在正常工作中,用软件命令就关不了了。[/b]
如  CLR CR[/b]
    MOV CCON,#0[/b]
都没用,PWM照样输出[/b]
16年0个月前IP:未同步
274319
1楼
不懂汇编~难道是负载过重?
引用
评论
16年0个月前IP:未同步
274322
2楼
回 1楼(caoyuan9642) 的帖子
空载的用LED指示的。
我试过,在运行过程中软件改变占宽比可以明显观察到输出LED灯亮暗变化。说明PWM工作正常。
但是我在软件内5秒钟时加入关闭命令,一点效果也没有,还是继续运行,不知道是怎么关的。查看手册,上面就是说用CR来控制的,不知道还需要关哪里。
引用
评论
16年0个月前IP:未同步
274376
3楼
应该是关对应的PWMn模块。比如控制的是PWM0: 用mov CCAP0L,#0FFH不行。得以下语句:
mov pca_pwm0,#3就可以了。
引用
评论
16年0个月前IP:未同步
274630
4楼
回 3楼(hefanghua) 的帖子
好像对的,因为规格书中说:在PWM输出状态下,9位比较器最高位为零即为(0,CL),逻辑关系式为当(0,CL)小于(EPC0L,CCP0L),则输出0,如果(0,CL)大于等于(EPC0L,CCP0L)则输出1,按照你的意思,mov pca_pwm0,#3,就是置EPC0L及EPC0H同时为1,
即(0,CL)小于(EPC0L=1,CCP0L),则固定输出0,有道理,我去试一下。谢谢
引用
评论
16年0个月前IP:未同步
274635
5楼
回 4楼(中电感应) 的帖子
试过了,OK,就是只能固定输出为0,要固定输出为1的话还要一起设置CCP0L,CCP0H,
还有就是这样的话该引脚的PWM实际上还是在工作状态,输出脚不能设置成高电平,因为PWM始终在使他置低电平。
引用
评论
笔记
{{note.content}}
{{n.user.username}}
{{fromNow(n.toc)}} {{n.status === noteStatus.disabled ? "已屏蔽" : ""}} {{n.status === noteStatus.unknown ? "正在审核" : ""}} {{n.status === noteStatus.deleted ? '已删除' : ''}}
  • 编辑
  • 删除
  • {{n.status === 'disabled' ? "解除屏蔽" : "屏蔽" }}
我也是有底线的