芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

飞芯科技-芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

芯片复制STC8单片机ws2812b驱动程序

芯片复制单片机源程序如下:

  1. 芯片复制#include <ws2812b.h>

  2. bit BUS_1MS ;
  3. u8 RR=0XFE;
  4. u8 GG=0XFE;
  5. u8 BB=0XFE;
  6. u8 mode;
  7. u8 Loop_Speed=120; //流水灯延时变量
  8. unsigned char bdata LED_DAT; //可位操作的数据发送缓存变量
  9. sbit bit0=LED_DAT^0; //被发送数据的各位定义
  10. sbit bit1=LED_DAT^1;
  11. sbit bit2=LED_DAT^2;
  12. sbit bit3=LED_DAT^3;
  13. sbit bit4=LED_DAT^4;
  14. sbit bit5=LED_DAT^5;
  15. sbit bit6=LED_DAT^6;
  16. sbit bit7=LED_DAT^7;

  17.        

  18. /******************IO口初始化*************************/
  19. /* 功能 : 设置P1 P2 P3 口为双向IO口*/

  20. void IO_init(void)
  21. {
  22.     P1M1 = 0;   P1M0 = 0;   //设置为准双向口
  23.     P3M1 = 0;   P3M0 = 0;   //设置为准双向口
  24.     P5M1 = 0;   P5M0 = 0;   //设置为准双向口
  25. }
  26. /*****************************************************/
  27. void Timer0Init(void)                //1毫秒@24.000MHz
  28. {
  29.         AUXR |= 0x80;                //定时器时钟1T模式
  30.         TMOD &= 0xF0;                //设置定时器模式
  31.         TL0 = 0x40;                //设置定时初始值
  32.         TH0 = 0xA2;                //设置定时初始值
  33.         TF0 = 0;                //清除TF0标志
  34.         TR0 = 1;                //定时器0开始计时
  35.         ET0 = 1;    //打开定时器0
  36.         EA =1 ;     //打开总中断
  37. }

  38. void timer0() interrupt 1 //1毫秒@24.000MHz
  39. {
  40.         BUS_1MS = 1;
  41. }
  42. //*******************发送数据**********************//
  43. //数据格式G7-G0;R7-R0;B7-B0;//

  44. void SendData(u8 dat)
  45. {
  46.         LED_DAT = dat;
  47.         if(bit7==1){CODE_1} else{CODE_0}
  48.         if(bit6==1){CODE_1} else{CODE_0}
  49.         if(bit5==1){CODE_1} else{CODE_0}
  50.         if(bit4==1){CODE_1} else{CODE_0}
  51.         if(bit3==1){CODE_1} else{CODE_0}
  52.         if(bit3==1){CODE_1} else{CODE_0}
  53.         if(bit1==1){CODE_1} else{CODE_0}
  54.         if(bit0==1){CODE_1} else{CODE_0}

  55. }


  56. /******************流水灯函数******************************/
  57. /* 功能 : 流水灯函数 */       

  58. void loop_LED()
  59. {
  60. unsigned char i,j,k;
  61.         if(++k>=Loop_Speed)
  62.         {
  63.                 k=0;
  64.                 if(++j<=60)
  65.                 {               
  66.                         for(i=j;i>0;i--)  //关闭所有灯
  67.                         {
  68.                                 SendData(0x00);
  69.                                 SendData(0x00);
  70.                                 SendData(0x00);
  71.                         }
  72.                                 SendData(RR);
  73.                                 SendData(GG);
  74.                                 SendData(BB);       
  75.                 }       
  76.                 if(j==60) j=0;
  77.         }
  78. }



联系方式

地址:石家庄市新华区民族路77号华强广场D座2009
电话:0311-88816616/87087811
手机:13315190088
传真:0311-67901001
联系人:张工
网址:www.feixindz.com
邮箱:feixindz@163.com
微信:xinpianjiemi
QQ:527263666/568069805

在线客服
热线电话

企业微信