avr 보드와 터미널간 알 수 없는 오류

2019. 5. 21. 13:49임베디드/ATmega128

제가 쓰는 보드는 ATmega128 마이크로컨트롤러 보드인 Jmod-128-1이며, 다른 스터디원들은 똑같은 마이크로프로세서지만 다른 보드인 Jkit-128-1이다. 두 보드의 장점은 하나의 USB 선으로 usb2uart 시리얼 통신 기능과 ISP 프로그램 다운로드 2가지의 기능을 스위치로 번갈아 제어할 수 있다는 점이다.

기존에 시리얼 통신을 위해 putty를 사용했는데, 알 수 없는 오류로 인해 스위치를 전환할 때마다 프로그램을 다운할 때 ISP를 제어하는 PIC 칩을 찾을 수 없다는 오류가 생겼다. putty 프로그램을 띄운다는 자체만으로(스위치를 옮기지 않고 시리얼 통신을 하지 않고) 문제가 생기는 것으로 봐서는 atmel studio와 putty와의 프로그램 간 문제가 아닐까 생각이 든다. 이 문제는 mobaxterm이라는 다른 터미널 오픈소스 프로그램을 사용하니 해결됐다. 하지만, 동일한 문제를 겪던 다른 3분은 해결되지 않았다. 

mobaxterm은 3가지 Serial Engine을 가지고 있다. 각각 엔진의 차이는 오픈소스로 배급되는 형태라 현재로썬 내 수준에서는 알 수가 없다. 다만 각각의 ui나 프로그램 크기에는 분명한 차이가 있지만 시리얼 통신에 한해서 프로토콜이 다르다고는 생각이 들지 않는다. 결론적으로는 3분은 microcom이나 혹은 minicom으로만 동작시켜야지 문제가 해결됐다.