컨텐츠 바로가기


board


현재 위치

  1. 게시판
  2. 자료실

자료실

관리자가 운용하는 제품관련 자료실입니다.

WQV43, WV70-Touch LCD 모듈 좌표계및 비트맵 폰트구조
제목 WQV43, WV70-Touch LCD 모듈 좌표계및 비트맵 폰트구조
작성자 관리자 (ip:)
  • 작성일 2011-02-04 00:13:19
  • 추천 추천 하기
  • 조회수 268
  • 평점 0점
 

TFT LCD 사용을 위해서는 좌표계에 대한 이해가 반드시 필요합니다.

 

아래 내용은 WQV43-Touch및 WV70-Touch LCD 모듈의 좌표계에 대한 설명입니다.

 

1. 좌표계의 이해.
1.1 Portrait mode.(orientation = 0)

                 <  WQV43-Touch  좌표계 >                                                   < WV70-Touch 좌표계 >

 

              LCD-Vertical-WQV43.PNG                                   LCD-Vertical-WV70.PNG 

 

 좌상단이 x=0, y=0 그리고 우하단이 x=272 (WV70은 479), y=479 (WV70은 799) 인 좌표계입니다.

 

 그 좌표계 내에서 XAS, YAS, XAE, YAE 값을 임의로 지정하여 window를 지정하고 16bit color data를 써 넣으면 순서대로 LCD 내부의 Graphic RAM에 저장됨과 동시에 화면에 해당 pixel에 해당 color의 점이 찍히는 구조로 되어 있습니다.
-----------------------------------

주)    XAS : X 좌표 시작점.

         XAE : X 좌표 끝점.

         YAS : Y 좌표 시작점.

         YAE : Y 좌표 끝점.


 만일 LCD 전체에 WHITE color를 채우고 싶다면 위의 그림과 같이 XAS=0, YAS=0, XAE=271(WV70은 479), YAE=479(WV70은 799)로 설정후 0xffff 를 272 x 480 = 130,560 번 write 해주면 전체 화면을 흰색으로 채울수 있습니다.

 일단 window size가 정해지면 시작점부터 끝점까지 계속해서 차례대로 16bit color data를 전송해 주어야 하며 중간에 있는 pixel은 건너뛰고 임의의 위치에만 color data를 write 할 수 없습니다.
 만일 1개의 특정 Pixel에만 원하는 color를 채우고 싶다면(예를들어 x=100, y=50 위치에) XAS=100, YAS=50, XAE=100, YAS=50 과 같이 1 pixel 짜리 window를 지정하고 16bit color data를 1개만 write 해 주면 됩니다.

1.2 Landscape.(orientation = 0)

 

                    <  WQV43-Touch  좌표계 >                                                      < WV70-Touch 좌표계 >

 

LCD-Horizontall-WQV43.PNG       LCD-Horizontall-WV70.PNG  

 

 좌상단이 x=0, y=0 그리고 우하단이 x=479 (WV70은 799), y=271 (WV70은 479) 인 좌표계입니다.

 

2. data writing 시작점및 진행방향(ADIR, XDIR, YDIR)
 일반적으로 CPU Interface 방식의 TFT LCD에는 위의 내용과 같이 좌표계를 user가 원하는데로 바꿀 수 있도록 data writing 시작점및 진행 방향을 설정할 수 있는 register가 마련되어 있습니다.

 

  WQV43및 WV70-Touch 에서 Landscape(orientation=1) 을 만들어 주식 위해서는 아래와 같이, set_address_mode register에 B7=B6=B5=0 을 setting 해 주어야 하고,

  Portrait Mode(orientation=0)을 만들어 주기 위해서는 set_address_mode register에 B7=1, B6=0, B5=1을 setting 해 주어야 합니다.

 

Orientations.PNG 

 

나머지 B7, B6, B5 조합에 총 8가지 다른 방향으로 정의된 window 내에서 Pixel을 표시해 나갈수 있습니다.

 

3. Bitmap font(비트맵 폰트)의 구조. 
  1, 2장에서 TFT LCD의 윈도우 구조에 대해서 충분히 이해를 했다면 그림이나 글자를 LCD 화면상에 표현하는 일은 비교적 쉽게 접근 할 수 있습니다.

   5x7 pixel 크기의 charactor "A" 를 bitmap으로 표현하면 다음과 같습니다.
               Fonts_and_data1_5x7.png
  글자 자체는 5x7 = totl 35 bit로 표현 될 수 있지만 편의상 오른쪽 그림과 같이 {0x70, 0x88, 0x88, 0xf8, 0x88, 0x88, 0x88} 과 같이 7 Byte로 표현합니다.


  따라서 "A"라는 charactor를 LCD 화면에 그리기 위해서는,

  step 1) LCD에 가로=5, 세로=7 짜리 window를 open 한다.

  step 2) ADIR, XDIR, YDIR을 적절히 조절하여 화면 좌측 상단으로 부터 우측 상단 방향으로 각 pixel의 color data를 writing 할 수 있도록 setting 한다.

  step 3) font data {0x70, 0x88, 0x88, 0xf8, 0x88, 0x88, 0x88}의 각 byte중 상위 5 bits를 차례로 읽어 그 값이 '0' 이면 흰색(0xffff), '1"이면 검은색(0x0000)을 LCD의 GRAM에 wrting 한다.

 

기타 비트맵으로 구성된 그림도 동일한 방법으로 그려 나갈 수 있습니다.

 

WQV43-Touch및 WV70-Touch 예제에서 자주 사용되는 대표적인 좌표계를 간략하게 소개합니다.,

 

orientation = 0 이면,

                                                         orientation_0.png

 

orientation = 1 이면,

                                                         orientation_1.png

 

orientation = 2 이면,

                                                         orientation_2.png

 

orientation = 3이면,

                                                         orientation_3.png

 

등등....

 

기타 사용자 필요에 의해 다양한 좌표계를 지정하여 사용 할 수 있습니다.

 

  비트맵 변환기 ezBMP 바로가기 

첨부파일
비밀번호 삭제하려면 비밀번호를 입력하세요.

목록

삭제 수정 답변

댓글 수정

비밀번호

수정 취소

/ byte

댓글 입력

이름 비밀번호 관리자답변보기

확인

/ byte


* 왼쪽의 문자를 공백없이 입력하세요.(대소문자구분)

회원에게만 댓글 작성 권한이 있습니다.