전산쟁이 2012. 8. 21. 15:31

헝그리 개발자 이야기- AVR programmer를 만들어보자.

컴퓨터를 조금이라도 사용할 줄 아는 사람이라면, '부팅'이라는 말이 어떤 의미인지 알 것이다. 
이 부팅의 어원은 "bootstrap"에서 왔으며, 그 의미는 '부츠 뒤의 가죽 손잡이', '혼자의 힘으로...' 의 의미가 있다. 
그러니 부팅이라 함은 스스로의 힘으로 뭔가를 하려는 현상이라고 할 수 있을 것이다.

그럼 개발에서의 부팅은 아마도 개발 장비를 갖추는 일이 될 것이다. 간단하게는 TTL-RS232 변환장치에서부터 수백만원짜리 디버거가 이에 해당할 것이고, 이 외에도 컴파일러, 개발보드 등등 

이번 프로젝트는 개발을 부팅해 보자는 의미에서 AVR 프로그래머를 만들어 보려고 한다. 


아시다시피 AVR은 ISP라고 하는 방법을 통해서 내부에 있는 메모리를 기록할 수 있다. 

ISP는 HW적으로는 SPI와 완전 동일하다. SPI는 MISO, MOSI, SCK의 세가지 신호에 추가적으로 CS(SS)가 있으니, SPI는 결국 4가지 신호를 가진 어떤 것이다. 즉 이 4개의 핀만 자유자재로 읽고쓸 수 있다면 ISP는 다 한 것이나 마찬가지이다. 


SPI 프로토콜 참조: http://mintnlatte.tistory.com/199


그럼 프로젝트 끝.... 이 아니고.. 어떻게 핀을 자유자재로 읽고 쓸 수 있을까? 옆에 있는 AVR 보드로 하면 될 것 같긴한데...... 써 넣을 줄 알아야지.. oTL...