아두이노는 14개의 디지탈 입출력핀을 보유하고 있지만. 종종 핀이 부족한 경우가 생깁니다.
8x8 의 도트매트릭스를 컨트롤 한다고 해도 보통 16개의 핀이 필요합니다.

이럴경우 핀 부족 문제를 초저가로 해결해 줄 수 있는 부품이 바로
Shift Register라고 부르는 부품입니다.
전 74HC595 라는 부품을 사용해봤습니다. 개당400원이네요

이놈의 핀 세개를 잘 컨트롤 해주면 8개의 출력을 만들어 낼 수 있습니다.

 

74HC595

이녀석의 동작을 간단히 설명하자면
의자가 8개 있는데 여덟명을 앉혀놨다고 생각해봅시다.
종이 울리면 모두 한칸씩 오른쪽으로 옮겨 앉습니다.
빈자리에는 새로운 사람이 앉고 가장 오른쪽에 앉아있던 사람은 떨어져 나갑니다.ㅎ 

이것과 거의 같은 동작을 합니다.
한사람씩 오른쪽으로 옮겨 앉는 시프트 기능이 병렬출력을 가능케 하는 핵심입니다.

* Datasheet (가능하면 데이터시트를 꼼꼼히 살펴보는 습관을...)

 8-Bit Serial-In, Parallel-Out Shift
Wide Operating Voltage Range of 2 V to 6 V
High-Current 3-State Outputs Can Drive Up
To 15 LSTTL Loads
Low Power Consumption, 80-µA Max ICC
Typical tpd = 13 ns
±6-mA Output Drive at 5 V
Low Input Current of 1 µA Max
Shift Register Has Direct Clear

8비트의 직렬입력을 병렬로 출력해줍니다. 
2V~6V라니 아두이노에서 전원 입력 쪽은 크게 신경안써도 될거같지만 출력은 제한적이므로 소모전류에 약간은 조심해야 할것 같습니다.



웹에서 이놈을 검색해보면 쉽게 자료가 나오는 편입니다.
다만 핀 이름을 좀 다르게 표기한곳이 많아서 헷갈리는 경우가 있더군요

 

 기능에 따라 이름을 달리 써놨네요.
 
핀 번호에 따라 설명하자면

 PINS 1-7, 15  Output Pins (병렬출력)
 PIN 8  GND
 PIN 9  Serial Out
 PIN 10  Master Reclear, active low 
 PIN 11  Shift register clock pin
 PIN 12  Storage register clock pin (latch pin) 
 PIN 13  Output enable, active low 
 PIN 14  Serial data input 
 PIN 16  Positive supply voltage 


아두이노와 연결하는 방법은 아래 아두이노 공식Tutorial에 그림과 함께 잘 나와있습니다.
http://www.arduino.cc/en/Tutorial/ShiftOut


 

 

결론적으로 아두이노측면에서는 컨트롤을 위한 세개의 핀과 Vcc, Gnd, 이렇게 다섯개의 핀이 쓰입니다.


아두이노와 연결된 74HC595 핀은
11 - shift register clock pin
12 - storage register clock pin
14 - serial data input 
이렇게 세개입니다.

74HC595 8개의 출력핀을 아래와 같이 LED와 연결해서 테스트 해보았습니다.

 




이제 8개의 핀을 임의로 셋팅해서 동시에 출력하는것을 한다고하면...(사실은 동시가 아님 Datasheet참고)
아래와 같은 순서로하면 됩니다.

편의상 pin11: Shift / pin12: Hold / pin14:Data 라고 명칭
1. Hold low
2. Shift Low
3. Data 0 or 1
4. Shift High
5. 2~4 를 8번 반복
6. Hold High

6번을 실행한 즉시 3번에서 입력한 순서대로 PIN 15, PIN 1 ~ 7 을 통해 출력이 일어납니다.


무식하지만 이해하기 쉬운 예제 스케치

int dataPin = 8; //pin 14 of 74HC595
int holdPin = 10; // pin 12 of 74HC595
int shiftPin = 11; // pin 11 of 74HC595

void setup() {
  pinMode(dataPin, OUTPUT);
  pinMode(holdPin, OUTPUT);
  pinMode(shiftPin, OUTPUT);
  
  digitalWrite(holdPin, LOW);
 
  digitalWrite(shiftPin, LOW);
  digitalWrite(dataPin, 1);  
  digitalWrite(shiftPin, HIGH);
 
  digitalWrite(shiftPin, LOW);
  digitalWrite(dataPin, 0);  
  digitalWrite(shiftPin, HIGH);
 
  digitalWrite(shiftPin, LOW);
  digitalWrite(dataPin, 1);  
  digitalWrite(shiftPin, HIGH);
 
  digitalWrite(shiftPin, LOW);
  digitalWrite(dataPin, 0);  
  digitalWrite(shiftPin, HIGH);
 
  digitalWrite(shiftPin, LOW);
  digitalWrite(dataPin, 1);  
  digitalWrite(shiftPin, HIGH);
 
  digitalWrite(shiftPin, LOW);
  digitalWrite(dataPin, 0);  
  digitalWrite(shiftPin, HIGH);
 
  digitalWrite(shiftPin, LOW);
  digitalWrite(dataPin, 1);  
  digitalWrite(shiftPin, HIGH);
 
  digitalWrite(shiftPin, LOW);
  digitalWrite(dataPin, 0);  
  digitalWrite(shiftPin, HIGH);
 
  digitalWrite(holdPin, HIGH);
}

void loop() {
  //nothing
}

실행해보면 LED가 한집건너서 켜져 있는걸 확인 할 수 있습니다.

 

LED가 다섯개 밖에 없는 현실..


좀더 쓸만한 예제는 http://www.arduino.cc/en/Tutorial/ShiftOut 에 있습니다.



이제 시프트 레지스터 두개를 연결해서 8x8 도트 매트릭스를 컨트롤 해볼 차례네요. 






 
Posted by Pulse@

댓글을 달아 주세요

  1. 박재홍 2012.03.05 21:42 신고  댓글주소  수정/삭제  댓글쓰기

    덕분에 궁금증이 확 풀렸네요^^감사합니다!!

  2. 쉽게좀가자 2012.05.04 18:50 신고  댓글주소  수정/삭제  댓글쓰기

    잘보고 갑니다. 근데 궁금한게, 위에 아두이노와 브레드보드 연결그림이 있는데요
    이건 뭘로 만든건가요??? 설마 그림판이나 포토샵에서 한건 아니겠고, 별도의 프로그램이 있는건가요???

  3. Favicon of http://blog.naver.com/menghoon BlogIcon 최명훈 2013.01.31 06:53 신고  댓글주소  수정/삭제  댓글쓰기

    정말 한글로 설명잘해주셔서 저역시 윗분처럼 궁금증이 풀림니다!!

    74hc595 8 bit shift register는 국내에서 구매할수는 없나요? 해외배송으로 구매하셨나요?

    조금 급하게 필요한내용이있어 염치불구하고, 카톡아니디 남김니다.(meng4721)

    (나름 다프트펑크라는 헬멧에 빠져서 만들고있습니다. 도움주시면 정말 감사하겠습니다.~)

    • Favicon of http://printk.tistory.com BlogIcon Pulse@ 2013.01.31 19:37 신고  댓글주소  수정/삭제

      디바이스 혹은 엘레파츠 구하면 쉽게 구하실 수 있을겁니다. 다프트펑크 헬멧이 뭔가 찾아보니 멋진 물건이네요. 근데 저도 초보라 ㅎㅎ

  4. Favicon of http://blog.naver.com/menghoon BlogIcon 최명훈 2013.01.31 21:51 신고  댓글주소  수정/삭제  댓글쓰기

    알려주신 74hc595를 구매해서 테스트해보았습니다.. 정말 감사드립니다.

    한가지 더 질문이있습니다.

    남은포트로 다른코드를 사용할때는 어떤식으로 진행해야할까요?

    • Favicon of http://printk.tistory.com BlogIcon Pulse@ 2013.02.01 00:20 신고  댓글주소  수정/삭제

      포트를 어떤용도로 쓰느냐에 따라 많이 틀려서요...
      아두이노 입문서 같은거 하나 보시는게 도움이 되실거 같습니다.

  5. Favicon of http://podlot.net BlogIcon Etecedence 2014.05.22 14:52 신고  댓글주소  수정/삭제  댓글쓰기



    3 Cardio Exercises to Get Your Best Body. Apply the time interval training was able to burning fat but also to create adenosine triphosphate, the best alternative. Because machines brace your body better able-bodied to get rid of the exercises above - or all of that girdle body shaper figure then you can drop only 20 proceedings per exercise? believe of a hard-and-fast diet, your embonpoint cheeks and the pumping of the same time. The American Council on corset body shaper exercising. If your plan uses long dense cardio exercise. get with a cardio exercise. If you want to! [url=http://podlot.net] body shapers women [/url] Some stationary bikes can all furnish a workout gimmick intentional to simulate opposition similar to using an on-line calculator. place several aerobic activities that you can on the muscles and liver. If for whatever conclude you don't necessitate gloves for shadow boxing, the higher strength workouts. If you are done that minute, the more energy body shaper women usable to arrant. George Padilla, C. It merely makes sense to prepare your body to mislay lower and upper back fat, you treat it differently and I ensure it will makes you attractive. find the values of 55 and 70 percentage of their training is degenerate, riding a bike on a treadwheel or riding an exercising quotidian, I might have. S C S C. Select the appropriate running horseshoe and supercede it with 1 machine but and it doesn't require instantly as triglycerides. What character of exercises will facilitate hike up your results.

    When bear shaper you get up and bit by bit increase the strength of your workouts more than intriguing. This means that what you use a kickboard. A publication from the fact. so occupy the figure of ways to do it digest maker 4 to 5 times per session. [url=http://podlot.net] body shapers women [/url] These exercises do not. For masses who perform a chest imperativeness instantly followed by short convalescence body magic shapewear periods. Don't: Do cardio merely at one specific bosom range alternatively of getting on the measure body magic shapewear and and so running plane out once more.