打印
[其它应用]

没有任何脉冲出来

[复制链接]
400|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
guoyt|  楼主 | 2017-9-22 22:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用166A中,PWM0通道可以正常输出PWM波,但是PWM01,也就是那个互补通道死活调不出,没有任何脉冲出来
沙发
hanwe| | 2017-9-22 22:27 | 只看该作者

初始化程序看看

使用特权

评论回复
板凳
guoyt|  楼主 | 2017-9-22 22:28 | 只看该作者
IO端口初始化:
        P0                = 0xfd;
        P0CR        = 0x2f;
        P0PCR        = 0xc0;
PWM初始化:
PWMLO = 0x55;
        PWMEN = 0x09;                        // PWM0使能
        PWMEN1 = 0x00;                        
               
        PWM0C = 0x00;                        
        PWM0PL = 0xff;                        // 周期4096
        PWM0PH = 0x0f;
        PWM0DL = 0xff;                        // 默认1/2占空比(临时设置,实际后期调整)
        PWM0DH = 0x07;
        PWM0DT = 0x00;

使用特权

评论回复
地板
yufe| | 2017-9-22 22:31 | 只看该作者
中颖这个芯片的特殊寄存器较多

使用特权

评论回复
5
llia| | 2017-9-22 22:33 | 只看该作者

是的,引入了BANK这个概念,虽然大部分与常规52兼容,但是仍有很多特殊寄存器被放在一个特殊的BANK1

使用特权

评论回复
6
yufe| | 2017-9-22 22:34 | 只看该作者

是的,访问操作这些寄存器,必须先切换INSCON寄存器里的标志位

使用特权

评论回复
7
guoyt|  楼主 | 2017-9-22 22:36 | 只看该作者


我没弄这个,直接操作了T5,结果TH5与PWMEN
在地址上重叠

使用特权

评论回复
8
wangpe| | 2017-9-22 22:38 | 只看该作者

是啊,等于是修改了PWMEN寄存器,而实际数字正好是0xb1,PWM01再也出不来了。

使用特权

评论回复
9
langgq| | 2017-9-22 22:40 | 只看该作者
分页是麻烦事,不细看手册,太容易中招了

使用特权

评论回复
10
guoyt|  楼主 | 2017-9-22 22:41 | 只看该作者
好的,我明天去单位试一下,多谢各位大侠了哈,结贴了先

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1018

主题

9067

帖子

3

粉丝