找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 910|回复: 2
收起左侧

AVR单片机IO输出方波问题请教

[复制链接]
ID:881204 发表于 2021-9-7 09:35 | 显示全部楼层 |阅读模式
各位大佬好。我采用高、低电平delay的方式 用IO输出方波。但调delay值,不能改变占空比,是什么原因?同样的代码。在51中是可以的。谢谢!
代码如下:
void pwmout()
{
        unsigned char i=0;
        switch(i)
        {
                case 0:
                                                DDRB = 0x0F;
                                                PORTB = 0x01; //输出高
                                                delay(2000);
                                                i=1;
        
                case 1:
                                                DDRB = 0x0F;
                                                PORTB = 0x00; //输出高
                                                delay(1000);
                                                i=0;
                                                
                                       
        }
}

void delay(unsigned int z)
{
        unsigned int x,y;
        for(x=z;x>0;x--)
        for(y=110;y>0;y--);
}
请大佬们,指点一下原因。谢谢!

回复

使用道具 举报

ID:419968 发表于 2021-9-8 19:47 | 显示全部楼层
i=1;后面加break;i=0;后面加break;
回复

使用道具 举报

ID:881204 发表于 2021-9-9 16:11 | 显示全部楼层
adject 发表于 2021-9-8 19:47
i=1;后面加break;i=0;后面加break;

谢谢大佬指点。
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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