![](http://datasheet.mmic.net.cn/260000/PPSMMANUAL_datasheet_15946768/PPSMMANUAL_171.png)
33-8
Device Drivers
Programmer’s Manual
For X sampling, the transistors Q4 and Q6 needs to be ON while transistors Q3
and Q5 are OFF, see Figure 31-1 i.e. set Port D Data register, to 0xF9. While
the transistors are in this setting, Port E pin 3 is asserted to activate the A/D
convertor for the sampling. The digital value returned from the A/D convertor is
stored in the SPI Data register.
For Y sampling, the procedure is the same as X sampling except that the
transistors Q3 and Q5 needs to be ON while transistors Q4 and Q6 are OFF,
see Figure 31-1 i.e. set Port D Data register, to 0xF6.
The X and Y samples thus obtained are returned to the caller in the pointer
arguments passed in by the caller.
33.3
Pen Calibration(PenInit.c)
User normally needs to do calibration once the system startup time, in order to do
a correct mapping between touch panel coordination and screen display
coordination. The system needs to have at least the upper-left and bottom-right
corner of the touch panel coordinate in terms of the screen display coordinate to
do this coordinate mapping.
Syntax
STATUS CalibratePen( U16 logoFlag)
Description
When pen calibration is necessary, PPSM calls this routine. User can replace the
default pen calibration algorithm with their own. At the end of this device driver
routine, the origin and maximum point of the touch panel (in terms of display
screen coordinate) should be fed back to PPSM by calling PenSetInputMax(x, y)
and PenSetInputOrg(x, y).
By default, the Motorola logo is displayed and two cross-hair, at the upper right
and the bottom left corners, are used for pen calibration.
33.4
LCD Device Drivers (lcddev.s)
Two functions are needed in this driver for LCD controller initialization to drive the
LCD panel being used in the system. Only one of the following initialization
functions will be called according to the graphics mode desired.
33.4.1
1 bit/pixel Initialization
Syntax
void
_LCDDev1
(void)
Description
This function initializes the LCD controller for 1 bit/pixel graphics mode.
Application programmer may add whatever statement to initialize the LCD
Personal Portable System Manager
Programmer’s Manual
Device Drivers
33-5
Port D and E are used to control the transistor network connected to the touch
panel. The default initialization values for D port is to set all pins to be output I/
O pins.
Port E3 is initialized to enable the A/D converter while PE0, PE1, PE2 are
initialized to SPM function pins (SPMTXD, SPMRXD, SPMCLK respectively).
For SPI Master, the control register, 0xFFF802, is set for the following:
33.2.2
Pen Interrupt Enable
Syntax
void
PenIrptEnable
(void)
Description
This function enables the Pen Interrupt, PENIRQ
Port D
address
bit 7
bit 6
bit 5
bit 4
bit 3
bit 2
bit 1
bit 0
Direction
Register
0xFFF418
x
x
x
x
1
1
1
1
Select Register
0xFFF419
x
x
x
x
1
1
1
1
Pullup Register
0xFFF41A
x
x
x
x
1
1
1
1
Select Register
0xFFF41B
x
x
x
x
1
1
1
1
Polarity
0xFFF41C
x
x
x
x
0
0
0
0
INT Enable
0xFFF41D
x
x
x
x
0
0
0
0
INT Edge
0xFFF41E
x
x
x
x
x
x
x
x
SPIM Control Register, 0xFFF802
Bit Position
Default Value
(binary)
Data Rate
15 - 13
0 1 0
SPIM Enable
9
1
Exchange Bit
8
0
SPIM Interrupt Enable
6
1
Phase Shift
5
0
Polarity
4
0
Clock Count
3 - 0
1 1 1 1
F
Freescale Semiconductor, Inc.
For More Information On This Product,
Go to: www.freescale.com
n
.