找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1426|回复: 1
打印 上一主题 下一主题
收起左侧

初学不是很懂,求助 51单片机将D1~D8调配成呼吸灯,采用PWM调制,500HZ 求帮助

[复制链接]
跳转到指定楼层
楼主
ID:483420 发表于 2019-3-3 15:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如题
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:438858 发表于 2019-3-11 11:25 | 只看该作者
#include<reg51.h>
void Delay1(int del)
{
        int i,j;
        for(i=0; i<del; i++)
        for(j=0; j<1827; j++)   
        ;
}
void Delay(unsigned int t)
{
while(--t);
}
//函数声明
unsigned int z,y;
void main (void)//主函数
{
        unsigned int CYCLE=400,PWM_LOW=0;//定义周期并赋值
        while (1)         //主循环
        {

/*--------整排LED灯呼吸---------*/
               
                Delay1(100);                                                                 //加延时,可以看到熄灭的过程(下面程序同理)
                for(PWM_LOW=1;PWM_LOW<CYCLE;PWM_LOW++)           //PWM_LOW表示低
                        {
                                P1=0x00;                                       
                                Delay(PWM_LOW);
                                P1=0xff;
                                Delay(CYCLE-PWM_LOW);
                        }
                P1=0xff;                                                                                
                for(PWM_LOW=CYCLE-1;PWM_LOW>0;PWM_LOW--)         //与逐渐变亮相反的过程
                        {
                                   P1=0x00;                                                        //点亮LED
                                   Delay(PWM_LOW);
                                   P1=0xff;                                                        //熄灭LED
                                  Delay(CYCLE-PWM_LOW);                                //主循环中添加其他需要一直工作的程序,延时长度,600次循环中从599减至1
                        }

}
}
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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