【二叔科技】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;
}
}
二叔威武
页:
[1]