资料
GPIO1图
SPI连接Led 8x8 Martix V1.0
先上图
接线方法
Nanopi Pin# | Led 8x8 RGB Martix V1.0 |
---|---|
2,5Vcc | 5v |
6,GND | GND |
19,MOSI | MOSI |
23,CLK | CLK |
24,CS | CE |
然后测试一下
echo -e -n "\x0f" /dev/spidev0.0
echo -e -n "\x00" /dev/spidev0.0 #x4 关掉
好吧,现在开始来真的了
python对spi控制安装一些软件
sudo apt-get install python-dev
easy_install spidev
自己写的程序
“”“
排针向右
to_send=[0xfe,#红,16bit,前八控制四行灯,后八位控制行个灯
0xff,#蓝,16bit,前八控制四行灯,后八位控制行个灯
0xff,#绿,16bit,前八控制四行灯,后八位控制行个灯
0x01]#控制显示第几列
设计意图:
按排针向右为x轴方向,使8x8 led用函数控制为(x,y,color)第x行,第y列,color显示什么灯
”“”
import random
import spidev
import time
ynum=[0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80]
xnum=[0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80]
spi = spidev.SpiDev()
spi.open(0,0)
to_send=[0xfe,#红,16bit,前八控制四个灯,后八位控制四个灯
0xff,#蓝,16bit,前八控制四个灯,后八位控制四个灯
0xff,#绿,16bit,前八控制四个灯,后八位控制四个灯
0x01]#第几行
resp = spi.xfer([0xfe,0xff,0xff,0x01])
def led_show(x,y,color):
r=g=b=0x00
if color.find("r")!=-1:
r=xnum[x]
if color.find("g")!=-1:
g=xnum[x]
if color.find("b")!=-1:
b=xnum[x]
resp = spi.xfer([0xff-r,0xff-b,0xff-g,ynum[y]])
def heart_show():
while True:
led_show(0,0,"b")
led_show(0,1,"b")
led_show(0,2,"b")
led_show(0,3,"b")
led_show(0,4,"b")
led_show(0,5,"b")
led_show(0,6,"b")
led_show(0,7,"b")
def rhello():
x=random.randint(0,7)
y=random.randint(0,7)
color=random.choice(["r","g","b"])
led_show(x,y,color)
while True:
rhello()