부품
아두이노(arduino)
도트매트릭스(DotMatrix 8x8 2색)
74HC595 x2
74HC138
핀은 24핀으로 위에 12, 아래 12개 입니다.
핀소켓에 납땜으로 배선을 연결했습니다.
전선이 부드러운줄 알았는데 연결하고 나니 엄청 뻣뻣하네요 ㅜㅜ
1번핀 - [LED1-], 2번핀 - [LED1적+], 3번핀 - [LED1녹+], 4번핀 - [LED2-], 2번핀 - [LED2적+], 3번핀 - [LED2녹+]......
위 사진상으로 보면 모델번호를 위로 놓고 볼때 우상터 1~12, 우하 13~24번 입니다.
이 보드의 red에 연결된 흰색 배선 위쪽부터 도트매트릭스의 2,5,8,11,14,17,20,23,
green에 연결된 배선 위쪽부터 도트매트릭스의 3,6,9,12,15 18,21,24 번에 연결합니다.
74HC138 디코더 입니다.
Y0 ~ Y7 은 도트매트릭스의 1,4,7,10,13,16,19,22에 각각 연결합니다.
4, 5번 핀은 GND, 6번핀은 VCC에 연결합니다.
A0~A2는 아두이노의 digital 5~7에 연결합니다,
소스
//Pin connected to ST_CP of 74HC595
int latchPin = 8;
//Pin connected to SH_CP of 74HC595
int clockPin = 12;
////Pin connected to DS of 74HC595
int dataPin = 11;
//holders for infromation you're going to pass to shifting function
byte data;
byte data2;
byte dataArray[10];
int val=0;
void setup() {
//set pins to output because they are addressed in the main loop
pinMode(latchPin, OUTPUT);
pinMode(clockPin, OUTPUT);
pinMode(dataPin, OUTPUT);
// 74HC138N
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
Serial.begin(9600);
dataArray[0] = 0x24; //00100100
dataArray[1] = 0x5a; //01011010
dataArray[2] = 0x81; //10000001
dataArray[3] = 0x81; //10000001
dataArray[4] = 0x81; //10000001
dataArray[5] = 0x42; //01000010
dataArray[6] = 0x24; //00100100
dataArray[7] = 0x18; //00011000
}
void loop() {
for (int j = 0; j < 8; j++) {
//load the light sequence you want from array
data = dataArray[j];
//ground latchPin and hold low for as long as you are transmitting
digitalWrite(latchPin, 0);
shiftOut(dataPin, clockPin, LSBFIRST, 0);
shiftOut(dataPin, clockPin, LSBFIRST, data);
digitalWrite(7, j>>2 & 0x1);
digitalWrite(6, j>>1 & 0x1);
digitalWrite(5, j & 0x1);
digitalWrite(latchPin, 1);
delay(1);
}
}
깔끔하게 하려면 만능기판으로 옮겨야할듯싶네요. 다시만들어야겠네....ㅜㅜ
회로는 2색 모두 지원합니다.
저항 연결하니 빛이 어두워서 저항도 연결하지 않았습니다.
'Arduino/AVR > 2. Arduino프로젝트' 카테고리의 다른 글
processing을 이용한 아두이노 오실로스코프(oscilloscope) (1) | 2009.06.18 |
---|---|
아두이노를 인터넷에 연결해보자 - arduino ethernet shield 호환모듈 WIZ811MJ (1) | 2009.06.08 |
아두이노(arduino)를 이용한 자전거 속도계 (9) | 2009.05.10 |
arduino 전압계 (0) | 2009.05.04 |
arduino 에서 LCD 구동하기 2 (4) | 2009.04.23 |