
도와주세요!!
글 수 15,339
2003.10.20 12:26:37 (*.186.47.173)
8083
마이크로 윈도우의 microwindows-0.89pre8_arm_xscalesrcdrivers 디렉토리
밑에 있는 mou_mk712.c 파일에서
static int MK712_Read(MWCOORD *dx, MWCOORD *dy, MWCOORD *dz, int *bp) 함
수 안의 내용을 살펴 봅니다.
case 0 의 내용중에
MK712_xdata = data[1];
MK712_ydata = data[2];
와
x = (((1024) * ( data[1] - MK712_start_dx )) / (MK712_end_dx -
MK712_start_dx ));
y = (((768) * ( data[2] - MK712_start_dy )) / (MK712_end_dy -
MK712_start_dy ));
가 있습니다.
만약 손가락을 가로로 움직였을때 마우스 포인터가 세로로 움직인다면
data[1], data[2]를 서로 바꾸어 줍니다.
이렇게
MK712_xdata = data[2];
MK712_ydata = data[1];
와
x = (((1024) * ( data[2] - MK712_start_dx )) / (MK712_end_dx -
MK712_start_dx ));
y = (((768) * ( data[1] - MK712_start_dy )) / (MK712_end_dy -
MK712_start_dy ));
또 가로축이나 세로축의 마우스가 서로 손가락과 반대로 움직인다면 최대 해상
도에서 계산값을 빼 줍니다.
예를 들어 손가락을 위에서 아래로 움직이는 데 마우스 포인터는 아래에서 위
로 움직인다면
y = 768-(((768) * ( data[1] - MK712_start_dy )) / (MK712_end_dy -
MK712_start_dy ));
이렇게 바꾸어 줍니다.
화면의 정 가운데 에서 손가락과 포인터가 일치 한다면 별도의 상수 조종은 필
요하지 않습니다.
Ahn궁금 wrote..
: 안녕하세요
: 전번에 답변 많은 도움이 되었습니다.
:
: 다름이 아니고 이번에는 microwindow ez-x5용을 config,Makefil등등을 모든 것
: 을 강좌에서와 같이 수정하여 크로스 컴파일한후 ez-x5에서 nfs로 파일 공유 이
: 후 demo Program을 실행했습니다. 그런데 LCD상에서는 깨끗하게 나오는데
: Touch Panel 구동이 쫌 이상하네요....
: x측과 y측이 바뀌어서 동작을 하고 포인터가 클릭되는것도 눌렀다가 뛰었을
: 때 동작을 합니다. 그리고 Touch Panel 초기 포지션을 잡을 수 있는 방법 쫌
: 알려 주세요.. ㅡ,.ㅡ
:
: 아무리 보아도 잘못한 부분이 없는것 같은데...........
:
: 답변 부탁드립니다. 꼭 좀요............ ㅡ,.ㅡ
밑에 있는 mou_mk712.c 파일에서
static int MK712_Read(MWCOORD *dx, MWCOORD *dy, MWCOORD *dz, int *bp) 함
수 안의 내용을 살펴 봅니다.
case 0 의 내용중에
MK712_xdata = data[1];
MK712_ydata = data[2];
와
x = (((1024) * ( data[1] - MK712_start_dx )) / (MK712_end_dx -
MK712_start_dx ));
y = (((768) * ( data[2] - MK712_start_dy )) / (MK712_end_dy -
MK712_start_dy ));
가 있습니다.
만약 손가락을 가로로 움직였을때 마우스 포인터가 세로로 움직인다면
data[1], data[2]를 서로 바꾸어 줍니다.
이렇게
MK712_xdata = data[2];
MK712_ydata = data[1];
와
x = (((1024) * ( data[2] - MK712_start_dx )) / (MK712_end_dx -
MK712_start_dx ));
y = (((768) * ( data[1] - MK712_start_dy )) / (MK712_end_dy -
MK712_start_dy ));
또 가로축이나 세로축의 마우스가 서로 손가락과 반대로 움직인다면 최대 해상
도에서 계산값을 빼 줍니다.
예를 들어 손가락을 위에서 아래로 움직이는 데 마우스 포인터는 아래에서 위
로 움직인다면
y = 768-(((768) * ( data[1] - MK712_start_dy )) / (MK712_end_dy -
MK712_start_dy ));
이렇게 바꾸어 줍니다.
화면의 정 가운데 에서 손가락과 포인터가 일치 한다면 별도의 상수 조종은 필
요하지 않습니다.
Ahn궁금 wrote..
: 안녕하세요
: 전번에 답변 많은 도움이 되었습니다.
:
: 다름이 아니고 이번에는 microwindow ez-x5용을 config,Makefil등등을 모든 것
: 을 강좌에서와 같이 수정하여 크로스 컴파일한후 ez-x5에서 nfs로 파일 공유 이
: 후 demo Program을 실행했습니다. 그런데 LCD상에서는 깨끗하게 나오는데
: Touch Panel 구동이 쫌 이상하네요....
: x측과 y측이 바뀌어서 동작을 하고 포인터가 클릭되는것도 눌렀다가 뛰었을
: 때 동작을 합니다. 그리고 Touch Panel 초기 포지션을 잡을 수 있는 방법 쫌
: 알려 주세요.. ㅡ,.ㅡ
:
: 아무리 보아도 잘못한 부분이 없는것 같은데...........
:
: 답변 부탁드립니다. 꼭 좀요............ ㅡ,.ㅡ