单片机论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

RGB LED全彩渐变51单片机程序

  [复制链接]
跳转到指定楼层
楼主
jialinx 发表于 2015-9-15 22:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
【RGBLED灯珠全彩渐变】
/////////////////////////////////////////////////
C程序
/////////////////////////////////////////////////
/***********************************************************************/
/***名称:RGBLED灯珠全彩渐变             *******************************/
/***功能:                                                             */
/***********************************************************************/
#include<reg51.h>
typedef unsigned char U8;
typedef unsigned int  U16;
/*---------------------------------------------------------------------*/
/*--   端口定义                 ---------------------------------------*/
/*---------------------------------------------------------------------*/
#define PORT_1 P1

sbit LED_R        =P1^0;
sbit LED_G        =P1^1;
sbit LED_B        =P1^2;

bit   FLAG_ON;

U8 R_DAT,G_DAT;B_DAT;

U8 PWM_HL,REPEAT;
/*---------------------------------------------------------------------*/
/*--     延时程序               ---------------------------------------*/
/*---------------------------------------------------------------------*/
void delay(unsigned int cnt)
{
while(--cnt);
}
/*---------------------------------------------------------------------*/
/*--     渐变程序               ---------------------------------------*/
/*---------------------------------------------------------------------*/
void fade1()
{
        U8 fade_1,fade_2,fade_3,fade_4;
        fade_2=128;
        fade_4=127;
        while(fade_2!=0)
        {
                for(fade_3=128;fade_3>fade_4;fade_3--)
                {
                        LED_R=0;
                        LED_G=1;
                        delay(50);
                }
                fade_3=128;
                fade_4--;
                for(fade_1=0;fade_1<fade_2;fade_1++)
                {
                        LED_R=1;
                        LED_G=0;
                        delay(50);
                }
                fade_1=0;
                fade_2--;
        }

        fade_2=128;
        fade_4=127;
        while(fade_2!=0)
        {
                for(fade_3=128;fade_3>fade_4;fade_3--)
                {
                        LED_G=0;
                        LED_B=1;
                        delay(50);
               
                }
                fade_3=128;
                fade_4--;
               
                for(fade_1=0;fade_1<fade_2;fade_1++)
                {
                        LED_G=1;
                        LED_B=0;
                        delay(50);
                }
                fade_1=0;
                fade_2--;
        }
        fade_2=128;
        fade_4=127;

        while(fade_2!=0)
        {
                for(fade_3=128;fade_3>fade_4;fade_3--)
                {
                        LED_B=0;
                        LED_R=1;
                        delay(50);
                }
                fade_3=128;
                fade_4--;
               
                for(fade_1=0;fade_1<fade_2;fade_1++)
                {
                        LED_B=1;
                        LED_R=0;
                        delay(50);
                }
                fade_1=0;
                fade_2--;                         
        }
}


/*---------------------------------------------------------------------*/
/*--   主程序                   ---------------------------------------*/
/*---------------------------------------------------------------------*/
void main()
{
        PORT_1=0X00;
        PWM_HL=200;
        while(1)
        {
                fade1();
        }
}
/*---------------------------------------------------------------------*/
/*--   程序结束                 ---------------------------------------*/
/*---------------------------------------------------------------------*/



评分

参与人数 1黑币 +5 收起 理由
hym51hdz + 5 很给力!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏3 转播转播 分享分享 分享淘帖 顶 踩
回复

使用道具 举报

沙发
liaihua1997 发表于 2015-9-17 23:39 | 只看该作者
, 还没玩过全彩LED啊,呵呵,看看你的程序
回复

使用道具 举报

板凳
腾飞的龙 发表于 2015-10-4 16:17 | 只看该作者
很好的程序谢谢分享
回复

使用道具 举报

地板
key_1 发表于 2015-11-10 10:54 | 只看该作者
可以传个视屏,下次
回复

使用道具 举报

5#
无效楼层,该帖已经被删除
6#
xinzhihai 发表于 2016-6-5 03:47 | 只看该作者
谢谢!
回复

使用道具 举报

7#
xinzhihai 发表于 2016-6-5 03:48 | 只看该作者
谢谢!同一个按键控制颜色呢?
回复

使用道具 举报

8#
xinzhihai 发表于 2016-6-5 03:51 | 只看该作者
同一个按键控制不断变化颜色:OFF->淡黄色->粉红色->紫色->黄色->白光->OFF不要渐变色
回复

使用道具 举报

9#
枯地之河 发表于 2016-7-12 22:09 | 只看该作者
不错6666666666666666666666666666666666666666666666666666666
回复

使用道具 举报

10#
越快乐越堕落 发表于 2016-7-13 19:21 | 只看该作者
上图楼主
回复

使用道具 举报

11#
286458071 发表于 2016-8-1 07:19 来自手机 | 只看该作者
回去试一下!谢谢!
回复

使用道具 举报

12#
zha 发表于 2017-4-20 11:45 | 只看该作者
楼主这个是渐变的,请问怎么才能调出某一个特定的颜色呢
回复

使用道具 举报

13#
五号守门员 发表于 2017-5-7 17:54 | 只看该作者
楼主,有电路图吗?
回复

使用道具 举报

14#
波波杏仁 发表于 2018-8-23 17:28 | 只看该作者
楼主有没有原理图可以分享一下?谢谢啦
回复

使用道具 举报

15#
junhai 发表于 2018-10-12 22:03 | 只看该作者
谢谢,有机会试下看看!!!
回复

使用道具 举报

16#
无效楼层,该帖已经被删除
17#
无罪之宾 发表于 2018-11-12 14:06 | 只看该作者
回去试一下!谢谢!
回复

使用道具 举报

18#
就你?呸! 发表于 2019-3-16 07:04 | 只看该作者

看程序代码,都能知道电路图是怎么回事,人不能太懒了!学习的态度要端正!这样才能真正学到技术!当别人把电路图一放,代码一放,你下载完往口袋里一装就什么事都没了,你的技术还是一片空白!
回复

使用道具 举报

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

本版积分规则

QQ|手机版|小黑屋|单片机论坛 |51黑电子论坛5群 联系QQ:125739409;技术交流QQ群174280738

Powered by 单片机教程网

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