基於STC89C52RC的七彩RGB3528實驗板

前述:
QQ:3177227373
這個是一個自己隨便做的玩玩的作品。
       
其實這個RGB燈在去年還是前年的時候在實驗室就翻出來的。後來問學姐是她的上一屆學長買的,然後一直在實驗室喫灰。
我其實對這個燈挺有興趣的,想玩玩,然後一直拖到了現在。
       
此RGB燈有四個引腳,相當於是三個LED集成,採用共陽連接,對其餘三個引腳置低電平,便可點亮對應的LED,由於三個燈的顏色是紅藍綠,就是三原色,理論上對三個引腳給予不同的電壓,便可以使它變換出任何顏色。
       
廢話不多說,直接上圖。

單個LED燈實物圖片:

在這裏插入圖片描述

原理圖模型:

在這裏插入圖片描述

實物電路圖:

LED驅動電路

在這裏插入圖片描述

單片機電路

在這裏插入圖片描述
高清電路圖(PDF)百度網盤 點擊藍色字體即可跳轉

3維PCB

在這裏插入圖片描述

演示視頻:

基於RGB3258的全綵LED實驗演示

實物照片:

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

驅動代碼:

#include "reg52.h"
#include "intrins.h"

#define u8 unsigned char
#define u16 unsigned int
	
//--定義使用的IO口--//
sbit SRCLK_1 = P1^2;
sbit RCLK_1  = P1^1;
sbit SER_1   = P1^0;

sbit SRCLK_2 = P1^5;
sbit RCLK_2  = P1^4;
sbit SER_2   = P1^3;

#define Flower_1_time   300
#define Flower_2_time   20
#define Flower_3_time   200
#define Flower_4_time	200
#define Flower_5_time   200
#define Flower_6_time   200

/**********************************************
       紅            綠            藍
      0x01          0x02          0x04    (74HC595_1)

       紅            綠            藍
      0x08          0x10          0x20    (74HC595_1)

       紅            綠            藍
      0x40          0x80          0x01    
      (74HC595_1)   (74HC595_1)   (74HC595_2)

       紅            綠            藍
      0x02          0x04          0x08    (74HC595_2)
  
       紅            綠            藍
      0x10          0x20          0x40    (74HC595_2)
**********************************************/

u8 code LED1[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
u8 code LED2[7]={0x01,0x02,0x04,0x08,0x10,0x20,0x40};
u8 GPIO_Dat;

void delay_ms(u16 ms);
void HC595_1_SendByte(u8 dat);
void HC595_2_SendByte(u8 dat);
void LED_All_OFF();
void LED_Flower_1();
void LED_Flower_2();
void LED_Flower_3();
void LED_Flower_4();
void LED_Flower_5();
void LED_Flower_6();
void LED_Flower_7();

void main()
{
	LED_All_OFF();
	while(1)
	{
		LED_Flower_1();
		LED_Flower_2();
		LED_Flower_3();
		LED_Flower_4();
		LED_Flower_5();
		LED_Flower_6();
	}
}
void LED_Flower_1()
{
	u8 i;
	for(i=0;i<8;i++)
	{
		HC595_1_SendByte(LED1[i]);
		delay_ms(Flower_1_time);
	}
	LED_All_OFF();
	for(i=0;i<7;i++)
	{
		HC595_2_SendByte(LED1[i]);
		delay_ms(Flower_1_time);
	}
	LED_All_OFF();
}
、、、
、、、
、、、
void LED_Flower_6()
{
	u8 i;
	for(i=0;i<4;i++)
	{
		HC595_1_SendByte(0x01);
		delay_ms(Flower_6_time);
		
		HC595_1_SendByte(0x08|0x02);
		delay_ms(Flower_6_time);
		
		HC595_1_SendByte(0x40|0x10|0x04);
		delay_ms(Flower_6_time);
		
		HC595_2_SendByte(0x02);HC595_1_SendByte(0x80|0x20|0x01);
		delay_ms(Flower_6_time);
		
		HC595_1_SendByte(0x08|0x02);HC595_2_SendByte(0x10|0x04|0x01);
		delay_ms(Flower_6_time);
		
		LED_All_OFF();
		
		HC595_2_SendByte(0x10);
		delay_ms(Flower_6_time);
		
		HC595_2_SendByte(0x02|0x20);
		delay_ms(Flower_6_time);
		
		HC595_1_SendByte(0x40);  HC595_2_SendByte(0x04|0x40);
		delay_ms(Flower_6_time);
		
		HC595_1_SendByte(0x08|0x80);  HC595_2_SendByte(0x08|0x10);
		delay_ms(Flower_6_time);
		
		HC595_1_SendByte(0x01|0x10);  HC595_2_SendByte(0x01|0x02|0x20);
		delay_ms(Flower_6_time);
		
		LED_All_OFF();
	}
}

void LED_All_OFF()
{
	HC595_1_SendByte(0x00);
	HC595_2_SendByte(0x00);
}
void delay_ms(u16 ms)
{
	u16 i,j;
	for(j=0;j<ms;j++)
	{
		for(i=0;i<110;i++);
	}
}

/*******************************************************************************
* 函 數 名         : Hc595SendByte(u8 dat)
* 函數功能		   : 向74H595發送一個字節的數據
* 輸    入         : 無
* 輸    出         : 無
*******************************************************************************/
void HC595_1_SendByte(u8 dat)
{
	u8 a;

	SRCLK_1 = 1;
	RCLK_1 = 1;

	for(a=0;a<8;a++)		 //發送8位數
	{
		SER_1 = dat >> 7;		 //從最高位開始發送
		dat <<= 1;

		SRCLK_1 = 0;			 //發送時序
		_nop_();
		_nop_();
		SRCLK_1 = 1;	
	}
	RCLK_1 = 0;
	_nop_();
	_nop_();
	RCLK_1 = 1;
}

void HC595_2_SendByte(u8 dat)
{
	u8 a;

	SRCLK_2 = 1;
	RCLK_2 = 1;

	for(a=0;a<8;a++)		 //發送8位數
	{
		SER_2 = dat >> 7;		 //從最高位開始發送
		dat <<= 1;

		SRCLK_2 = 0;			 //發送時序
		_nop_();
		_nop_();
		SRCLK_2 = 1;	
	}
	RCLK_2 = 0;
	_nop_();
	_nop_();
	RCLK_2 = 1;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章