|
藍(lán)牙控制,格式是(first位置,finally位置,顏色32位數(shù)據(jù)),控制任一一段燈的顏色,還有跑馬燈可以修改,由于我的燈帶數(shù)目是60 ,所以位置是0到60設(shè)置。
單片機(jī)源程序如下:
- #include "sys.h"
- #include "delay.h"
- #include "usart.h"
- #include "led.h"
- #include "timer.h"
-
- int main(void)
- {
- u8 r,g,b,w; //4個(gè)字節(jié) 32位
- u32 lednum[60];
- u32 yanse;
- u8 t;
- u8 len,r1,r2,g1,g2,b1,b2,w1,w2,R,G,B,W;
- u16 led_first,led_end;
- NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設(shè)置系統(tǒng)中斷優(yōu)先級(jí)分組2
- delay_init(168); //初始化延時(shí)函數(shù)
- LED_Init(); //初始化LED端口
- uart_init(9600); //串口初始化波特率為115200
- while(1)
- {
- if(USART_RX_STA!=0) //判斷是否接收到數(shù)據(jù)
- {
-
- len=num;//得到此次接收到的數(shù)據(jù)長度
- printf("\r\n\r\n");//插入換行
-
- if(data_buff[8]>87) r1=data_buff[8]-87;
- else r1=data_buff[8]-48;
-
- if(data_buff[9]>87) r2=data_buff[9]-87;
- else r2=data_buff[9]-48;
-
- if(data_buff[10]>87) g1=data_buff[10]-87;
- else g1=data_buff[10]-48;
- if(data_buff[11]>87) g2=data_buff[11]-87;
- else g2=data_buff[11]-48;
-
- if(data_buff[12]>87) b1=data_buff[12]-87;
- else b1=data_buff[12]-48;
- if(data_buff[13]>87) b2=data_buff[13]-87;
- else b2=data_buff[13]-48;
-
- if(data_buff[14]>87) w1=data_buff[14]-87;
- else w1=data_buff[14]-48;
- if(data_buff[15]>87) w2=data_buff[15]-87;
- else w2=data_buff[15]-48;
-
-
- R=r1<<4|r2;
- G=g1<<4|g2;
- B=b1<<4|b2;
- W=w1<<4|w2;
- yanse=R<<24|G<<16|B<<8|W;
- led_first=100*(data_buff[0]-48)+10*(data_buff[1]-48)+1*(data_buff[2]-48);
- led_end=100*(data_buff[4]-48)+10*(data_buff[5]-48)+1*(data_buff[6]-48);
- printf("%d\r\n",led_first);
- printf("%d\r\n",led_end);
- printf("%d\r\n",r1);
- printf("%d\r\n",r2);
- printf("%d\r\n",g1);
- printf("%d\r\n",g2);
- printf("%d\r\n",b1);
- printf("%d\r\n",b2);
- printf("%d\r\n",w1);
- printf("%d\r\n",w2);
- printf("%d\r\n",R);
- printf("%d\r\n",G);
- printf("%d\r\n",B);
- printf("%d\r\n",W);
- printf("%d\r\n",led_first);
- printf("%d\r\n",led_end);
- printf("yanse=%x",yanse);
- USART_RX_STA=0;
- num=0;
- }
- paoma_led(yanse,led_first-1,led_end-1,1);//跑馬燈,顏色,個(gè)數(shù)
- }
- }
復(fù)制代碼
所有資料51hei提供下載:
sk6812燈帶控制.rar
(453.76 KB, 下載次數(shù): 208)
2017-12-14 23:07 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|
評(píng)分
-
查看全部評(píng)分
|