Touch screens are used in smart phones, tablet computers and many other modern electronic devices. Touches to a touch screen are sensed by sensing changes in parameters caused by the touch. Earlier touch screens usually sensed changes in resistance. Newer touch screens usually sense changes in capacitance resulting from a touch. Capacitive touch screens have grids of underlying sensors or “nodes” which generate signals indicative of the capacitance, etc. at the node.
Using a traditional uniform sampling sequence, each of the nodes are read out or “sampled” once during each panel scan. The read outs would then be used together to determine the location of touches. Method and apparatus for performing the basic operations described above are known in the art. See, for example, C. Luo, M. Borkar, A. Redfern and J. McClellan “Compressive Sensing for Sparse Touch Detection on Capacitive touch Screens,” IEEE Journal On Emerging And Selected Topics In Circuits And Systems, Vol. 2, No. 3, September 2012, which is hereby incorporated by reference for all that it discloses.
Operating systems and applications on devices with touch screens typically have one or more of the following characteristics:
1. Only a small number of locations on the screen that are responsive to touches (e.g., a few buttons in the corner).
2. Some locations on the screen are more likely than others to be touched (e.g., specific keys of an onscreen keyboard, the icons on a home screen).
3. A few types of gestures are more commonly used than others (e.g., a motion control in a game or a zoom operation in a picture application).
These characteristics can change from application to application and from operating system to operating system.
This specification, in general, discloses a touch screen system 10. The touch screen system 10, as shown in
The phrase “uniform sampling sequence,” as used in this specification means a sampling sequence in which each node of a touch screen is sampled the same number of times per panel scan. The phrase “nonuniform sampling sequence,” means a sampling sequence in which different nodes are sampled more or less frequently than others per panel scan.
As shown by
In many traditional touch screen implementations the capacitance of some nodes changes more frequently than other nodes due to the fact that some nodes are touched more frequently than other nodes. There are a number of reasons why it may be desirable to sample the more frequently touched nodes more often than infrequently touched modes. One reason is that by sampling low probability nodes less frequently, less energy is required. Another reason is that by frequently sampling nodes with a high probability of being touched, the performance of the system can be improved. For example, when typing with an on-screen keyboard the typed material would appear on the touch screen more quickly if the screen areas associated with the keyboard were sampled more frequently . Sampling different nodes with different frequencies is referred to herein as “nonuniform sampling.”
It is common for the component layers of a touch screen system to be made by separate vendors. In view of the multiple vendors involved with the multiple layers of a touch screen system, it would be desirable to obtain information on the likelihood of a node being touched at the touch screen controller level. An initial question is thus how can this side information of the likelihood of a node being touched be obtained at the touch screen controller level 14 without coordination at the OS level 16 or the application level 18. Answers to this question are provided below.
One way of determining the likelihood that a particular part of a touch screen will be touched in the future is to determine how often it has been touched in the past.
The histogram bin values are then mapped to a likelihood or frequency with which a node 50 will be sampled during the next panel scan: nodes with higher histogram values are sampled more frequently, nodes with lower histogram values are sampled less frequently. Different mapping are possible and bounds can be placed on the highest and lowest sampling frequencies for different nodes. Regardless of the specific method used for updating the histogram 60, the result is that the histogram provides a value correlated to the relative frequency that a node will be touched based on past touches. In slightly different words, the more often a node was touched in the past, the more likely it is assumed to be touched in the future, in a similar operating environment.
The histogram idea can be expanded upon to recognize different states of use for the touch screen 12. For example, as shown by
States can thus be taken advantage of by storing more than one histogram of touch frequencies and switching between these histograms based on the current state of operation. The current state can be determined by a variety of means including:
1. Not observing any touches for a prolonged period of time to recognize a sleep state.
2. Comparing the current histogram to the saved histograms for the different states and choosing the state with the closest associated histogram as the current state.
New states can also be recognized by not finding a close match between the current histogram and any of the saved histograms.
Compressive sensing seeks to sample a signal at the underlying information rate rather than the signal bandwidth. In the IEEE article of Lou, et al., incorporated by reference above, it is shown that for a touch screen, the sampling rate can be made proportional to the number of fingers touching the screen rather than the number of nodes. Compressive sensing algorithms usually use iterative methods to take advantage of the sparsity assumption and recover the original signal. The performance of these iterative recovery methods could be improved through better initializations if the approximate locations of the touches were known ahead of time. The above described use of histograms determines the likelihood of a node being touched. As such, this can be used as an initialization for iterative compressive sensing signal recovery algorithms by choosing the most likely to be touched nodes as the initial nonzero locations in a recovery algorithm. Such recovery algorithms are known in the art as indicated, for example, in J. Tropp and A. Gilbert, “Signal recovery from random measurements via orthogonal matching pursuit,” IEEE Transactions on Information Theory, vol. 53, no. 12, pp. 4655-4666, Dec. 2007, which is hereby incorporated by reference for all that it discloses.
It will be appreciated from the above disclosure that the use of nonuniform sampling sequences can optimize the responsiveness and power of a touch screen controller 14 by reducing the sampling of nodes 50 that are unlikely to be touched and increasing the sampling of nodes 50 that are likely to be touched. Histograms 60 may be used for tracking the likelihood of a node 50 being touched and to determine the subsequent nonuniform sampling sequence, such as shown in
It will be appreciated from the above that, as shown in
It will also be appreciated that, as shown in
While certain methods and apparatus are expressly described in detail herein, variations of these methods and apparatus will be obvious to those skilled in the art after reading this disclosure. It is intended that the appended claims be broadly construed to cover all such alternative embodiments, except as limited by the prior art.