3272 views|4 replies

58

Posts

0

Resources
The OP

2440 development board + 7-inch LCD, the touch screen cannot be calibrated. [Copy link]

I just searched online and found that many netizens have encountered the same problem, which is mainly manifested as "when the touch screen is pressed and held, the area under the pen has a box that keeps jumping". It turns out that when calibrating under win ce, the problem of constant calibration has appeared. Later, after measuring the normal TOUCH_MAX_X, TOUCH_MIN_X, TOUCH_MAX_Y and TOUCH_MIN_Y values through the following method, it is manifested as "when the touch screen is pressed and held, the area under the pen has a box that keeps jumping". After I searched the Internet for information, some netizens said that it might be a setting problem of #define ADCPRS 55 // 200Mhz #define ADC_DELAY_TIME 5000 // vencent, but I don't quite understand how to determine it. First of all, I have to explain that there is no problem with the hardware part, because the touch screen part of the nk.bin file provided by the development board CD is very stable, but the above problem occurs when using the BSP package provided by it for customization. #define TOUCH_MAX_X 953 #define TOUCH_MIN_X 66 #define TOUCH_MAX_Y 856 #define TOUCH_MIN_Y 156 #define TOUCH_X 800 //vencent #define TOUCH_Y 480 VOID Touch_CoordinateConversion(INT *px, INT *py) { INT TmpX, TmpY; INT TmpX0, TmpY0; TmpX0 = *px; TmpY0 = *py; RETAILMSG(1, (TEXT("*px : %d\r\n"), TmpX0)); RETAILMSG(1, (TEXT("*py : %d\r\n"), TmpY0)); TmpX = (*px >= TOUCH_MAX_X) ? (TOUCH_MAX_X-1) : *px; TmpY = (*py >= TOUCH_MAX_Y) ? (TOUCH_MAX_Y-1) : *py; TmpX -= TOUCH_MIN_X; TmpY -= TOUCH_MIN_Y; TmpX = (TmpX) ? TmpX : 0; TmpY = (TmpY) ? TmpY : 0; (TOUCH_MAX_X-TOUCH_MIN_X))*4; *py = ((TmpY * TOUCH_Y) / (TOUCH_MAX_Y-TOUCH_MIN_Y))*4; return; }
This post is from Embedded System

Latest reply

Haha, is Youshan really that bad? I was thinking of working there part-time.  Details Published on 2008-11-6 09:58

75

Posts

0

Resources
2
I have encountered this before... I can be sure that it is a driver problem. The size of X and Y above affects the touch range. Changing the ADC time may have an effect. You need to try it out.
This post is from Embedded System

77

Posts

0

Resources
3
This phenomenon has something to do with the driver, but it is more determined by the quality of the touch screen. There is a delay setting for AD sampling, you can try to change it. If you give me a poor quality touch screen, I guarantee that no matter how you drive it, it will be useless. We have encountered this before, and it is very annoying.
This post is from Embedded System

91

Posts

0

Resources
4
Quote from the original post by cy757: The touch screen part of the nk.bin file provided by the CD-ROM of the development board is very stable, but the above problems occur when using the BSP package provided by it for customization.
This is also the case with me. The stable nk.bin file provided in the CD-ROM does not come with a BSP. I asked the manufacturer (Friendly Arm) for another BSP to recompile the system kernel and burned it, but the pen needle still jumped. I asked the manufacturer whether the stable nk.bin was compiled with other BSPs with different touch parameter settings. The reply I got was that it was made with the BSP sent to me, and the PB project file (**.pbxml) was also the one provided in the CD-ROM, without any additions or deletions. I am annoyed with their service....
This post is from Embedded System

71

Posts

0

Resources
5
Haha, is Youshan really that bad? I was thinking of working there part-time.
This post is from Embedded System

Guess Your Favourite
Find a datasheet?

EEWorld Datasheet Technical Support

Related articles more>>

    EEWorld
    subscription
    account

    EEWorld
    service
    account

    Automotive
    development
    circle

    Robot
    development
    community

    Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号
    快速回复 返回顶部 Return list