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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6994|回復: 1
收起左側

P8913三路恒流256級RGB彩燈驅動使用資料(STM32F1為例)

[復制鏈接]
ID:237239 發表于 2018-10-13 09:49 | 顯示全部樓層 |閱讀模式
P9813驅動RGB燈珠
1          P9813簡介及特點:
2          P8913常見接線圖
因為所有的顏色都是由三原色組合而成,這個RGB彩燈就是讓我們給它紅綠藍三種不同比例就可以顯示出各種顏色。R:red (紅色) G:green(綠色)B:blude(藍色)。驅動芯片負責把三種顏色的顏色系數給到燈珠,燈珠就會顯示彩色。三原色國際色卡自行百度。
3          驅動時序圖及工作參數
  • 前32 位“0”為起始幀,在Cin 上升沿時打入,并且時序DIN要先于CIN;
                  ② 標志位為兩個“1”;
                   校驗數據“B7’”與“B6’”為藍色灰度數據的“B7”與“B6”的反碼;
                  ④ 灰度級數據要高位先入,并且是藍綠紅順序。
由此可得,MCU需要發送的數據
32位0起始信號:        0000 0000 0000 0000 0000 0000 0000 0000
第一點32位灰度數據:   11B7’B6’ G7’G6’R7’R6’ xxxx xxxx xxxx xxxx xxxx xxxx
第二點32位灰度數據:   11B7’B6’ G7’G6’R7’R6’ xxxx xxxx xxxx xxxx xxxx xxxx
                                          (紅色碼  綠色碼  藍色碼)

可見需要延時操作,單片機執行匯編代碼需要時間,所以延時不用太久1us就行。
此外,單片機要發送的數據為

4          驅動思路4.1    發送一位數據:
DIN=0/1    //數據線準備數據
CIN=0   
延時
CIN=1
延時       //時鐘線拉高后變低,數據傳輸到芯片內

4.2    發送32位數據
發送32位數據
For(i=0;i<32;i++)
{
發送一位數據:
}
5          實戰代碼5.1    整合3個三原色數據到一個變量。
u32 Color_Data(unsigned int r,unsigned int g,unsigned int b) //寫入三個八位的值,返回一個32位的數值
{                                       
              u32 temp=0;

              temp |=0x03<<30;         //0xc0--> 1100 0000     1010 1010
              temp |= ((~b)&0xc0)<<22;  //取藍色最高兩位取反,得到B7’ B6’
              temp |= ((~g)&0xc0) <<20; //取綠色最高兩位取反,得到G7’G6’
              temp |= ((~r)&0xc0) <<18;   //取綠色最高兩位取反,得到R7’R6’
              temp |= b<<16;
              temp |= g<<8;
              temp |= r<<0;

              return temp;
}


5.2    MCU發送數據到芯片
void RGB_Send_Data(u32 data)
{
              unsigned int i;
              for(i=0;i<32;i++)
              {
//取data的最高位,如果是1就寫1(注意按位操作是寫16進制)
                            if(data&0x80000000)//準備一位數據  
                            {
                                          RGB_DATA_H;
                            }
                            else
                            {
                                          RGB_DATA_L;                   //否則寫0
                            }
                            data<<=1;//每取出一個數據,讓次高位變成最高位,遍歷整個32位的data值
                            RGB_CLK_L;
                            Delay_us(1);
                            RGB_CLK_H;
                            Delay_us(1);
                            /*以上四步操作令CLK產生上升沿*/
              }
}

5.3    最終的控制函數
void RGB_Color_Control(unsigned int r,unsigned int g,unsigned int b)
{
              u32 color_data;
              color_data= Color_Data(r,g,b) ;

              RGB_Send_Data(0);//先發送32位低電平起始信號
              RGB_Send_Data(color_data); //發送第一個32位灰度數據
              RGB_Send_Data(color_data); //發送第二個32位灰度數據

}

5.4    IO口初始化略(推挽輸出)
0.png

全部資料51hei下載地址:
P8913驅動RGB彩燈(stm32F1為例).zip (1.07 MB, 下載次數: 72)


評分

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

查看全部評分

回復

使用道具 舉報

ID:275111 發表于 2019-1-10 17:02 | 顯示全部樓層
正需要,參考學習。
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 午夜免费视频 | 久在线视频播放免费视频 | 欧美a级成人淫片免费看 | 精品国产一区二区国模嫣然 | 人人天天操 | 亚洲一区二区三区在线免费 | 精品蜜桃一区二区三区 | 欧美激情综合色综合啪啪五月 | 91视频亚洲 | 91看片在线观看 | 成人久久18免费网站 | 一区二区三区视频 | 日韩a | 久久久久久高潮国产精品视 | 国产成人av在线播放 | www中文字幕 | 美女视频久久 | 亚洲精品视频观看 | 精品国产欧美一区二区三区成人 | 久久最新精品 | 天堂视频中文在线 | 国产yw851.c免费观看网站 | 成人精品国产免费网站 | 欧美成人自拍视频 | 国产欧美精品一区二区 | 色视频在线播放 | 国产日韩欧美在线播放 | 精品一区二区三区在线观看国产 | 亭亭五月激情 | 欧美亚洲国产一区二区三区 | 亚洲精品91 | 亚洲国产成人精品女人久久久 | 国产伦精品一区二区三区视频金莲 | 久久精品99| 国产精品视频在线播放 | 黄色在线网站 | 国产精品永久 | 日韩在线一区二区三区 | 亚洲成人一区二区在线 | 伊人伊人网 | 亚洲精品久久久久久久久久久久久 |