[36호]Pololu USB AVR Programmer v2 출시
Pololu USB AVR Programmer v2 출시
최근 Pololu에서는 Pololu USB AVR Programmer v2제품이 출시되었다. Pololu사는 오랑우탄 로봇 컨트롤러와 3pi 로봇같은 제품들을 지원하기 위해서 8년이상 AVR을 제조해왔다. 이러한 programmers제품군은 PC에서 특정한 AVR의 플래시 메모리로 컴파일된 AVR 프로그램을 전송하는데 쓰여진다.
왼쪽부터 : original Orangutan USB Programmer, Pololu USB AVR Programmer, Pololu USB AVR Programmer v2 |
새로운 Pololu USB AVR Programmer v2는 Pololu의 3번째 AVR 에디션이며, 기존의 Pololu USB AVR Programmer에서 많은 변화와 추가 기능을 탑재한 업데이트 버전이다.
3.3V에서 AVR microcontrollers 프로그래밍을 지원하기 위해서, Pololu사는 전압을 조절할 수 있는 레귤레이터를 추가했다. 이 레귤레이터는 programer가 3.3V나 5V에서 전압을 유지시켜주는 역할을 한다. 초기설정에서 programmer는 3.3V에서 작동하지만, VCC에서 많은 양의 전압을 감지하면 그 전압을 측정하고 자동적으로 5V로 전환한다. 유저가 오토매틱 스위칭 기능을 온/오프 할 수 있으며 환경설정 소프트웨어를 사용하면 3.3V나 5V로 설정으로 유지할 수 있다.
Pololu사는 ATmega328P 같이 널리 쓰이고 있는 AVR 타입의 프로그래밍 속도를 높이기 위해서 많은 노력을 기울였다. 이전 버전의 USB AVR Programmer에서 32KB의 AVR 플래시 메모리를 프로그램 하는데 2MHz의 최대 ISP frequency를 사용하면 약 6.8초가 걸렸지만, USB AVR Programmer v2에서는 4.8초밖에 걸리지 않는다. 또한 ATmega328P가 충분한 클럭 스피드를 가지고 있다면 ISP frequency를 3MHz까지 올릴 수 있고, 이 때 걸리는 시간은 4.3초로 줄어든다. (윈도우즈에서 AVRDUDE 6.2로 테스트한 결과) Pololu USB AVR Programmer v2는 모든 I/O 라인에서 470Ω 저항값을 가지며, 다른 전압값이 입력되거나 합선이 되어도 programmer와 타겟 시스템을 손상으로부터 보호해준다.
실수로 다른 클럭 세팅을 프로그래밍 하는 경우 때문에 AVR에 fuse bits를 입력하는것은 항상 조심스러운 일이었다. 그러나 Pololu USB Programmer v2는 이러한 수고를 조금 덜 수 있게 됐다. Pololu USB Programmer v2는 AVR로 전송하는데 사용되는 100kHz의 클럭 출력을 제공하며 이것은 다른 클럭 세팅을 입력했을 때 클럭을 되찾는데 도움을 준다. Pololu사는 ATmega328P에서 테스트를 했고 다른 종류의 다양한 AVR에서도 적용되지만 fuse bits를 세팅할때는 언제나 신경을 써야 한다고 말한다.
이전 버전처럼 Pololu USB Programmer v2는 USB-to-TTL 시리얼 아답터에서 작동하고 사용자는 디버그나 사용자가 진행하는 프로젝트에서 커뮤니케이션이 가능하다. Pololu사는 널리 사용되는 FTDI USB-to-serial 케이블이나 보드와 유사한 시리얼 핀배치를 통해 편리함을 더했으며 이 시리얼 핀들은 납땜이 되어서 나오기 때문에 사용자는 다양한 종류의 아두이노에 바로 사용가능하다.
Pololu USB AVR Programmer v2 핀맵 |
Pololu USB AVR Programmer v2는 Atmel Studio, AVRDUDE, IDE 등 많은 AVR 프로그래밍 소프트웨어와 사용가능하다. 사용자는 programmer의 설정값을 변경하고 유용한 정보를 볼 수 있는 Pololu의 오픈 소스 소프트웨어도 사용 가능하며 이는 윈도우즈, 리눅스 , MAC OS 모두 호환 가능하다. Pololu사는 GUI 와 CLI 모두 제공하며 아래는 윈도우즈상의 GUI 스크린샷이다.
윈도우즈상의 GUI 스크린샷 |
Pololu USB AVR Programmer v2는 새로운 PIC 마이크로 컨트롤러인 PIC8125K50을 사용한다. 또한 P-Star 25K50 Micro라는 유저가 직접 프로그래밍 가능한 보드를 판매중이다. 이 마이크로 컨트롤러의 한 가지 재미있는 기능 중에 하나는 공진기나 외부 크리스탈 없이 full-speed SUB가 가능하며 ±0.25% 오차율 이내의 클럭을 가지고 있는 장치가 요구되어진다. 이전 버전의 제품에서는 이러한 조건을 충족시키기 위해서 외부 크리스탈이나 공진기가 반드시 필요했다. 그러나 PIC18F25K50은 Active Clock Tuning이라고 불리는 기능을 가지고 있는데 이 기능은 컴퓨터로부터 나오는 USB 시그널의 타이밍을 감시함으로서 자동적으로 내부의 발진기를 조절하고 USB가 필요한 정확성을 맞추는 기능을 가지고 있다. 이 기능덕분에 Pololu는 USB AVR Programmer v2를 좀 더 작게 설계 가능했고 단가를 낮출 수 있었다.
www.pololu.com