|
/****************************************
使用12c5a60s2
使用24Mhz
***************************************/
*[free]#include "RGB.H"
#include "delay.h"
#include "USART.h"
u8 Display[24];
/*******************************************************
* 函數(shù)名: RGB_LOW
* 描述 :0碼
* 輸入 :無
* 輸出 :無
* 備注 :
*******************************************************/
void RGB_LOW()
{
Din=1;
_nop_();
Din=0;
_nop_();_nop_();_nop_();_nop_();
_nop_();_nop_();_nop_();_nop_();
_nop_();_nop_();_nop_();_nop_();
}
/*******************************************************
* 函數(shù)名: RGB_High
* 描述 :1碼
* 輸入 :無
* 輸出 :無
* 備注 :
*******************************************************/
void RGB_High()
{
Din=1;
_nop_(); _nop_();_nop_();_nop_();
_nop_();_nop_();_nop_();_nop_();
_nop_();_nop_();_nop_();_nop_();
Din=0;
_nop_();_nop_(); _nop_(); _nop_();
}
/*******************************************************
* 函數(shù)名: RGB_RESET
* 描述 :復(fù)位
* 輸入 :無
* 輸出 :無
* 備注 :
*******************************************************/
void RGB_RESET()
{
Din = 0;
delay_us(60);
}
/*******************************************************
* 函數(shù)名:RGB_display
* 描述 :顏色寫入
* 輸入 :r:紅色
g;藍(lán)色
b;綠色
len;燈的個數(shù)
* 輸出 :無
* 備注 :0-255級亮度
*******************************************************/
void RGB_display(u8 g,u8 r ,u8 b,u8 len)// g綠色 r紅色 b藍(lán)色 len 為燈珠個數(shù)
{
u8 i;
RGB_RESET();
for(i=0;i<len;i++)
{
RGB_BYTE(g);
RGB_BYTE(r);
RGB_BYTE(b);
}
RGB_RESET();
}
/*******************************************************
* 函數(shù)名: RGB_BYTE
* 描述 :單色一個字節(jié)寫入
* 輸入 :X 為
r
g
b
* 輸出 :無
* 備注 :
*******************************************************/
void RGB_BYTE(u8 X)
{
u8 i;
for(i=0;i<8;i++)
{
if((X&0X80))
{
RGB_High();
}
else
RGB_LOW();
X=X<<1;
}
}
/*******************************************************
* 函數(shù)名: RGB_BYTE
* 描述 :單色一個字節(jié)寫入
* 輸入 :X 為
r
g
b
* 輸出 :無
* 備注 :
*******************************************************/
[free]#include "STC12C5A60S2.h"
#include "delay.h"
#include "USART.h"
#include "RGB.H"
void main()
{
u8 i;
uart1_init(); //串口1初始化
Din =0;
delay_ms(5);
P0M1 = 0X00;P0M0 = 0X00;
P0=1;
while(1)
{
for(i=1;i<8;i++)
{
RGB_display(0x00,0x00,0x01,i); // 綠色 紅色 藍(lán)色 0-255灰度調(diào)節(jié) i為燈珠個數(shù)
delay_ms(500);
}
}
}
|
-
-
RGB燈帶.rar
2018-8-29 00:12 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
161.89 KB, 下載次數(shù): 122, 下載積分: 黑幣 -5
燈帶總共7顆,可連續(xù)添加很多顆
評分
-
查看全部評分
|