新闻中心

EEPW首页 > 模拟技术 > 设计应用 > MAX1233/MAX1234触摸屏控制器入门

MAX1233/MAX1234触摸屏控制器入门

作者: 时间:2012-03-17 来源:网络 收藏
6Read PENIRQ-bar pin statusPENIRQ = 1Touch the touch screen
P R 6
Read PENIRQ-bar pin statusPENIRQ = 0
T M2
Measure X,Y,Z1,Z2
0x0040 0x0b01

0x8000 0x0000

0x8001 0x0000

0x8002 0x0000

0x8003 0x0000
P R 6
Read PENIRQ-bar pin statusPENIRQ = 1Touch and hold the touch screen
P R 6
Read PENIRQ-bar pin statusPENIRQ = 0
T M2
Measure X,Y,Z1,Z2
0x0040 0x0b01

0x8000 0x0000

0x8001 0x0000

0x8002 0x0000

0x8003 0x0000
P R 6
Read PENIRQ-bar pin statusPENIRQ = 0
T M2
Measure X,Y,Z1,Z2
0x0040 0x0b01

0x8000 0x0000

0x8001 0x0000

0x8002 0x0000

0x8003 0x0000
P R 6
Read PENIRQ-bar pin statusPENIRQ = 0Release the touch screen
P R 6
Read PENIRQ-bar pin statusPENIRQ = 0
T M2
Measure X,Y,Z1,Z2
0x0040 0x0b01

0x8000 0x0000

0x8001 0x0000

0x8002 0x0000

0x8003 0x0000
P R 6
Read PENIRQ-bar pin statusPENIRQ = 1

3.5) 检测操作:自动扫描

在检测操作,配置,自动数字化的接触位置时,写入寄存器0x40 (ADC控制),其PENSTS=1,ADSTS=0 (请参考/数据资料的表6)。第一次接触屏幕时,/PENIRQ信号暂时变为低电平,并在读取X寄存器之前不会变化。

表13. 触摸屏检测命令序列:自动扫描
DEMO1234 Command
Action
SPI data in
Verification
Optional: connect oscilloscope to PENIRQ-bar
I C 1 3
Configure PENIRQ-bar pulse accumulator: falling-edge trigger
I 0 1
Reset the pulse accumulator
I R 1
Read the number of times PENIRQ-bar has pulsed lowcount = 0
T W AC 8bff
Wait for touch, then scan X,Y,Z1,Z2
0x0040 0x8bff
Touch the touch screenPENIRQ pulse
I R 1
Read the number of times PENIRQ-bar has pulsed lowcount has increased
T R P
Read X,Y,Z1,Z2 conversion results
0x8000 0x0000

0x8001 0x0000

0x8002 0x0000

0x8003 0x0000
Touch the touch screenPENIRQ pulse
I R 1
Read the number of times PENIRQ-bar has pulsed lowcount has increased
T R P
Read X,Y,Z1,Z2 conversion results
0x8000 0x0000

0x8001 0x0000

0x8002 0x0000

0x8003 0x0000
Touch the touch screenPENIRQ pulse
I R 1
Read the number of times PENIRQ-bar has pulsed lowcount has increased
T R P
Read X,Y,Z1,Z2 conversion results
0x8000 0x0000

0x8001 0x0000

0x8002 0x0000

0x8003 0x0000

4) 键盘和通用输入/输出引脚

下面的例子介绍了怎样使用DEMO1234.EXE程序来扫描键盘,怎样使用GPIO键盘扫描引脚。

4.1) 配置键盘和GPIO引脚

GPIO控制寄存器将每个C1–C4和R1–R4引脚分别配置为输入、输出或者是键盘的一部分(请参考/数据资料的表26和表27)。此外,写入GPIO上拉禁止寄存器,将输出引脚配置为开漏输出。

表14. 键盘和GPIO配置实例
DEMO1234 Command
Action
SPI data in
T W GC FFFF
Keypad: none;
GPIO outputs: C4,C3,C2,C1,R4,R3,R2,R1;
GPIO inputs: none
0x004f 0xffff
T W GC FF00
Keypad: none;
GPIO outputs: none;
GPIO inputs: C4,C3,C2,C1,R4,R3,R2,R1
0x004f 0xff00
T W GC 0000
Keypad: (C4,C3,C2,C1) x (R4,R3,R2,R1);
GPIO outputs: none;
GPIO inputs: none
0x004f 0x0000
T W GC C8C0
Keypad: (C2,C1) x (R3,R2,R1);
GPIO outputs: C4,C3;
GPIO input: R4
0x004f 0xc8c0
T W GP 4000
GPIO pullup disable: C3
0x004e 0x4000

4.2) 读写GPIO引脚

GPIO数据寄存器读取GPIO输入引脚,写入GPIO输出引脚。注意:在这些例子中,C3、C4和R4是引脚名称,而不是元件名称。

表15. GPIO实例
DEMO1234 Command
Action
SPI data in
Verification
T W GC C8C0
Keypad:
(C2,C1) x (R3,R2,R1);
GPIO outputs: C4,C3;
GPIO input: R4
0x004f 0xc8c0
T W GP 4000
GPIO pullup disable: C3
0x004e 0x4000
Connect external resistor between C3 pin and DVDD
Connect DVM to C4 pin
T W GD 8000
GPIO write C4 = 1
0x000f 0x8000
C4 pin = high
T W GD 0000
GPIO write C4 = 0
0x000f 0x0000
C4 pin = low
T W GD 8000
GPIO write C4 = 1
0x000f 0x8000
C4 pin = high
T W GD 0000
GPIO write C4 = 0
0x000f 0x0000
C4 pin = low
Connect DVM to C3 pin
T W GD 4000
GPIO write C3 = 1
0x000f 0x4000
C3 pin = high
T W GD 0000
GPIO write C3 = 0
0x000f 0x0000
C3 pin = low
T W GD 4000
GPIO write C3 = 1
0x000f 0x4000
C3 pin = high
T W GD 0000
GPIO write C3 = 0
0x000f 0x0000
C3 pin = low
Connect R4 pin to DVDD
T R GD
GPIO read
0x800f 0x0000
Buffer = 0x0800
Connect R4 pin to GND
T R GD
GPIO read
0x800f 0x0000
Buffer = 0x0000

4.3) 检测按键:自动扫描

可以配置键盘控制寄存器在探测到有按键按下时,自动扫描键盘。

表16. 按键命令序列:自动扫描
DEMO1234 Command
Action
SPI data in
Verification
Optional: connect oscilloscope to KEYIRQ-bar

评论


相关推荐

技术专区