이글의 전부 또는 일부, 사진, 소스프로그램 등은 저작자의 동의 없이는 상업적인 사용을 금지합니다. 또한, 비상업적인 목적이라하더라도 출처를 밝히지 않고 게시하는 것은 금지합니다.

 


(본 글은 2009.01.18.에 daum의 블로그(http://blog.daum.net/microcontroller/13651108)에 적었던 것을 옮겨왔습니다.)

 

 

 

아직 Series 1인 Futaba GP1152A01도 완성하지 못했는데

만물상닷컴의 자료를 만들다가 필 받아서 며칠 간 작업했다.

 

Futaba GP1152A01에 사용한 루틴을 그대로 사용하고

AVR도 똑같이 ATmega32를 사용했다.

VFD 출력하는 부분만 교체하면 쉽게 될 것으로 생각하고 가벼운 마음으로 시작했는데 거의 일주일 걸린 것 같다.

 

디스플레이하는 부분만 다른 것인데, 생각보다 복잡했다.

 

첫째, 전송 방식이 달랐다.

GP1152A01은 패러렐 방식인데 이것은 시리얼 방식이다.

 

둘째, 화면 제어하는 방식이 달랐다.

GP1152A01은 주소를 지정하여 출력할 위치를 정하는데 반하여

이 제품은 커서 위치를 제어해야 했다.

 

세째, 화면 크기가 작다. GP1152A01은 해상도가 240 * 36이었는데

GU280X16G는 모델명에 나오는 대로 해상도가 280 * 16이다.

Gp1152A01은 한글, 영문 모두 Y 해상도를 16으로 출력하여 두 줄을 사용할 수 있었는데,

이 제품은 그렇게하면 한 줄밖에 사용을 못하기 때문에 화면에 보여줄 정보가 너무 적다.

 

이러한 이유로 한글은 포기하고 영문으로만 출력하기로 했다.

한글 관련 폰트와 KSC5601 코드를 KSSM 코드로 변환하는 부분만 제외시켰더니 프로그램 크기가 많이 줄어든다. 이상태로는 ATmega8에다 넣어도 된다.

 

좌우 바꾸어 출력하는 기능을 넣으려니 GU280X16G가 가지고 있는 폰트를 사용할 수가 없다. 그래서 영문 8X8 폰트를 구해야만 했다. 금방 구할 수 있을 것 같았는데 생각보다 시간이 많이 걸렸다. 폰트 찾고, VFD에서 사용할 수 있도록 가공하고 정리하는 데에 하루 소비. 더군다나 중간에 삽질까지 해서 시간을 더 소비했다.

결국에는 지난 번에 사용했던 coy2fed로 해결했다.

 

만물상닷컴의 샘플 기판에다가 약간의 수정을 했다. USB와 연결된 경우에는 스위치를 꺼도 꺼지지 않는다.

이 작업을 위해서 스위치를 분리했는데, 잘못 분리해서 스위치가 분해되어 버렸다.

분해된 쪼가리 가지고 스위치를 다시 작동하도록 만드느라고 시간이 많이 소비되었다.

만물상닷컴의 샘플 기판

 

( 나중에 정식 기판이 많이 팔려야 할텐데... 수정하느라 선이 생겼다. 뒷면에도 선을 추가했다.)

 

 

속도 펄스, 방향지시등을 연결할 단자들과 12V에서 5V를 만드는 전원공급부가 필요해서 이것들을 조그만 만능기판에 만들었다. 만들다가 만능기판이 부러져서 결국 또 땜질...

기판을 떠서 우아하게 만들어야 하는데 아직도 만능 기판만, 그것도 싸구려 만능 기판...

 

추가한 회로의 회로도. 대충 그렸다.

 

 

 

위 회로도에 따라 만든 회로다. 회로도에 없는 전해 콘덴서 하나 넣었다.

 

 

(회로라 할 것도 없다.  7805와 방열판, 콘덴서, 저항 몇 개, 전압 측정을 위한 반고정 저항)

간단한 내용이라 그냥 생각나는대로 붙였다. 그러다보니 단자들이 너무 가까이 붙어 버렸다.

부러져서 점프선 대고 땜한 자리가 보인다. 빈 자리에는 다른 단자를 추가하면 되겠다.

 

만물상닷컴의 샘플 기판과 결합시켰다.

 

 

 

선은 기판 밑에서 점프선으로 연결하면 간단하겠지만 붙였다 떼었다 하기가 번거로와지니까 있던 케이브들 가져다가 연결했다. 옛날 사운드 카드의 연결선 등 다양한 선이 동원되었다.

 

VFD HUD Series 2 (Noritake GU280X16G)

 

 

프로그램 완성 후에 동작되는 모습들.

 

 

 

 

 

 

 

 

가운데 속도를 알려주는 글자가 작은 느낌이 들지만 VFD 해상도의 한계로 어쩔 수 없을 것 같다.

현재 가로 12도트 세로 16도트로 출력하고 있다.

가로를 16도트로 늘릴 생각되해보았지만 글자가 너무 뚱뚱해질 것 같아 시도해 보지는 않았다.

 

이정도로 series 1인 GP1152A01과 같은 기능을 가지는 series 2를 만들었다.

PC와 통신할 땡도 같은 프로그램을 쓴다.

다만 이녀석은 VFD와 시리얼로 통신을하기 때문에 PC와 통신에 문제가 생긴다.

VFD와 PC가 같은 시리얼 단자를 사용하다보니,

C로 전송하는 정보를 VFD도 받고 VFD로 전송하는 신호를 PC도 받는다.

 

실제로 PC에서 HUD의 정보를 요구하면 엉뚱한 결과가 오기도 한다.

PC가 AVR로 명령을 보낸 후에는 VFD로 정보를 보내지 않도록 했고,

PC는 정보를 받기 전에 큐를 초기화 시킴으로써 최소화 하려고 했다.

그럼데도 불구하고 가끔씩 잘못된 정보가 들어 온다.

이럴 때에는 2-3회 다시 시도하면 옳은 정보를 읽어 온다.

 

아직 추가할 기능이 있다.

1) 자동으로 밝기 조절할 것.

2) 주유 등 들어 오면 경고할 것.

'AVR > VFD' 카테고리의 다른 글

GU256X64-901A VFD 다루기  (2) 2018.11.09
GU280X16G-7600 VFD 제어하기(3)  (0) 2018.11.09
GU280X16G-7600 VFD 제어하기(2)  (0) 2018.11.09
GU280X16G-7600 VFD 제어하기(1)  (0) 2018.11.09
VFD HUD Series 1 (Futaba GP1152A01) 제3편  (0) 2018.11.09
블로그 이미지

엠쿠스

Microprocessor(STM32, AVR)로 무엇인가를 만들어 보고자 학습 중입니다.

,