STC15W204是8PIN的宽电压版,驱动WS2812的时候单片机可以用5V电压,也可以用3.3V的电源。
RGB灯条的电源应该是4-7V之间,目前驱动的是8颗粒的灯条,原则上应该可以驱动更多颗粒的,不过手头没有那么长的,没试过,有兴趣的朋友可以自己试验,看看最多可以驱动多少个。按理论来讲驱动8颗和80颗应该是一样的。
硬件环境:
- 单片机:STC15W204S(SOP8)
- 灯带:WS2812(8颗粒)
- 非必需品:开关,USB转接板,面包板,跳线若干。
- 使用片内R/C振荡器,连外部晶振都不需要,工作频率为11.0592MHz
- STC15W204S可以用其他其他STC 1T的MCU。
代码也非常简单,只用到1个IO口,不需要进行任何初始化。
如果使用其他工作频率时,请相应调整DELAY_LONG和DELAY_SHORT的宏定义,适当增减_nop()_的个数,直到能正确驱动灯条为止。
先通过视频看看实际运行的效果:
以下是开源的代码,全部工程只有一个.c文件,新建工程后将该文件添加到工程中即可。
编译后也就在1.3K左右,剩余的ROM空间还可以扩展做一些动态效果什么的。
【转载自数码之家】
阅读全文