I am also having trouble creating a kernel in platform builder to get a working touch function. I have a LH7A400 display engine and a LCD-3.5-QVGA-10 display.
Here's what I've done so far:
I got the LCDC driver working fine. At least the Windows CE "desktop" appears as expected.
In platform builder, under platform features->device drivers->shell and user interface->user interface I have Mouse and Touch Display (Stylus). There are several C and C++ driver files listed under Touch Display (Stylus). There are no environment variables under settings.
Then, under LoCE_A400_rel_101->Device Drivers->Input Devices I have lpd_LH7A400_Touch_rel_100. There are no environment variables under settings.
Last, following the note included in the .reg file for the lpd_LH7A400_Touch driver, I copied the following into platform.reg:
; +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
; +
; + Device Driver Registry Settings:
; +
; +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
; ---------------------------------------------------------------------------
;
; LH7A400 Integrated Touch Driver:
;
; ---------------------------------------------------------------------------
[HKEY_LOCAL_MACHINE\init]
;"Launch40"="touchcal.exe"
;"Depend40"=hex:14,00,1e,00
[HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\TOUCH]
"DriverName"="lpd_LH7A400_Touch_rel_100.dll"
; -------------------------------------------------------------------
; Calibration data for 3.5" screen (DisplayNumber = 6)
; -------------------------------------------------------------------
; "CalibrationData"="503,519 242,779 243,257 767,253 762,777" ; 8-Bpp
"CalibrationData"="508,509 247,770 249,247 763,246 764,767" ; 16-Bpp
; -------------------------------------------------------------------
; Calibration data for 6.4" screen (DisplayNumber = 5)
; -------------------------------------------------------------------
; "CalibrationData"="510,503 240,771 242,235 775,238 777,772" ; 16-Bpp
; -------------------------------------------------------------------
; Calibration data for 10.4" screen (DisplayNumber = 7)
; -------------------------------------------------------------------
; "CalibrationData"="534,542 302,739 304,336 766,342 761,745" ; 8-Bpp
; "CalibrationData"="533,516 285,748 286,288 779,282 781,747" ; 16-Bpp
; -------------------------------------------------------------------
; Calibration data for 12.1" screen (DisplayNumber = 2)
; -------------------------------------------------------------------
; "CalibrationData"="517,507 230,792 233,222 809,220 807,793" ; 16-Bpp
[HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\TOUCH\lpd_LH7A400_Touch]
"Priority256"=dword:6D ; 109 in dec
"HighPriority256"=dword:6D ; 109 in dec
; "Irq"=dword:1A ; NOTE - use 0x1A for RevA card engines
"Irq"=dword:07 ; NOTE - use 0x07 for RevB card engines
"Scratch_Base"=dword:0
"CpldIntRegBase"=dword:70C00000
"CpldSpiDataRegBase"=dword:70600000
"CpldSpiCtlRegBase"=dword:70800000
"IsrDll"="lpd_LH7A400_Touch_isr_rel_100.dll"
"IsrHandler"="ISRHandler"
"IntMask"=dword:02
"IntEnMask"=dword:08
"PenUpDelay"=dword:01
"SettlingSamples"=dword:0A
; ---------------------------------------------------------------------------
; +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
; +
; + End Device Drivers Section.
; +
; +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
. . . but it doesn't work. When I touch the display nothing happens. I think I am missing a secret incantation. Anyone know what it is?
THanks,
-Mike
|