久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 13569|回復: 26
打印 上一主題 下一主題
收起左側

sk6812藍牙燈帶控制stm32源碼

  [復制鏈接]
跳轉到指定樓層
樓主
藍牙控制,格式是(first位置,finally位置,顏色32位數據),控制任一一段燈的顏色,還有跑馬燈可以修改,由于我的燈帶數目是60 ,所以位置是0到60設置。

單片機源程序如下:
  1. #include "sys.h"
  2. #include "delay.h"
  3. #include "usart.h"
  4. #include "led.h"
  5. #include "timer.h"
  6.   
  7. int main(void)
  8. {
  9.         u8 r,g,b,w;  //4個字節  32位
  10.   u32 lednum[60];
  11.         u32 yanse;
  12.         u8 t;
  13.         u8 len,r1,r2,g1,g2,b1,b2,w1,w2,R,G,B,W;       
  14.         u16 led_first,led_end;
  15.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設置系統中斷優先級分組2
  16.         delay_init(168);  //初始化延時函數
  17.         LED_Init();                                //初始化LED端口
  18.         uart_init(9600);        //串口初始化波特率為115200   
  19.         while(1)
  20.         {
  21.                                 if(USART_RX_STA!=0)  //判斷是否接收到數據
  22.                 {                                          
  23.                
  24.                         len=num;//得到此次接收到的數據長度
  25.                         printf("\r\n\r\n");//插入換行
  26.                         
  27.                         if(data_buff[8]>87)  r1=data_buff[8]-87;       
  28.                         else                 r1=data_buff[8]-48;         
  29.                        
  30.                         if(data_buff[9]>87)  r2=data_buff[9]-87;  
  31.       else                 r2=data_buff[9]-48;
  32.                
  33.                         if(data_buff[10]>87)  g1=data_buff[10]-87;       
  34.                         else                 g1=data_buff[10]-48;         
  35.                         if(data_buff[11]>87)  g2=data_buff[11]-87;  
  36.       else                 g2=data_buff[11]-48;
  37.                        
  38.                         if(data_buff[12]>87)  b1=data_buff[12]-87;       
  39.                         else                 b1=data_buff[12]-48;         
  40.                         if(data_buff[13]>87)  b2=data_buff[13]-87;  
  41.       else                 b2=data_buff[13]-48;
  42.                        
  43.                         if(data_buff[14]>87)  w1=data_buff[14]-87;       
  44.                         else                 w1=data_buff[14]-48;         
  45.                         if(data_buff[15]>87)  w2=data_buff[15]-87;  
  46.       else                 w2=data_buff[15]-48;
  47.                        
  48.                        
  49.                   R=r1<<4|r2;
  50.         G=g1<<4|g2;                       
  51.                              B=b1<<4|b2;
  52.                               W=w1<<4|w2;
  53.                         yanse=R<<24|G<<16|B<<8|W;
  54.                         led_first=100*(data_buff[0]-48)+10*(data_buff[1]-48)+1*(data_buff[2]-48);
  55.                   led_end=100*(data_buff[4]-48)+10*(data_buff[5]-48)+1*(data_buff[6]-48);
  56.                         printf("%d\r\n",led_first);
  57.                         printf("%d\r\n",led_end);       
  58.                         printf("%d\r\n",r1);
  59.                         printf("%d\r\n",r2);
  60.                         printf("%d\r\n",g1);
  61.                         printf("%d\r\n",g2);
  62.                         printf("%d\r\n",b1);
  63.                         printf("%d\r\n",b2);
  64.                         printf("%d\r\n",w1);
  65.                         printf("%d\r\n",w2);
  66.                         printf("%d\r\n",R);
  67.                   printf("%d\r\n",G);
  68.                         printf("%d\r\n",B);
  69.                         printf("%d\r\n",W);
  70.                         printf("%d\r\n",led_first);
  71.                         printf("%d\r\n",led_end);
  72.                         printf("yanse=%x",yanse);
  73.                         USART_RX_STA=0;
  74.                         num=0;
  75.                 }
  76. paoma_led(yanse,led_first-1,led_end-1,1);//跑馬燈,顏色,個數
  77.         }
  78. }
復制代碼

所有資料51hei提供下載:
sk6812燈帶控制.rar (453.76 KB, 下載次數: 208)


評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏5 分享淘帖 頂2 踩
回復

使用道具 舉報

沙發
ID:208659 發表于 2017-12-20 09:14 | 只看該作者
挺好的
回復

使用道具 舉報

板凳
ID:270573 發表于 2018-1-3 09:23 | 只看該作者
不錯呢
回復

使用道具 舉報

地板
ID:272069 發表于 2018-1-5 18:34 | 只看該作者
謝謝分享
回復

使用道具 舉報

5#
ID:272069 發表于 2018-1-5 18:35 | 只看該作者
謝謝分享
回復

使用道具 舉報

6#
ID:221675 發表于 2018-1-6 20:49 | 只看該作者
謝謝分享
回復

使用道具 舉報

7#
ID:281601 發表于 2018-2-1 23:42 來自手機 | 只看該作者
謝謝分享
回復

使用道具 舉報

8#
ID:201690 發表于 2018-2-12 22:01 | 只看該作者
謝謝分享
回復

使用道具 舉報

9#
ID:283943 發表于 2018-2-13 13:18 | 只看該作者
謝謝分享
回復

使用道具 舉報

10#
ID:10181 發表于 2018-2-13 23:43 | 只看該作者

謝謝分享
回復

使用道具 舉報

11#
ID:224126 發表于 2018-4-1 23:40 | 只看該作者
你好,請教個問題。我準備用STM32F429 來控制sk6812,但嘗試了很久都點不亮燈,看到你的程序給了我啟發,有幾點不明白,希望指點下。
1. sk6812規格書 信號1 信號0 如下,但你程序延時好像沒有按規格書來

2.__nop()延時問題
f429 主頻180MHZ 我在調試狀態查看一個nop 耗時100ns(大的不可理解),這是為什么呢?
從你程序來看,168MHZ 一個nop 是14ns左右
  1. void delay_ns(u16 ns)  //ÑÓʱ;ns*14ns
  2. {       
  3. u16 num=ns;       
  4. for(num;num>0;num--)
  5.         {
  6. __NOP();   

  7.         }
  8.                
  9. }
復制代碼
3. 我調試發現GPIO 反轉都要200ns 時間,這讓我已經無法控制stm32產生精確的時序了
  1. PAout_GPIO_PORT->BSRRH = PAout_GPIO_PIN
復制代碼

希望不吝賜教,這個問題困擾我好幾天了。謝謝

回復

使用道具 舉報

12#
ID:224126 發表于 2018-4-1 23:43 | 只看該作者
你好,請教個問題。我準備用STM32F429 來控制sk6812,但嘗試了很久都點不亮燈,看到你的程序給了我啟發,有幾點不明白,希望指點下。
1. sk6812規格書 信號1 信號0 如下,但你程序延時好像沒有按規格書來

2.__nop()延時問題
f429 主頻180MHZ 我在調試狀態查看一個nop 耗時100ns(大的不可理解),這是為什么呢?
從你程序來看,168MHZ 一個nop 是14ns左右

    void delay_ns(u16 ns) //ÑÓʱ;ns*14ns
    {
    u16 num=ns;
    for(num;num>0;num--)
    {
    __NOP();

    }

    }

3. 我調試發現GPIO 反轉都要200ns 時間,這讓我已經無法控制stm32產生精確的時序了

    PAout_GPIO_PORT->BSRRH = PAout_GPIO_PIN


希望不吝賜教,這個問題困擾我好幾天了。謝謝
回復

使用道具 舉報

13#
ID:254328 發表于 2018-6-7 09:53 | 只看該作者
yinlianger 發表于 2018-4-1 23:40
你好,請教個問題。我準備用STM32F429 來控制sk6812,但嘗試了很久都點不亮燈,看到你的程序給了我啟發,有 ...

好久沒看論壇 不好意思 可以加1098477243 一起探討
回復

使用道具 舉報

14#
ID:254328 發表于 2018-6-7 09:54 | 只看該作者
yinlianger 發表于 2018-4-1 23:43
你好,請教個問題。我準備用STM32F429 來控制sk6812,但嘗試了很久都點不亮燈,看到你的程序給了我啟發,有 ...

當時我是用示波器測得時間
回復

使用道具 舉報

15#
ID:209947 發表于 2018-6-20 15:45 | 只看該作者
給力啊大佬,這網站往往能下載到有用的資料!
回復

使用道具 舉報

16#
ID:15104 發表于 2018-11-14 19:15 | 只看該作者
謝謝分享
回復

使用道具 舉報

17#
ID:96552 發表于 2018-12-28 08:52 | 只看該作者
謝謝分享!請問手機APP可以控制嗎?用哪個APP合適
回復

使用道具 舉報

18#
ID:254328 發表于 2019-1-14 03:21 | 只看該作者
hilam 發表于 2018-12-28 08:52
謝謝分享!請問手機APP可以控制嗎?用哪個APP合適

手機app藍牙可以控制
回復

使用道具 舉報

19#
ID:18591 發表于 2019-2-4 15:06 | 只看該作者
感謝分享 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
回復

使用道具 舉報

20#
ID:413119 發表于 2019-6-16 21:08 | 只看該作者
感謝大佬
回復

使用道具 舉報

21#
ID:413119 發表于 2019-6-16 21:23 | 只看該作者
這里的RGB值具體是如何計算的呢
回復

使用道具 舉報

22#
ID:407899 發表于 2019-7-16 23:42 | 只看該作者
正在調試這個,感謝
回復

使用道具 舉報

23#
ID:603929 發表于 2019-9-24 07:51 | 只看該作者
感謝分享
回復

使用道具 舉報

24#
ID:296060 發表于 2019-10-11 14:54 | 只看該作者
感謝分享學習下。。。
回復

使用道具 舉報

25#
ID:151626 發表于 2019-10-16 16:57 | 只看該作者
謝謝分享
回復

使用道具 舉報

26#
ID:151626 發表于 2019-10-16 17:38 | 只看該作者
謝謝分享
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩和的一区二区 | 美女一区二区在线观看 | 日韩在线观看一区 | 国产96色在线 | 色综合久久久久 | 一级黄色大片 | 欧美一区二区在线 | 成年人免费看的视频 | 97精品超碰一区二区三区 | 免费v片 | 亚洲精品免费在线观看 | 欧美操操操 | 国产999精品久久久久久 | 日韩电影免费在线观看中文字幕 | 国产91中文 | 日韩精品极品视频在线观看免费 | 日本午夜网 | 欧美视频一区二区三区 | 一区二区三区不卡视频 | 超碰在线人人干 | 中文在线一区 | 男女网站免费 | 国产一级视频 | 日韩高清黄色 | 激情一区二区三区 | 亚洲人在线观看视频 | 精品综合久久 | 欧美jizzhd精品欧美巨大免费 | 97精品久久 | 国产黑丝av | 亚洲福利一区二区 | 欧美日韩在线精品 | 成人在线免费 | 日韩成人免费av | 国产成人艳妇aa视频在线 | 99久久视频 | 亚洲精品一区二区网址 | 久草久| 久久国产精品偷 | 国产一区二区三区免费 | 国产一区二 |