二叔科技 发表于 2015-1-13 22:04:49

【二叔科技】Arduino 之 8x8 RGB 点阵(color see see)

这个用香蕉驱动了一下,效果不太理想,
感觉是操作系统的问题,换arduino,
又是一个晚上,效果很理想,
颜色很正,没有扫描的感觉,先上效果图,
不会动,就是一张图,

下面就是接线图了,估计手里有的也都有香蕉,
如果确实没有打算自己搞的或许有些麻烦,
Arduino          26PIN
Vcc(3.3V)          1
GND                  6
(CS)D10          24
(MOSI)D11      19
(CLK)D13      23
大概就需要这么五根线,
由于模块上没有电阻,所以没敢试5V,Arduino需要用3.3V,
由于线不够长,只能又发床照了

下边是程序,继续抛砖引玉吧,希望小伙伴们能让图形动起来
纯文本查看 复制代码
?

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include <SPI.h>

unsigned char elscode = {
    0x30, 0x30, 0x30, 0x18, 0x18, 0x18,
    0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0,
    0x01, 0xc0, 0x81, 0x07, 0xe6, 0x81,
    0x0f, 0x42, 0x21, 0x0f, 0x02, 0x71
};
unsigned char cleancode = {0x00, 0x00, 0x00, 0x00};
unsigned char buf = {0x25, 0xFF, 0x7F, 0xF0};
const int slaveSelectPin = 10;

void setup() {
pinMode (slaveSelectPin, OUTPUT);
SPI.begin();
digitalWrite(slaveSelectPin, LOW);
SPI.transfer(cleancode);
SPI.transfer(cleancode);
SPI.transfer(cleancode);
SPI.transfer(cleancode);
digitalWrite(slaveSelectPin, HIGH);
delay(1000);
}

void loop() {
intk=0;
int i;
for(i=1;i<256;i*=2)
{
    digitalWrite(slaveSelectPin, LOW);
    SPI.transfer((byte)i);
    SPI.transfer((byte)(0xff-elscode));
    SPI.transfer((byte)0xff);
    SPI.transfer((byte)0xff);
    digitalWrite(slaveSelectPin, HIGH);
    digitalWrite(slaveSelectPin, LOW);
    SPI.transfer((byte)i);
    SPI.transfer((byte)0xff);
    SPI.transfer((byte)(0xff-elscode));
    SPI.transfer((byte)(0xff-elscode));
    digitalWrite(slaveSelectPin, HIGH);
    k+=3;
}
}







卓泰科技 发表于 2015-1-13 22:07:05

二叔威武
页: [1]
查看完整版本: 【二叔科技】Arduino 之 8x8 RGB 点阵(color see see)