1. Field of the Disclosure
This disclosure generally relates to a touch system and, more particularly, to a capacitive touch system using differential sensing and an operating method thereof.
2. Description of the Related Art
Capacitive sensors generally include a pair of electrodes configured to sense a conductor. When the conductor is present, the amount of charge transfer between the pair of electrodes can be changed so that it is able to detect whether the conductor is present or not according to a voltage variation. It is able to form a sensing matrix by arranging a plurality of electrode pairs in a matrix.
When a conductor is present, e.g. shown by an equivalent circuit 8, the conductor can disturb the electric field between the first electrode 91 and the second electrode 92 so that the amount of charge transfer Y′ is reduced. The detection circuit 94 can detect a voltage variation to accordingly identify the presence of the conductor.
As the capacitive sensor is generally applied to various electronic devices, e.g. liquid crystal display (LCD), the voltage variation detected by the detection circuit 94 can be interfered by the noise of the electronic devices to degrade the detection accuracy.
Accordingly, it is necessary to provide a way to solve the above problem.
The present disclosure provides a capacitive touch system and an operating method thereof that perform the differential operation between digital components of detection matrices of different receiving electrodes so as to reduce the noise interference.
The present disclosure provides a capacitive touch system including a drive circuit, a capacitive sensing matrix, an encoding module, a modulation module, a detection circuit, a decoding module, a first subtraction circuit and a second subtraction circuit. The drive circuit is configured to output a drive signal. The capacitive sensing matrix includes a plurality of sensing elements arranged in rows and columns. The encoding module is configured to encode the drive signal corresponding to each row of the sensing elements to output encoded drive signals. The modulation module is configured to modulate the encoded drive signals corresponding to each row of the sensing elements to concurrently output encoded and modulated drive signals to each row of the sensing elements. The detection circuit is coupled to the capacitive sensing matrix and configured to respectively generate a detection matrix according to a detection signal of each column of the sensing elements. The decoding module is configured to decode the detection matrices to output a two-dimensional detection vector corresponding to each of the sensing elements. The first subtraction circuit is configured to subtract a first digital component of the two-dimensional detection vector of a second sensing element among the plurality of sensing elements from a first digital component of the two-dimensional detection vector of a first sensing element among the plurality of sensing elements to generate a first component difference. The second subtraction circuit is configured to subtract a second digital component of the two-dimensional detection vector of the second sensing element from a second digital component of the two-dimensional detection vector of the first sensing element to generate a second component difference.
The present disclosure further provides an operating method of a capacitive touch system. The capacitive touch system includes a capacitive sensing matrix which has a plurality of drive electrodes and a plurality of receiving electrodes. The operating method includes the steps of: concurrently inputting encoded and modulated drive signals to the drive electrodes in each drive time slot of a plurality of drive time slots of a frame period of the capacitive sensing matrix; sequentially detecting the receiving electrodes of the capacitive sensing matrix within the frame period to respectively generate a detection matrix corresponding to each of the receiving electrodes; decoding the detection matrices to generate a plurality of two-dimensional detection vectors corresponding to each of the receiving electrodes, wherein each of the two-dimensional detection vectors includes a first digital component and a second digital component; sequentially performing a subtraction between first digital components of the two-dimensional detection vectors of two receiving electrodes among the plurality of receiving electrodes to generate first component differences; and sequentially performing a subtraction between second digital components of the two-dimensional detection vectors of two receiving electrodes among the plurality of receiving electrodes to generate second component differences.
The present disclosure further provides a capacitive touch system including a capacitive sensing matrix, a drive end, a detection circuit, at least one decoding module, a first subtraction circuit and a second subtraction circuit. The capacitive sensing matrix includes a plurality of drive electrodes and a plurality of receiving electrodes. The drive end is configured to concurrently input encoded and modulated drive signals to the drive electrodes in each drive time slot of a plurality of drive time slots of a frame period of the capacitive sensing matrix. The detection circuit is configured to sequentially couple to a first receiving electrode and a second receiving electrode among the plurality of receiving electrodes within the frame period, generate a first detection matrix corresponding to the first receiving electrode and generate a second detection matrix corresponding to the second receiving electrode. The at least one decoding module is configured to decode the first decoding matrix and the second decoding matrix to generate a plurality of first detection vectors corresponding to the first receiving electrode and generate a plurality of second detection vectors corresponding to the second receiving electrode. The first subtraction circuit is configured to perform a subtraction between first digital components of the first detection vectors and the second detection vectors to generate a first component difference. The second subtraction circuit is configured to perform a subtraction between second digital components of the first detection vectors and the second detection vectors to generate a second component difference.
Other objects, advantages, and novel features of the present disclosure will become more apparent from the following detailed description when taken in conjunction with the accompanying drawings.
It should be noted that, wherever possible, the same reference numbers will be used throughout the drawings to refer to the same or like parts.
Referring to
The sensing element 10 includes a first electrode 101 (e.g. a drive electrode) and a second electrode 102 (e.g. a receiving electrode), and an electric field can be produced to form a coupling capacitance 103 between the first electrode 101 and the second electrode 102 when a voltage signal is provided to the first electrode 101. The first electrode 101 and the second electrode 102 are arranged properly without particular limitations as long as the coupling capacitance 103 is formed (e.g. via a dielectric layer therebetween), wherein principles of forming the electric field and the coupling capacitance 103 between the first electrode 101 and the second electrode 102 are well known and thus are not described herein.
The drive circuit 12 is, for example, a signal generator and configured to provide a drive signal X(t) to the first electrode 101 of the sensing element 10. The drive signal X(t) is, for example, a time-varying signal such as a periodic signal. In other embodiments, the drive signal X(t) is, for example, a pulse signal such as a square wave or a triangle wave, but not limited thereto. The drive signal X(t) couples a detection signal y(t) on the second electrode 102 of the sensing element 10 through the coupling capacitance 103.
The detection circuit 13 is coupled to the second electrode 102 of the sensing element 10 and configured to receive the detection signal y(t). The detection circuit 13 modulates (or mixes) the detection signal y(t) respectively with two mixing signals so as to generate a pair of modulated detection signals I and Q, which are configured as two components of a two-dimensional detection vector (I,Q). The two mixing signals are, for example, continuous signals or vectors that are orthogonal or non-orthogonal to each other. In one aspect, the two mixing signals include a sine signal and a cosine signal.
The processor 14 is configured to calculate a scale of the pair of modulated detection signals, which is served as a norm of vector of the two-dimensional detection vector (I,Q), and compare the norm of vector with a threshold TH so as to identify a touch event. In one aspect, the processor 14 calculates the norm of vector R=√{square root over (I2+Q2)} by software. In other aspect, the processor 14 calculates the norm of vector by hardware or firmware, such as using a CORDIC (coordinate rotation digital computer) shown in
In
In
In
A detection method of the capacitive touch sensing device of the present disclosure includes the steps of: providing a drive signal to a first electrode of a sensing element; modulating a detection signal coupled to a second electrode from the drive signal through a coupling capacitance respectively with two mixing signals so as to generate a pair of modulated detection signals; and calculating a scale of the pair of modulated detection signals to accordingly identify a touch event.
Referring to
Referring to
In this embodiment, each of the sensing elements 10 (shown by circles 1011 to 10nm herein) includes a first electrode and a second electrode configured to form a coupling capacitance therebetween as shown in
The detection circuit 13 is coupled to the second electrode of a column of the sensing elements 10 through a plurality of switch devices SW1-SWm to sequentially detect a detection signal y(t) coupled to the second electrode from the drive signal X(t) through the coupling capacitance of the sensing elements 10. The detection circuit 13 respectively modulates the detection signal y(t) with two mixing signals to generate a pair of modulated detection signals, wherein details of generating the pair of modulated detection signals have been described in
The processor 14 identifies a touch event and a touch position according to the pair of modulated detection signals. As mentioned above, the processor 14 calculates a norm of vector of a two-dimensional detection vector (e.g. I and Q) formed by the pair of modulated detection signals and identifies the touch event by comparing the norm of vector with at least one threshold TH as
In an embodiment of sequential driving, when the timing controller 11 controls the drive circuit 121 to output the drive signal X(t) to the first row of sensing elements 1011-101m, the switch devices SW1-SWm are sequentially conducted such that the detection circuit 13 detects the detection signal y(t) sequentially outputted by each sensing element of the first row of sensing elements 1011-101m. Next, the timing controller 11 sequentially controls other drive circuits 122-12n to output the drive signal X(t) to every row of the sensing elements. When the detection circuit 13 detects all of the sensing elements 1011 to 10nm, a scan period is accomplished. The processor 14 identifies a position of the sensing elements that the touch event occurs as the touch position. It is appreciated that said touch position may be occurred at more than one sensing elements 10 and the processor 14 takes all positions of a plurality of sensing elements 10 as touch positions or takes one of the positions (e.g. a center or gravity center) of a plurality of sensing elements 10 as the touch position.
In some embodiments, to save the power of the capacitive touch system in
The detection circuit 13 may further include the filter and/or the amplifier to improve the signal quality. In addition, the processor 14 may be integrated with the detection circuit 13, and functions thereof are implemented by software and/or hardware.
As mentioned above, the phase shift during signal transmission caused by the capacitance on signal lines may be ignored by calculating the norm of vector of a two-dimensional detection vector. In other words, if a phase shift exists between drive signals X(t) of every channel, the phase shift may also be ignored by calculating the norm of vector of the two-dimensional detection vector. Therefore in an alternative embodiment of concurrent driving, it is able to concurrently drive different channels in the same drive time slot with a plurality of drive signals having phase shift from each other, and to identify a touch event and/or a touch position by calculating a norm of vector of two-dimensional detection vectors of every channel in the detection end. In addition, it is able to effectively use the dynamic range of ADC by phase-shifting drive signals X(t) of different channels, wherein the phase-shifting is implemented by a random phase offset or a formulated phase offset, but not limited thereto.
Referring to
The drive end 2T is configured to concurrently input encoded and modulated drive signals to a plurality of channels (or a plurality of drive electrodes D1 to Dn) in each drive time slot of a plurality of drive time slots of a scan period (or a frame period) of the capacitive sensing matrix 200. The detection end 2R is sequentially coupled to the channels (or a plurality of receiving electrodes S1 to Sn) of the capacitive sensing matrix 200 within the frame period, and configured to decode a plurality of detection matrices Md, which are obtained by detecting the channels, so as to generate a two-dimensional detection vectors corresponding to each of the channels and calculate a norm of vector of the two-dimensional detection vectors, wherein each matrix element of the detection matrices Md is a detection signal corresponding to one receiving electrode obtained in each of the drive time slots and the detection matrices Md are one-dimensional matrices. The method of generating the detection matrices Md is referred to
In addition, the detection end 2R further compares the norm of vector with a threshold so as to identify a touch event and/or a touch position (as shown in
In this embodiment, the encoded and modulated drive signals is encoded by using a Hadamard matrix, i.e. the drive end 2T encoding a drive signal X(t) by a Hadamard matrix. The detection end 2R decodes the detection matrix Md using an inverse Hadamard matrix of the Hadamard matrix. The encoded and modulated drive signals may only be phase modulated or may be phase and amplitude modulated, e.g. using quadrature amplitude modulation (QAM).
In one embodiment, the concurrent driving capacitive touch system 2 includes a drive circuit 22, an encoding module 25, a modulation module 26, the capacitive sensing matrix 200, a detection circuit 23, a decoding module 27 and a processor 24. In one embodiment, the drive circuit 22, the encoding module 25 and the modulation module 26 may be combined to form the drive end 2T; and the detection circuit 23, the decoding module 27 and the processor 24 may be combined to form the detection end 2R. In some embodiments, the drive end 2T and the detection end 2R operate synchronously, but not limited thereto.
In another embodiment, the encoding module 25 and the modulation module 26 may be combined to form a single encoding and modulation module; and the decoding module 27 may be integrated with the processor 24 or the detection circuit 23.
The drive circuit 22 is to output a drive signal X(t) to the encoding module 25, e.g. X(t)=Vd×exp(jwt), wherein Vd indicates a drive voltage value, w indicates a drive frequency and t indicates time. As described in the previous embodiment, the drive signal X(t) is not limited to a continuous signal.
The encoding module 25 is configured to encode the drive signal X(t) corresponding to each row of the sensing elements (or each drive electrode D1 to Dn) so as to output a plurality of encoded drive signals Xc(t). In one embodiment, the encoding module 25 encodes the drive signals X(t) using an encoding matrix, e.g. a Hadamard matrix. It is appreciated that as long as every channel is distinguishable by encoding, other encoding matrices may be used. In addition, a size of the encoding matrix is determined by a number of channels.
The modulation module 26 is configured to perform the phase modulation on the encoded drive signals Xc(t) corresponding to each row of the sensing elements (or each drive electrode D1 to Dn) so as to concurrently output encoded and modulated drive signals to each row of the sensing elements (or each drive electrode D1 to Dn) and said phase modulation is configured to allow the encoded and modulated drive signals inputted into each row of the sensing elements to have a phase shift from each other. In this manner, it is able to decrease the input voltage of the analog-to-digital (ADC) converter in the detection circuit 23 (as
For example, the encoding matrix may use equation (1) as an example and each matrix element is indicated by ars, wherein the subscript “r” of each matrix element ars is associated with each drive time slot (e.g. K1 to Kn) and the subscript “s” of each matrix element ars is associated with each channel.
The operation of the modulation module 26 may be represented mathematically by a diagonal matrix shown in equation (2), wherein x1 to xn are complex numbers and preferably have a phase shift from each other. x1 to xn are configured to perform the phase modulation on different channels respectively. When the quadrature amplitude modulation (QAM) is used as a modulation mechanism, x1 to xn have an amplitude shift and a phase shift from each other, wherein the subscript of x1 to xn is associated with each channel.
Referring to
As mentioned above, the capacitive sensing matrix 200 includes a first row of sensing elements 2011 to 201n, a second row of sensing elements 2021 to 202n, . . . and a nth row of sensing elements 20n1 to 20nn (i.e. channels 1 to n). The drive signals X(t)a11x1, X(t)a12x2, . . . X(t)a1nxn are respectively inputted into the first row of sensing elements 2011 to 201n, the second row of sensing elements 2021 to 202n, . . . and the nth row of sensing elements 20n1 to 20nn in the first time slot k=1. The drive signals inputted into each row of the sensing elements in other time slots k=2 to k=n are also shown in
As shown in
The method of generating each matrix element (I1+jQ1) to (In+jQn) of the detection matrix Md is, for example, referred to
Therefore, after one scan period (i.e. one frame), the detection signal y(t) from every column of the sensing elements of the capacitive sensing matrix 200 may be represented by X(t)×[encoding matrix]×[modulation matrix]×[reactance matrix] as shown in equation (3) mathematically, wherein matrix elements of the encoding matrix are determined according to the encoding method being used; matrix elements of the modulation matrix are determined according to the modulation mechanism being used; and matrix elements of the reactance matrix are determined according to the capacitive sensing matrix 200. As mentioned above, the detection circuit 23 includes at least one integrator (as shown in
Therefore, two-dimensional detection vectors corresponding to each column of the sensing elements outputted by the detection circuit 23 after one scan period may be represented by a detection matrix Md=[(I1+jQ1) (I2+jQ2) . . . (In+jQn)]T, wherein (I1+jQ1) is the two-dimensional detection vector obtained according to the detection signal y(t) of one column (e.g. the second column) of the sensing elements in the first drive time slot k=1. As the encoded and modulated drive signals X1(tk) to Xn(tk) are respectively inputted into every channel in the first drive time slot k=1, the two-dimensional detection vector (I1+jQ1) contains the superposition of detection signals of all channels in the first drive time slot k=1 and is a superposed detection vector. Similarly, (I2+jQ2) is the two-dimensional detection vector obtained according to the detection signal y(t) of one column of the sensing elements in the second drive time slot k=2 and is a superposed detection vector of all channels in the second drive time slot k=2; . . . ; (In+jQn) is the two-dimensional detection vector obtained according to the detection signal y(t) of one column of the sensing elements in the nth drive time slot k=n and is a superposed detection vector of all channels in the nth drive time slot k=n.
For decoupling the superposed detection vectors of every channel, the detection circuit 23 sends the detection matrix Md to the decoding module 27 for decoding to generate a two-dimensional detection vector corresponding to every sensing element (e.g. 2011 to 20nn). For example, the decoding module 27 outputs two-dimensional detection vectors of every channel (i.e. the sensing element) in one column (e.g. the second column) of the sensing elements as shown by equation (4), wherein the two-dimensional detection vector corresponding to channel 1 of the second column of the sensing elements is represented by (i12+jq12), the two-dimensional detection vector corresponding to channel 2 of the second column of the sensing elements is represented by (i22+jq22), . . . and the two-dimensional detection vector corresponding to channel n of the second column of the sensing elements is represented by (in2+jqn2), wherein i and q are two digital components of the two-dimensional detection vectors, and (i12+jq12) to (in2+jqn2) are decoupled detection vectors. In
Finally, the processor 24 calculates a norm of vector of each of the two-dimensional detection vectors, e.g. (i11+jq11) to (inn+jqnn), and compares the obtained norm of vector with a threshold TH as shown in
Accordingly, after one scan period, the processor 24 identifies a touch event and/or a touch position on the capacitive sensing matrix 200 according to a comparison result of comparing nxn norm of vectors with the threshold TH, wherein n is the size of the sensing matrix.
In addition, when the drive signal X(t) is also amplitude modulated in this embodiment, the processor 24 may further include an automatic level control (ALC) to eliminate the amplitude shift. For example, the control parameter of the ALC when the capacitive sensing matrix 200 is not touched is previously stored in the processor 24 (or an additional memory) to, for example, allow the detection results of every sensing element to be substantially identical. Accordingly, when a touch occurs, it is able to identify the touch event accurately.
In addition, as mentioned above, each of the sensing elements (2011 to 20nn) includes a first electrode 101 and a second electrode 102 configured to form a coupling capacitance 103 (as shown in
Referring to
As shown in
As described in the previous embodiment, the drive end 2T is configured to concurrently output encoded and modulated drive signals X1(tk)-Xn(tk) to the drive electrodes D1-Dn within each drive time slot of a plurality of drive time slots (e.g. K1-Kn) of a frame period of the capacitive sensing matrix 200 in operation. For example, it is shown herein that a plurality of drive circuits 121-12n concurrently output a plurality of encoded and modulated drive signals X1(tk)-Xn(tk) to the drive electrodes D1-D1.
In
The filter 15 is, for example, a programmable bandpass filter and configured to filter the detection signal y(t) to improve the signal-to-noise ratio. The ADC 133 is coupled between the capacitive sensing matrix 200 and the detection circuit 23, and configured to convert the detection signal y(t) to a digital detection signal yd(t). In the present disclosure, as the digital detection signal td(t) is a digitized signal of the detection signal y(t), the digital detection signal td(t) is referred to detection signal in some places herein.
Within the frame period, the detection circuit 23 is sequentially coupled to every receiving electrode S1 to Sn of the capacitive sensing matrix 200, e.g. a first receiving electrode S1 and a second receiving electrode S2, so as to generate a first detection matrix corresponding to the first receiving electrode S1 and generate a second detection matrix corresponding to the second receiving electrode S2, wherein the first receiving electrode S1 is adjacent to the second receiving electrode S2.
The decoding modules 27 and 27′ decode the first detection matrix and the second detection matrix (e.g. Md) to generate a plurality of first detection vectors, e.g. (i11+iq11) to (in1+jqn1), corresponding to the first receiving electrode and generate a plurality of second detection vectors, e.g. (i12+iq12) to (in2+jqn2), corresponding to the second receiving electrode as shown in
The difference between the second embodiment and the first embodiment is that the detection end 2R of the second embodiment further includes a first subtraction circuit 281 configured to perform a subtraction operation between a first digital component (e.g. i11) of the first detection vectors (e.g. i11+jq11) and a first digital component (e.g. i12) of the second detection vectors (e.g. i12+jq12) to generate a first component difference Δ i=i11−i12, and includes a second subtraction circuit 282 configured to perform a subtraction operation between a second digital component (e.g. q11) of the first detection vectors and a second digital component (e.g. q12) of the second detection vectors to generate a second component difference Δ q=q11−q12.
In this embodiment, the first digital component, e.g. i11, is also referred to a first digital component of a two-dimensional detection vector associated with the sensing element 2011, the first digital component, e.g. i12, is also referred to a first digital component of a two-dimensional detection vector associated with the sensing element 2012, the second digital component, e.g. q11, is also referred to a second digital component of a two-dimensional detection vector associated with the sensing element 2011, and the second digital component, e.g. q12, is also referred to a second digital component of a two-dimensional detection vector associated with the sensing element 2012, wherein the sensing element 2011 and the sensing element 2012 are two adjacent sensing elements in two adjacent columns of the sensing elements as shown in
More specifically, in the present disclosure, the first subtraction circuit 281 and the second subtraction circuit 282 are configured to respectively calculate the subtraction operation between digital components of the detection vectors outputted by two adjacent receiving electrodes, e.g. sequentially calculating the subtraction operation between receiving electrodes S1 and S2, between receiving electrodes S2 and S3, . . . , and between receiving electrodes Sn-1 and Sn. A reason to perform the subtraction is that the noise interference on two adjacent receiving electrodes in a capacitive sensing matrix is similar such that it is able to effectively eliminate external noise interference by the subtraction operation.
To improve the detection accuracy, in this embodiment the capacitive touch system further includes a memory element 29 configured to store a first base component difference Δibs between a first base component (e.g. Δi11_bs) of the first detection vector (i.e. two-dimensional detection vector) and a second base component (e.g. Δi12_bs) of the second detection vector (i.e. two-dimensional detection vector), and store a second base component difference Δqbs between a second base component (e.g. Δq11_bs) of the first detection vector (i.e. two-dimensional detection vector) and a second base component (e.g. Δq12_bs) of the second detection vector (i.e. two-dimensional detection vector), wherein the first base component difference Δibs and the second base component difference Δqbs are taken as ideal values for eliminating fixed noise in the signal and stored in the memory element 29 as a form of lookup table (as shown in Table 1). The memory element 29 is, for example, a volatile memory or buffer.
The detection end 2R further includes a third subtraction circuit 283 and a fourth subtraction circuit 284. The third subtraction circuit 283 is configured to subtract the first base component difference Δibs from the first component difference Δi to generate a third component difference Δi′. The fourth subtraction circuit 284 is configured to subtract the second base component difference Δqbs from the second component difference Δq to generate a fourth component difference Δq′.
Finally, the processor 14 is configured to calculate a norm of vector √{square root over (Δi′2+Δq′2)} of the third component difference Δi′ and the fourth component difference Δq′. The processor 14 compares the norm of vector √{square root over (Δi′2+Δq′2)} with at least one threshold to identify a touch event, as shown in
More specifically, in the second embodiment, the processor 14 does not directly calculate norm of vectors of the two-dimensional detection vectors (i11+jq11) to (inn to jqnn) outputted by the decoding module 27. The processor 14 first performs the subtraction operation between digital components of the two-dimensional detection vectors associated with adjacent sensing elements and then calculates norm of vectors of the differential digital components.
Referring to Table 1, it is an example of the second embodiment of the present disclosure in which 6 receiving electrodes S1-S6 are taken as an example for illustration. It is appreciated that a number of the receiving electrodes and values provided in Table 1 are only intended to illustrate but not to limit the present disclosure. It should be mentioned that although Table 1 takes one row of the sensing elements as an example for illustration, the operation of other rows of the sensing elements are identical.
Int(n) in the second row refers to initial values of first base components of the two-dimensional detection vectors of the sensing elements of every receiving electrode S1 to S6, e.g. Int(1)=i16_bs to Int(6)=i16_bs, Int(1)=i21_bs to Int(6)=i26_bs, . . . , Int(1)=in1_bs to Int(6)=in6_bs, when the capacitive sensing matrix is not touched. Int(n) is detected in an initialization procedure such as a startup procedure or reset procedure.
Qnt(n) in the third row refers to initial values of second base components of the two-dimensional detection vectors of the sensing elements of every receiving electrode S1 to S6, e.g. Qnt(1)=q11_bs to Qnt(6)=q16_bs, Qnt(1)=q21_bs to Qnt(1)=q26_bs, . . . , Qnt(1)=qn1_bs to Qnt(6)=qn6_bs, when the capacitive sensing matrix is not touched. Qnt(n) is also detected in the initialization procedure.
The fourth row is a variation ratio R of the touched component with respect to the non-touch component of the two-dimensional detection vectors.
It(n) in the fifth row refers to current values of first digital components of the two-dimensional detection vectors of the sensing elements of every receiving electrode S1 to S6, e.g. It(1)=i11 to It(6)=i16, It(1)=i21 to It(6)=i26, . . . , It(1)=in1 to It(6)=in6, when the capacitive sensing matrix is touched. Int(n) is detected during operation, and It(n)=Int(n)×R.
Qt(n) in the sixth row refers to current values of second digital components of the two-dimensional detection vectors of the sensing elements of every receiving electrode S1 to S6, e.g. Qt(1)=q11 to Qt(6)=q16, Qt(1)=q21 to Qt(6)=q26, . . . , Qt(1)=qn1 to Qt(6)=qn6, when the capacitive sensing matrix is touched. Qt(n) is detected during operation, and Qt(n)=Qnt(n)×R.
Basically, Int(n) and It(n) as well as Qnt(n) and Qt(n) are detected in the same way only Int(n) and Qnt(n) being detected in a non-touched condition whereas It(n) and Qt(n) being detected in a touched condition. Therefore, Int(n) and Qnt(n) are served as base values of It(n) and Qt(n).
Δibs in the seventh row refers to the first base component difference between first base components of the two-dimensional detection vectors of the sensing elements of two adjacent receiving electrodes when the capacitive sensing matrix is not touched, e.g. i11_bs−i12_bs, i12_bs−i13_bs, . . . , i15_bs−i16_bs, and other rows are similar. That is, Δibs=Int(n)−Int(n+1) which is previously calculated by, for example, the first subtraction circuit 281 and stored in the memory element 29.
Δqbs in the eighth row refers to the second base component difference between second base components of the two-dimensional detection vectors of the sensing elements of two adjacent receiving electrodes when the capacitive sensing matrix is not touched, e.g. q11_bs−q12_bs, q12_bs−q13_bs, . . . , q15_bs−q16_bs, and other rows are similar. That is, Δqbs=Qnt(n)−Qnt(n+1) which is previously calculated by, for example, the second subtraction circuit 282 and stored in the memory element 29.
Δi in the ninth row refers to the first component difference between first digital components of the two-dimensional detection vectors of the sensing elements of two adjacent receiving electrodes when the capacitive sensing matrix is touched, e.g. i11−i12, i12−i13, . . . , i15−i16, and other rows are similar. That is, Δi=It(n)−It(n+1) which is a current component difference and calculated by, for example, the first subtraction circuit 281 during the system operation.
Δq in the tenth row refers to the second component difference between second digital components of the two-dimensional detection vectors of the sensing elements of two adjacent receiving electrodes when the capacitive sensing matrix is touched, e.g. q11−q12, q12−q13, . . . , q15−q16, and other rows are similar. That is, Δq=Qt(n)−Qt(n+1) which is a current component difference and calculated by, for example, the second subtraction circuit 282 during the system operation.
Δi′ in the eleventh row is obtained by a subtraction between the first component difference Δi and the first base component difference Δibs, and calculated by, for example, the third subtraction circuit 283 during the system operation. This operation is to calculate a difference between the measurement value and the initial value. The first component difference Δi is a current measurement value and the first base component difference Δibs is temporarily stored in the memory element 29. It should be mentioned that although Table 1 shows that Δi′=Δi−Δibs, it is only intended to illustrate but not to limit the present disclosure. In another embodiment, Δi′ is calculated by Δi−Δibs. In this case, only the sign of Δi′ is reversed and the operation is similar.
Δq′ in the twelfth row is obtained by a subtraction between the second component difference Δq and the second base component difference Δqbs, and calculated by, for example, the fourth subtraction circuit 284 during the system operation. This operation is to calculate a difference between the measurement value and the initial value. The second component difference Δq is a current measurement value and the second base component difference Δqbs is temporarily stored in the memory element 29. It should be mentioned that although Table 1 shows that Δq′=Δq−Δqbs, it is only intended to illustrate but not to limit the present disclosure. In another embodiment, Δq′ is calculated by Δq−Δqbs. In this case, only the sign of Δq′ is reversed and the operation is similar.
The thirteenth row is a norm of vector √{square root over (Δi′2+Δq′2)} of Δi′ and Δq′ and is calculated by the processor 14. A sign of the norm of vector is determined by two-dimensional vectors (Δibs, Δqbs), (Δi,Δq) and (Δi′,Δq′). The method of determining a sign of a difference of two two-dimensional vectors {right arrow over (u)}=(u1,u2) and {right arrow over (v)}=(v1,v2) is defined as sign({right arrow over (u)}−{right arrow over (v)})≡sign({right arrow over (u)}×{right arrow over (v)})=sign((u2×v1)−(u1×v2)). When a value of sign((u2×v1)−(u1×v2)) is larger than 0, the sign is positive; whereas when the value of sign((u2×v1)−(u1×v2)) is smaller than 0, the sign is negative. In this embodiment, the sign of the norm of vector is determined by sign((Qnt(n+1)×Int(n))−(Int(n+1)×Qnt(n)) and sign((Δqbs×Δi)−(Δq×Δibs) together.
By using the differential sensing of this embodiment, a number of the norm of vectors is less than a number of the receiving electrodes by 1. Accordingly, it is preferably to adjust the norm of vectors in the thirteenth row to recover the number of the norm of vectors to be identical to that of the receiving electrodes. Firstly, a value associated with the last electrode (e.g. S6) is set to 0 as in the fourteenth row. Then, start from the last value of the fourteenth row (i.e. 0), the value of the fourteenth row is added to a previous value in the thirteenth row to obtain a cumulative sum, i.e. 0+(−851)=−851, (−851)+(−1531)=−2382, (−2382)+251=−2131, (−2131)+430=−1701 and (−1701)+453=−1248.
In an assumption that the variation caused by a touch is a positive value, and thus the norm of vectors should be larger than or equal to 0. In one embodiment, a smallest value of the cumulative sum in the fourteenth row is adjusted to 0, and other cumulative sums are adjusted together to obtain the adjusted norm of vectors in the fifth row. For example, herein each of the cumulative sums in the fourteenth row is added by 2382 to obtain the adjusted norm of vectors in the fifteenth row. It should be mentioned that the method of calculating the adjusted norm of vectors is not limited to that given herein. For example, it is also possible to set a value associated with the first electrode (e.g. S1) to 0 and then calculate in an opposite direction without particular limitations as long as a number of the norm of vectors is recovered and values of the norm of vectors are larger than or equal to 0.
As mentioned above, as every sensing element of the capacitive sensing matrix can have different variations when being touched, if different thresholds (e.g. TH shown in
In some embodiment, it is able to further compensate the adjusted norm of vectors in the fifteenth row corresponding to every sensing element such that the processor 14 may compare the compensated norm in the seventeenth row of vectors with a single threshold.
The sixteenth row provides a compensation factor 228/{right arrow over (Int(n)2+Qnt (n)2)}. The compensated norm of vectors in the seventeenth row is arranged as (adjusted norm of vectors×compensation factor)/214. It is appreciated that the method of compensating the adjusted norm of vectors is not limited to that given herein.
Finally, the processor 14 compares the compensated norm of vectors with at least one predetermined threshold to identify a touch event and a touch position. In this embodiment, the operations from the thirteenth to the seventeenth rows are performed by the processor 14 and implemented by software and/or hardware.
Referring to
For example in the steps S94 and S95, the first subtraction circuit 281 sequentially calculates (i11−i12), (i12−i13), (i13−i14) . . . to obtain first component differences Δi; and the second subtraction circuit 282 sequentially calculates (q11−q12), (q12−q13), (q13−q14) . . . to obtain second component differences Δb as shown in Table 1 to accordingly implement the step of sequentially performing a subtraction between digital components of the two-dimensional detection vectors of two adjacent receiving electrodes among the plurality of receiving electrodes.
In the step S92, as shown in
The memory element 29 sequentially stores (e.g. in the initialization procedure) first base component difference Δibs of first base components of the two-dimensional detection vectors of two adjacent receiving electrodes among the receiving electrodes S1 to Sn, and stores second base component difference Δqbs of second base components of the two-dimensional detection vectors of two adjacent receiving electrodes among the receiving electrodes S1 to Sn as shown in Table 1.
The third subtraction circuit 283 then calculates a third component difference Δi′ by subtracting the first base component difference Δibs from the first component difference Δi. The fourth subtraction circuit 284 then calculates a fourth component difference Δq′ by subtracting the second base component difference Δqbs from the second component difference Δq.
Finally, the processor 29 calculates a norm of vector {right arrow over (Δi′2+Δq′2)} of the third component difference Δi′ and the fourth component difference Δq′ to obtain one norm of vector corresponding to each sensing element, i.e. total n×n norm of vectors. The processor 29 then compares the norm of vectors with at least one threshold (as shown in
Although the above embodiments are illustrated by taking mutual capacitance system as an example, the present disclosure is not limited thereto. More specifically, when the encoded and modulated drive signals X1(tk) to Xn(tk) are inputted into the drive electrodes D1 to Dn and the capacitive touch system is configured as a mutual capacitance system, the first receiving electrode and the second receiving electrode are two of the receiving electrodes S1 to Sn. When the encoded and modulated drive signals X1(tk) to Xn(tk) are inputted into the drive electrodes D1 to Dn and the capacitive touch system is configured as a self capacitance system, the first receiving electrode and the second receiving electrode are two of the drive electrodes D1 to Dn.
It should be mentioned that although two adjacent sensing elements of two adjacent columns of sensing elements (or two adjacent receiving electrodes) are taken as an example herein, it is only intended to illustrate but not to limit the present disclosure. In other embodiments, said two sensing elements (or two receiving electrodes) are not adjacent to each other and separated by at least one other sensing element (or other receiving electrode).
As mentioned above, when capacitive sensors are applied to different electronic devices, they are interfered by the noise of the electronic devices to degrade the detection accuracy. Therefore, the present disclosure further provides a capacitive touch system (
Although the disclosure has been explained in relation to its preferred embodiment, it is not used to limit the disclosure. It is to be understood that many other possible modifications and variations can be made by those skilled in the art without departing from the spirit and scope of the disclosure as hereinafter claimed.
Number | Name | Date | Kind |
---|---|---|---|
9389742 | Crandall | Jul 2016 | B2 |
20100060591 | Yousefpor | Mar 2010 | A1 |
20120056841 | Krenik | Mar 2012 | A1 |
20140071082 | Singh | Mar 2014 | A1 |
20140204053 | Crandall | Jul 2014 | A1 |
20150002463 | Kanazawa | Jan 2015 | A1 |
20160062494 | Zuber | Mar 2016 | A1 |