본문 바로가기

Electronics

급기야 PIC도 시작, PIC용 프로그래머 PIC-PG1제작하다.

급기야는 PIC까지 만지게 되었다. PIC는 픽쳐의 약자가 아니라 Microchip이란 회사에서 나온 마이크로컨트롤러 시리즈 이름이다. AVR과 쌍벽을 이루고 있는 마이크로컨트롤러 되시겠다.

 

아르뒤노도 AVR을 쓰고 가입한 카페도 당근 AVR 가지고 노는 곳이라, AVR 정도만 다룰 줄 알면 다 될 줄 알았으나 현실은 그렇게 표준화되어 있지 않았다.

 

제품이 일률적으로 표준화되어 있다는 것은 독점상태와도 일맥상통하는 말이므로 항상 좋은 것을 뜻하는 것은 아니지만, 하나만 알면 될 줄 알았는데 하나를 더 알아야 내가 원하는 것들을 만들 수 있다는것이 좀 더 번거로울 뿐이다.

 

얼마전 부터 들여다 보고 있는 일본 할아버지의 인도어 에어플래인 월드라는 블로그와 쇼핑몰에는 많은 RC관련 전자회로의 제작법이 상세히 올려져 있다. 마이크로 컨트롤러의 소스코드는 없어도 실행코드는 올려져 있어서 다운받아서 마이크로컨트롤러에 업로드 해넣기만 하면 된다.

 

비행기는 당연하고 모터나 액츄에이터를 제작기도 올려져 있지만 적외선을 이용한 각종 초 경량 송수신기들의 회로도가 있어서 들여다 보면 볼수록 자꾸 만들고싶어지는 마음을 억제할 수가 없다. 이건 아마 여자들이 패션 쇼핑몰이나 홈쇼핑 채널을 보면서 충동구매를 하게 되는 심리와 비슷한게 아닐까 싶다.

 

그래서 결국 PIC관련 카페엘 가입해서 관련 정보를 수집해보니 간단하게 만들 수 있는 프로그래머가 있다기에 만들어 보기로 했다.

 

그런데 이놈이 시리얼 포트용인데, 시리얼 USB 어댑터를 통하면 작동하지 않는다는 것이다. 내 델컴퓨터는 데스크압임에도 불구하고 시리얼포트가 없어서 AVR 할때 부터 애로가 많았다. 프로그래머 장비들은 시리얼 포트에 끼워 쓰는게 많기 때문이다. 정확한 현실은 시리얼 포트에 끼우는건 싼데 USB용은 비싸다.

 

조금만 노력하면 싸게 해결할 수 있는 길이 있으면 거기에 돈 더 쓰고 싶은 마음이 통 들지 않는게 자작파들의 강박증적 행태이기 때문에, 나도 거기서 벗어날 수 없었다. 결국 저렴한 시리얼방식의 프로그래머를 만들자니 시리얼 포트문제를 해결해야 했다.

 

ladyada.net에서 본 Mini POV를 만들 때 사 둔 USB시리얼 케이블이 이미 있었는데, 그 놈은 안먹는다니 어떻게 해야 하나 고민하다 보니 시리얼 포트확장카드가 있을 것 같다는 생각이 들었다. 검색해보니 바로 나오네? 가격도 만원을 갓 넘는 나름 착한 가격이다.

 

PIC동호회에서 본 PIC-PG1이라는 14개 정도의 부품으로 해결되는 프로그래머를 만들기로 했다. 디바이스 마트에 운동삼아 자전거타고 가서 없는 부품들을 사왔다. 항상 그렇듯이 더불어 당장 안쓰는 부품도 몇개 추가 --; 그리고 6핀 커넥터가 필요한데 7핀 커넥터를 사와주는 센스도 발휘 --; 핀수 착각하는게 두번째다 벌써!

 




 

브레드보드에 부품들을 다 꽂아서 돌려보니 역시  한큐에 돌아갈리는 없다. 잘 들여다보니 전선 하나가 엉뚱한데 꽂혀 있군. 그것을 바로 꼽자 바로 된다 ^^ 이렇게 쉽다니~ 두 큐만에 성공했다. 

 

그러나 만능기판에 납땜을 하고 나니 또 안된다. 이번엔 세군데나 고치고 나서야 작동을 한다. 부품이 너무 없어서 기판 한 쪽이 허전하니 비었다. 나중에 더 큰 칩을 프로그래밍 할때에 대비해서 소켓을 설치할 자리로 남겨 두었다.

 

아 그리고 PIC가 AVR보다 좋은 점은 아래 사진에서 보이듯이 프로그래밍에 필요한 포트의 위치가 14핀짜리 칩과 8핀짜리 칩이 같아서 하나의 소켓으로 공용이 가능하다는 점이다. AVR은 위치가 영 달라서 칩 간에 소켓을 공용할 수 가 없었다

 


 

PIC-PG1은 내가 프로그램하려는 PIC12F675, PIC12F629, PIC16F630을 하나도 지원안한다고 써 있었는데 PIC12F675빼고는 잘 된다. 675 이 놈도 어떻게 잘 해보면 될 것 같다는 기대를 아직은 가지고 있다.

 

업로드용 프로그램은 WINPIC이라는 프로그램을 사용했다. 인터페이스라는 세팅에서 프로그래머를 선택하게되어 있는데 거기엔 PIC-PG1은 없고, COM84 Programmer for serial port로 세팅하면 된다.

 

WINPIC에서 디바이스(칩 종류)를 선택하면 에러메시지가 아래쪽에 나오는데, MPLAB IDE에서 디바이스 화일을 복사해오라는 메시지도 같이 뜬다. MPLAP IDE도 군말없이 깔아준다. 그리고 MPLAB IDE/device 디렉토리에 있는 디바이스 화일들을 복사해다가 Winpic/devices 디렉토리에 넣어준다.

 

지원 안한다던 칩이 프로그래밍이 되어서 무엇보다 다행이다. 안그랬으면 아마 포기했을 것이다. 자작하려고 벌써 3만원 돈 썼는데, 그거 다 헛수고 되버리고 8만원 짜리 프로그래머를 사느니 아예 안하고 말지 --;

 

그럼 이제 나도 1g대의 비행기를 날릴 수 있게 되는 것인가?  과연...



-------------------------------------------------------------


위글은 2008년6월18일에 네이버블로그에 썼던글 퍼온 것이다. 


오랫만에 pic 프로그래머를 꺼내보니 어떤 프로그램으로 이걸 돌려줬던건지 다 까먹고 이 글에 그 내용을 써 놓은것도 기억이 안난다. 혹시나해서 네이버블로그에 보니 다 써놨었다. 역시 기록을 잘해놔야한다.


오늘은  맥에서 PIC을 프로그래밍하는 법을 찾아봤다. 이곳이 잘 설명해놔서 보고 GPUTILS라는 걸 설치는 했다. 그러나 내가 가지고 있는 프로그래머는 시리얼포트를 쓰는 방식인걸? 아무래도 PIC을 프로그램하려면 예전에 쓰던 컴을 써야할것 같다.


아 중량 1g대 비행기는 시작도 안했다 --;; 

'Electronics' 카테고리의 다른 글

아두이노로 만드는 로봇 Blinky 1편  (0) 2011.12.20
Beagle Board 입문기  (1) 2011.10.02
아두이노 기초강좌 5  (36) 2010.06.22
아두이노 기초강좌 4  (15) 2010.05.11
아두이노 기초강좌 3  (13) 2010.04.28