2008. 10. 29. 11:40

ATMEL AVR ATmega168V - 시작

주말 사이에 ATMEL 사의 ATmeag168V를 사용하였습니다.

이전에 AT90USB1287을 사용해서 그런대로 AVR이 친숙하기 때문에 사용했건만, JTAG이 없다 보니, 조금 불편하군요. 뭐 어쨌든 package도 작고, 가격도 싸니 (다른 솔루션에 비해서는 따져봐야겠지만요) 그런대로 쓸만합니다.

AVR로 맨 먼저 할 일은 ISP 혹은 JTAG으로 연결하여 칩의 정보(signature)를 읽어 보는 것입니다.

그런데, 억! 읽히지가 않습니다.

직접 손대보는 것은 처음이니, 음 우여 곡절 끝에 읽었습니다.

datasheet에 있지만 다시 설명하면,

1. 우선 AVR 칩은 무조건 Internal RC osc로 CPU_CLK를 사용하도록 되어 있습니다.

2. RESET 라인은 4.7k pull-up, 10uF C pull-down으로 설정되어 있으며,

3. XTAL1 및 XTAL2 단자는 모두 Open 상태로 놓으면,

이제야 AVR ISP로 chip signature가 읽힙니다.

작업 순서를 정리하면,

1. XTLA1 및 XTAL2 단자에 모두 Open 상태로 놓는다.

2. ISP로 연결하여, 외부 XTAL 모드로 설정: (10MHz XTAL을 사용하기 때문에 8MHz 이상으로 설정하였음)

3. XTAL1 및 XTAL2 단자에 crystal 및 회로를 연결합니다.

4. ISP로 다시 연결하여, chip signature를 읽는다: OK.

뭐 이후 부터는 정상적으로 사용할 수 있더군요.

그런데 만일 여기에서 다시 Internal RC osc로 설정하면, AVR ISP와 AVR간의 통신이 더 이상 되지 않더군요. 그래서 XTAL1 과 XTAL2의 crystal을 떼고 통신하면 통신이 됩니다.

뭐 간단한 것인데, 이것 때문에 2시간 낭비했습니다.