Nanopi 2 SPI连接Led RGB 8x8 Martix V1.0

图片发自App

资料

GPIO1图

Screenshot - 06182017 - 01:24:02 PM.png

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()

你可能感兴趣的:(Nanopi 2 SPI连接Led RGB 8x8 Martix V1.0)