找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3305|回复: 4
收起左侧

请教单片机定时器PWM输出有尖峰应该如何避免?

[复制链接]
ID:734017 发表于 2021-10-1 21:07 | 显示全部楼层 |阅读模式
51hei图片_20211001210550.jpg
频率2K 占空比40% 这是直接测量IO。如果隔了限流电阻再测量就没有。
8芯片8F2K16S2
用定时器1做的    IO口P1^7  准双模式   串联330欧 驱动场效应管 CJ3400  
void Timer1Init(void)                //50??@11.0592MHz
{
        //AUXR &= 0xBF;                //?????12T??
        TMOD &= 0x0F;                //???????
        TL1 = 0xD2;                //???????
        TH1 = 0xFF;                //???????
        //TF1 = 0;                //??TF1??
        TR1 = 1;                //???1????
        ET1 = 1;
}


void TM1_Isr() interrupt 3
        
{
        
        PWMCounter++;
        if(PWMCounter>=10)
        PWMCounter=0;
        if(PWMCounter<=3)
                PWM=1;
        else PWM=0;
        
        
}


回复

使用道具 举报

ID:420836 发表于 2021-10-3 08:54 | 显示全部楼层
它需要输出滤波器来消除尖峰。
回复

使用道具 举报

ID:230742 发表于 2021-10-4 01:20 | 显示全部楼层
手册说用内部的PWM的时候,输出口自动变为强推挽输出,需要接电阻限流。是不是用定时器做PWM的时候也就应该是接限流电阻?我猜的。
回复

使用道具 举报

ID:734017 发表于 2021-10-4 10:29 | 显示全部楼层
啤酒瓶子老大 发表于 2021-10-4 01:20
手册说用内部的PWM的时候,输出口自动变为强推挽输出,需要接电阻限流。是不是用定时器做PWM的时候也就应该 ...

我用定时器做,IO模式改成推挽就没有了尖峰,但频率掉了很多,我那天试了20K ,用推挽输出只有18K,求解
回复

使用道具 举报

ID:734017 发表于 2021-10-4 10:30 | 显示全部楼层
TTQ001 发表于 2021-10-3 08:54
它需要输出滤波器来消除尖峰。

好的,加了电阻就没有了
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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