APERATURE FILTERING FOR RESISTIVE MULTI-TOUCH DISTORTIONS
20170060330 ยท 2017-03-02
Inventors
Cpc classification
G06F2203/04105
PHYSICS
G06F2203/04104
PHYSICS
G06F3/045
PHYSICS
International classification
G06F3/041
PHYSICS
Abstract
An apparatus comprises touch screen interface and signal processing circuit. Within touch screen interface, there are switching circuits configured to be coupled to at least one of a plurality of column electrodes, and there are touch detection circuits configured to be coupled to at least one of a plurality of row electrodes. The signal processing circuit is coupled to each switching circuit and each touch detection circuit so as to be able to selectively activate the plurality of switching circuits and touch detection circuits to identify a zone for a touch event. The signal processing circuit determines first, second, third, and fourth resistances for the zone for the touch event and determines a set of coordinates and pressure for the touch event from its first, second, third, and fourth resistances wherein an aperture filter register is in a host interface that also stores the first digital representation.
Claims
1. An apparatus comprising: a touch screen having a set of column electrodes and a set of row electrodes, the set of column and row electrodes forming a set of zones having sensor zone indices; a touch screen controller coupled to the set of column electrodes and the set of row electrodes; a signal processing circuit that is coupled to the touch screen controller; and an aperture filter, coupled to the signal processing circuit, that uses the sensor zone indices and an aperture window size that is configurable to filter distortions from the touch screen.
2. The apparatus of claim 1 further comprising an aperture register having bits that represent an internal address where data for configuring the aperture window size is stored.
3. The apparatus of claim 1, wherein the aperture filter creates invalid touch zones by setting the aperture window size to zero for sensor zone indices from undesired zone of the set of zones.
4. The apparatus of claim 1, wherein the aperture window size is configurable in an X direction along an X axis and a Y direction along a Y axis of the touch screen.
5. The apparatus of claim 1, wherein the signal processing circuit further comprises: a multi-touch controller coupled to a touch screen interface; and a touch engine coupled to the touch screen interface and the multi-touch controller.
6. The apparatus of claim 1, wherein the signal processing circuit further comprises a host controller that is coupled between the touch engine and the host processor.
7. The apparatus of claim 5, wherein the touch engine further comprises: an analog-to-digital converter (ADC) that is coupled to the plurality of touch detection circuits; a touch engine controller that is coupled to the multi-touch controller, the ADC, and a host interface; and a pre-processing circuit that is coupled to the touch engine controller and the host interface.
8. The apparatus of claim 7, wherein the host interface further comprises: an index register for storing the zone for the touch event; and a data register for storing digital representations of the first and second resistances for the touch event.
9. The apparatus of claim 7, wherein the host interface further comprises an inter-integrated circuit (I2C) interface that is coupled to the host processor.
10. A method for calibrating and operating a touch screen device, comprising: enabling a normal touch mode of the touch screen device, the touch zone device having a touch screen, the touch screen forming a set of zones having zone indices; comparing a set of zone indices in response to touches along a horizontal line on the touch screen and storing a set of changed indices; comparing the set of zone indices in response to touches along a vertical line on the touch screen and storing a set of changed indices; determining maximum and minimum coordinates for each zone of the set of zones and calculating a center code for each zone index; and storing the center code and an aperture window size of each zone to an aperture page register.
11. The method of claim 10 further comprising, prior to enabling a normal touch mode, disabling an aperture filter in the touch screen device.
12. The method of claim 10 further comprising enabling an aperture filter mode of the touch screen device.
13. The method of claim 10 further comprising adjusting the aperture window size in an X direction along an X axis and a Y direction along the Y axis of the touch screen.
14. The method of claim 10, wherein the maximum and minimum coordinates comprises maximum and minimum coordinates for the X axis and the Y axis for each zone.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0020] For a more complete understanding of the present invention, and the advantages thereof, reference is now made to the following descriptions taken in conjunction with the accompanying drawings, in which:
[0021]
[0022]
[0023]
[0024]
[0025]
[0026]
[0027]
[0028]
[0029]
[0030]
[0031]
[0032]
[0033]
DETAILED DESCRIPTION
[0034] Refer now to the drawings wherein depicted elements are, for the sake of clarity, not necessarily shown to scale and wherein like or similar elements are designated by the same reference numeral through the several views.
[0035] As shown in
[0036] Initially, in state 502, the signal processing circuit is at an idle state. While in state 502, the signal processing circuit can perform a precharge and sensing operation to determine whether a touch event (anywhere on the touch screen 202 has occurred). This is typically done by activating (with the multi-touch controller 210) all switching circuits 306-1 to 306-3 and all touch detection circuits 308-1 to 308-5 or by repeatedly scanning through the switching circuits 306-1 to 306-3 and touch detection circuits 308-1 to 308-5. This allow for coarse identification of the zone or intersecting row and column electrodes having a touch event. This zone can then be stored in the index register 408 of the host interface 216.
[0037] When the zone for a touch event has been identified, the characteristics of the touch can be resolved. Specifically, in state 504, the signal processing circuit (by way of the zone controller 212 and multi-touch controller 210) can perform a precharge and sensing operation for the column associated with the identified zone. Typically, the signal processing circuit activates or applies as voltage (i.e., voltage V) across the column electrode (i.e., 302-1) associated with the zone.
[0038] As shown in
[0039] Then, in state 508, the signal processing circuit can perform a precharge and sensing operation for the row associated with the identified zone. Typically, the signal processing circuit activates or applies as voltage (i.e., voltage V) across the row electrode (i.e., 304-1) associated with the zone
[0040] As shown in
[0041] In instances where a pressure measurement is desired, the pressure (or Z coordinate) can be determined in states 512 and 514 and stored in the data register 406 in state 516. (after a determination that there has been no change in the zone in state 512). To do this, two resistance measurements are made.
[0042] As shown in
where X is the horizontal position or coordinate within the identified zone, Y is the vertical position or coordinate within the identified zone, R.sub.X and R.sub.Y are the strip resistances, and Z1 and Z2 are the pressure-related resistance measurements. The touch resistance RTOUCH is proportional to the pressure applied to the touch screen, so the ADC 402, touch engine controller 208, and pre-processing circuit 214 in state 514 can both calculated the touch resistance RTOUCH and pressure, which can be stored in data register 406 in state 516.
[0043] Following the of the update of the data register 406 with the pressure (or Z) coordinate, the signal processing circuit can perform a precharge and sensing operation to determine whether a touch event anywhere else on the touch screen 202 has occurred in state 518. States 504 to 516 can then be repeated for additional touch events other zones. Additionally, because interaction with a touch screen 202 in interactive, touch events change, as, for example, fingers are moved across the touch screen, the state diagram includes several state changes reflecting these types of changes. With most of the state changes, the columns and/or row can be switched or cycled (i.e., activations of successive columns electrodes 302-1 to 302-3 and/or row electrodes 304-1 to 304-5).
[0044] Thus, by using the system 200, several benefits can be realized. First, power consumption can be reduced over that of system 100. Second, multi-touch capability (i.e., between difference zone) can be realized without the use of more exotic algorithms.
[0045]
[0046] Generally, the touch screen 202 addresses problems with distortions were from the resistive loops that link row and column resistances with the touch resistances caused by multiple touched zones and were also from the nonlinear resistance at the edges of touch sensors. These distortions can be efficiently removed by this aperture filter. The touch screen with aperture filter uses the sensor zone indices and the configurable aperture windows to filter out the distortions at touched sensors. The configurable aperture window size can be adjusted after the touch panel calibration to meet optimal filtering effects.
[0047] It can eliminate the confusing coordinate sets created by these distortions at the real time while the coordinate sets are generated. It can also create invalid touch zones by setting the aperture window sizes to 0 for the sensors located at undesired rows and columns.
[0048]
[0049]
[0050] Use of these center codes and the aperture window sizes (WX and WY) enables the aperture filter of the system 200 to determine whether the position a touch occurs with is inside the active area 710.
[0051]
[0052]
[0053]
[0054]
[0055] In a step 910, the aperture filter is disabled, and a normal touch mode is enabled.
[0056] In a step 920, a horizontal line is drawn on the touch screen 202 with finger/stylus, wherein these zone indices are compared. When indices change, the changed indices and X coordinates are stored in a host processor 226.
[0057] In a step 930, a vertical line is drawn on the touch screen 202 with finger/stylus, wherein these zone indices are compared. When indices change, the changed indices and Y coordinates are stored in a host processor 226.
[0058] In a step 940, the host processor 226 determines X_min, X_max, Y_min, and Y_max coordinates for each zone and calculates the center codes 715 (Xi, Yj) for each zone index (i, j). The X_min, X_max, Y_min and Y_max coordinates define the zone edges. A center code for the zone (i, j) can be calculated as: Xi=(Xi_maxXi_min)/2+Xi_min; Yj=(Yj_maxYj_min)/2+Yj_min.
[0059] In a step 950, the host processor 226 writes the center codes, and window sizes, WX, WY to the Aperture Register Page in Host Interface 216, such as in
[0060] In a step 960, the aperture filter mode is enabled, such as by writing to an internal configuration register.
[0061] The configurable aperture window size can be adjusted after the touch screen calibration to meet optimal filtering effects.
[0062] Having thus described the present invention by reference to certain of its preferred embodiments, it is noted that the embodiments disclosed are illustrative rather than limiting in nature and that a wide range of variations, modifications, changes, and substitutions are contemplated in the foregoing disclosure and, in some instances, some features of the present invention may be employed without a corresponding use of the other features. Accordingly, it is appropriate that the appended claims be construed broadly and in a manner consistent with the scope of the invention.