4774|3

1万

帖子

25

TA的资源

版主

楼主
 

ESP8266/ESP32 驱动 16x16 点阵ws2812屏 [复制链接]

 
效果图:


驱动
  1. """
  2.     ESP8266/ESP32 neopixel 16x16 display drive

  3.     Author: shaoziyang
  4.     Date:   2018.2

  5.     [url]http://www.micropython.org.cn[/url]

  6. """
  7. from machine import Pin
  8. import neopixel

  9. class neo16x16:
  10.     def __init__(self, pin):
  11.         self.np = neopixel.NeoPixel(pin, 256)
  12.         self.color = (0,0,8)
  13.    
  14.     def clear(self):
  15.         self.np.fill((0,0,0))
  16.         self.np.write()

  17.     def set(self, n, color=''):
  18.         if dat!='':
  19.             self.np[n] = color
  20.         else:
  21.             self.np[n] = self.color
  22.         self.np.write()

  23.     def setcolor(self, color):
  24.         self.color = color

  25.     def show(self, dat, offset=0, clear = True, color=''):
  26.         if color != '':
  27.             self.color = color
  28.         if clear:
  29.             self.np.fill((0,0,0))
  30.         for x in range(16):
  31.             for y in range(16):
  32.                 if (x+offset)>=len(dat):
  33.                     self.np[x*16+y]=(0,0,0)
  34.                 else:
  35.                     if (1<<y)&dat[x+offset]:
  36.                         if offset%2==0:
  37.                             self.np[x*16 + y] = self.color
  38.                         else:
  39.                             self.np[x*16 +15 - y] = self.color

  40.         self.np.write()

复制代码


测试程序
  1. '''
  2.     ESP8266/ESP32 neopixel 16x16 demo

  3.     Author: shaoziyang
  4.     Date:   2018.2

  5.     [url]http://www.micropython.org.cn[/url]

  6. '''
  7. from machine import Pin
  8. import time

  9. from neo16x16 import neo16x16

  10. np = neo16x16(Pin(2))

  11. npdat=[
  12. 0x2008,0x1FFC,0x3FF8,0x1084,0x0100,0x1084,0x3FF8,0x1FFC,
  13. 0x2008,0x0000,0x1F00,0x01FC,0x2480,0x0124,0x2480,0x01EC,
  14. 0x1700,0x0000,0x0000,0x0804,0x2010,0x1FFC,0x3FF8,0x0004,
  15. 0x2000,0x0000,0x0000,0x0000,0x2010,0x0804,0x3FF8,0x1FFC,
  16. 0x2000,0x0004,0x0000,0x0000,0x0000,0x00F8,0x3F80,0x0104,
  17. 0x2080,0x0104,0x3F80,0x00F8,0x0000,0x0080,0x0180,0x0700,
  18. 0xFFF8,0xFFFF,0x1047,0x0638,0x0F38,0xF8C2,0xC00F,0x13FF,
  19. 0x7FC8,0x1080,0x0728,0x1C78,0x1818,0x0000,0x4010,0x0846,
  20. 0x37F0,0xFFB8,0x1E1F,0x0FEE,0x61F0,0x0100,0x4082,0x4103,
  21. 0xFFE2,0x4FFE,0x009A,0x7100,0x0086,0x0100,]   

  22. n = 0
  23. while 1:
  24.     np.show(npdat, n)
  25.     n = (n + 1)%70
  26.     time.sleep_ms(200)
复制代码


完整程序:
https://github.com/shaoziyang/mp ... /neopixel/neo_16x16

此内容由EEWORLD论坛网友dcexpert原创,如需转载或用于商业用途需征得作者同意并注明出处



最新回复

不错  详情 回复 发表于 2018-2-15 21:42
点赞 关注(1)
 
 

回复
举报

294

帖子

0

TA的资源

一粒金砂(高级)

沙发
 
好厉害 支持一下
 
 
 

回复

3416

帖子

0

TA的资源

纯净的硅(高级)

板凳
 
 
 
 

回复

1903

帖子

0

TA的资源

版主

4
 
不错
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表