当前位置: 首页 > news >正文

招聘求职网站html模板系列推广软文范例

招聘求职网站html模板,系列推广软文范例,网站分类目录源码,判断网站 是否用wordpress 建站WS2812B是一颗集控制与发光于一体的智能LED光源,采用24bit单线串行协议来实现RGB三色的控制,每颗灯珠可以实现256级亮度,16777216种全真色彩显示。看到B站网友发布的关于点亮WS2182视频后,RGB三原色混合后能得到不同的亮度和不同的…

WS2812B是一颗集控制与发光于一体的智能LED光源,采用24bit单线串行协议来实现RGB三色的控制,每颗灯珠可以实现256级亮度,16777216种全真色彩显示。看到B站网友发布的关于点亮WS2182视频后,RGB三原色混合后能得到不同的亮度和不同的颜色,感觉灯珠的确很炫,萌生了买一条来玩玩的想法。2022年从淘宝上买了一条8位的灯条,放了两年,近期一时兴起打开测试,几经测试只能点亮三颗,一度认为是编程上出现了问题,调试了半天没有任何进展最终还是放弃,决定重新淘上一块来测试验证,新品到货点亮后一切正常。下面将使用C51单片机驱动灯珠的过程记录下来。

一、硬件平台:

1、C51测试平台:

目前手上能用的测试C51平台有两块,一块是老平台STC89C52RD时钟为12M,还有一块是STC15W408AS。网上说STC89C52这种12T的单片机不能驱动WS2812,这里纠正一下,不是不能驱动,而是当前时钟为12M时不能驱动,当时钟频率为12M时一个机器周期大约为1us,而驱动灯珠最低需要0.35us,提高时钟频率至33M以上还是能驱动的。另外一块STC15W408AS的单片机属于1T的单片机,在12M的时钟频率下一个机器周期0.08us右左,为了省事自然是选择了后者。

2、WS2812测试灯条:

   从淘宝上购买的灯条外观如下图:

电路的连接方式采用串联方式,如下图所示:

二、硬件连接:

序号

C51平台

灯条

1

+5V

+5V

2

GND

GND

3

P12

IN

三、时序分析:

1、输入码型:

WS2812输入的码型总共三种,分别为0码、1码、Reset码。其中0码和1码通过高低电平时长来区分,每条码大约1.5us左右。而Reset码即复位码,通过拉低一定时长来识别区分,每条码50us左右,其在时序中的用于间隔两个数据帧。

下表为传输时间表:

2、单个灯珠的传输:

单个WS2812灯珠的数据结构如下图,每个灯珠以24bit位+复位码为基础一帧数据,24bit的组成8bit绿+8bit红+8bit蓝组成,由绿红蓝三原色混合成不同的颜色,其中三种单色有28种即256种颜色。

3、8个灯珠的传输:

8个灯珠采用串接方式,即D1的DO接D2的DI,D2的DO接D3的DI,如下图所示

第一个复合帧的结构如下:

D1(24bit)+ D2(24bit)+ D2(24bit)+...+ D8(24bit)+复位码

四、部分源码:


void setWs2812(unsigned char flag,unsigned char G,unsigned char R,unsigned char B)
{unsigned char i,j,temp;unsigned char p[3];if(flag)//当flag的值为1时显示点亮灯珠{p[0]=G;p[1]=R;p[2]=B;}else//当flag的值为0时显示关闭灯珠{p[0]=p[1]=p[2]=0x00;}for(i=0;i<3;i++)//发送24bit{temp=p[i];for(j=0;j<8;j++){if(temp&0x80)//1码{DI=1;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();DI=0;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();		}else//0码{DI=1;_nop_();_nop_();			DI=0;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();			}temp=(temp<<1);}}	}void setWs2812Frame(unsigned char id,unsigned G,unsigned char R,unsigned char B)
{unsigned char i;for(i=0;i<id;i++){setWs2812(1,G,R,B);/****if(i==(id-1)){setWs2812(1,G,R,B);}else{setWs2812(0,G,R,B);}****/}ResetLed();
}
//点亮单颗WS2812
void setWs2812(unsigned char flag,unsigned char G,unsigned char R,unsigned char B)
{unsigned char i,j,temp;unsigned char p[3];if(flag)//当flag的值为1时显示点亮灯珠{p[0]=G;p[1]=R;p[2]=B;}else//当flag的值为0时显示关闭灯珠{p[0]=p[1]=p[2]=0x00;}for(i=0;i<3;i++)//发送24bit{temp=p[i];for(j=0;j<8;j++){if(temp&0x80)//1码{DI=1;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();DI=0;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();		}else//0码{DI=1;_nop_();_nop_();			DI=0;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();			}temp=(temp<<1);}}	
}
//复位码
void ResetLed()
{DI=0;Delay60us();}
//点亮8颗
void setWs2812Frame(unsigned char id,unsigned G,unsigned char R,unsigned char B)
{unsigned char i;for(i=0;i<id;i++){setWs2812(1,G,R,B);		}ResetLed();
}

五、效果展示:

http://www.tj-hxxt.cn/news/126117.html

相关文章:

  • 设计网站如何推广昆明长尾词seo怎么优化
  • 西安二手房热狗seo外包
  • 公司域名让做网站的地推的方法和技巧
  • 织梦制作手机网站尚硅谷培训机构官网
  • 网站建设制作设计seo优化珠海百度竞价是什么意思
  • 有人用dw做网站吗关键词优化课程
  • 在线刷seo单页面网站如何优化
  • 苏州网站建设师引流推广方法
  • 动态网站代做seo去哪里学
  • 美食网站开发目的百度seo优化方法
  • 哪个网站专门做二手电脑手机的企业seo自助建站系统
  • 郑州web网站建设公司比较好的友链平台
  • 外贸b2b网站用什么网站程序做百度快照怎么发布
  • wordpress主题视频站宁波seo推荐推广平台
  • 注册公司网站如何注册网站设计方案
  • 今日中国新闻优化设计官方电子版
  • wordpress主题导致空白杭州网站优化方案
  • 上饶做网站建设免费友情链接交换平台
  • 网站如何做延迟加载百度登陆页面
  • 英迈思网站做不下去可以退款吗哪个平台推广效果最好
  • 电影资源网站开发88个seo网站优化基础知识点
  • 前端设计师主要做什么seo教程自学网
  • 大专学计算机我后悔了优化seo哪家好
  • 新闻网站开发php百度地图轨迹导航
  • 做网站应规避的风险推广营销是什么
  • 企业营销网站建设公司哪家好建站seo推广
  • 日照建站公司淮北seo排名
  • 做网站在阿里云上面买哪个服务seo兼职论坛
  • 买服务器做网站百度网盘官网
  • 江苏优化网站价格百度贴吧的互动社区