找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2876|回复: 0
收起左侧

用单片机延时将RGB变为呼吸灯

[复制链接]
ID:545795 发表于 2019-5-23 19:37 | 显示全部楼层 |阅读模式
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit b=P3^2;
sbit G=P3^3;
sbit R=P3^4;
uint q,i;
void delay(uint q)
{
        while(q--);
}

void main()
{
        while(1)
        {
                for(i=10;i<=500;i=i+6)
                {
                R=0;                    //低电平点亮
                delay(i);
                R=1;         //高点平灭
                delay(1000);
                }                        
                for(i=500;i>=10;i=i-6)
                {
                R=0;                    //低电平点亮
                delay(i);
                R=1;         //高点平灭
                delay(1000);
                }        

                for(i=10;i<=500;i=i+6)
                {
                b=0;
                R=0;                    //低电平点亮
                delay(i);
                b=1;
                R=1;        //高点平灭
                delay(1000);
                }                        
                for(i=500;i>=10;i=i-6)
                {
                b=0;
                R=0;                    //低电平点亮
                delay(i);
                b=1;
                R=1;         //高点平灭
                delay(1000);
                }

                for(i=10;i<=500;i=i+6)
                {
                G=0;                    //低电平点亮
                delay(i);
                G=1;         //高点平灭
                delay(1000);
                }                        
                for(i=500;i>=10;i=i-6)
                {
                G=0;                    //低电平点亮
                delay(i);
                G=1;         //高点平灭
                delay(1000);
                }

                for(i=10;i<=500;i=i+6)
                {
                b=0;
                G=0;                    //低电平点亮
                delay(i);
                b=1;  
                G=1;       //高点平灭
                delay(1000);
                }                        
                for(i=500;i>=10;i=i-6)
                {
                b=0;
                G=0;                    //低电平点亮
                delay(i);
                b=1;
                G=1;       //高点平灭
                delay(1000);
                }

                for(i=10;i<=500;i=i+6)
                {
                b=0;                    //低电平点亮
                delay(i);
                b=1;         //高点平灭
                delay(1000);
                }                        
                for(i=500;i>=10;i=i-6)
                {
                b=0;                    //低电平点亮
                delay(i);
                b=1;         //高点平灭
                delay(1000);
                }        
                for(i=10;i<=500;i=i+6)
                {
                b=0;
                R=0;                    //低电平点亮
                delay(i);
                b=1;
                R=1;         //高点平灭
                delay(1000);
                }                        
                for(i=500;i>=10;i=i-6)
                {
                b=0;
                R=0;                    //低电平点亮
                delay(i);
                b=1;
                R=1;         //高点平灭
                delay(1000);
                }
        }               
}

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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