|
|
Home | Alpha Telephone | Domain Names | Web Hosting | Get Traffic | xrEvidence | xrSoccer United States Patent
Object position detector with edge motion feature and gesture recognition Methods for recognizing gestures made by a conductive object on a touch-sensor pad and for cursor motion are disclosed. Tapping, drags, pushes, extended drags and variable drags gestures are recognized by analyzing the position, pressure, and movement of the conductive object on the sensor pad during the time of a suspected gesture, and signals are sent to a host indicating the occurrence of these gestures. Signals indicating the position of a conductive object and distinguishing between the peripheral portion and an inner portion of the touch-sensor pad are also sent to the host.
Primary Examiner: Shalwala; Bipin Assistant Examiner: Said; Mansour M. Attorney, Agent or Firm: RELATED APPLICATIONS This application is a divisional of patent application Ser. No. 08/899,317, filed Aug. 12, 1997, which is a continuation of patent application Ser. No. 08/623,483, filed Mar. 28, 1996, now U.S. Pat. No. 5,880,411, which is a continuation-in-part of application Ser. No. 08/320,158, filed Oct. 7, 1994, now U.S. Pat. No. 5,543,591, which is a continuation-in-part of application Ser. No. 08/300,387, filed Sep. 2, 1994, now U.S. Pat. No. 5,914,465, which is a continuation-in-part of application Ser. No. 08/115,743, filed Aug. 31, 1993, now U.S. Pat. No. 5,374,787, which is a continuation-in-part of application Ser. No. 07/895,934, Jun. 8, 1992 now abandoned. What is claimed is: 1. A method for recognizing a drag gesture made on a touch-sensor pad in a touch-sensing system, including the steps of: detecting a first presence of an object on the touch-sensor pad; comparing the duration of said first presence with a first reference amount of time; generating a drag gesture signal indicating the occurrence of a gesture if the duration of said first presence is less than said first reference amount of time; detecting a second presence of said object on the touch-sensor pad; comparing the duration between said first presence and second presence with a second reference amount of time; maintaining said drag gesture signal and repeatedly generating X and Y information for the duration of said second presence if the amount of time between said first presence and second presence is less than said second reference amount of time. 2. The method of claim 1 wherein said touch-sensing system sends said drag gesture signal and said X and Y information to a host. 3. The method of claim 1 wherein said X and Y information is positional information. 4. A method for recognizing a double tap gesture made on a touch-sensor pad in a touch-sensing system, including the steps of: detecting a first presence of an object on the touch-sensor pad; comparing the duration of said first presence with a first reference amount of time; generating a first signal indicating the occurrence of said gesture if the duration of said first presence is less than said first reference amount of time; terminating said first signal if a second reference amount of time passes before a second presence is detected; detecting a second presence of said object on the touch-sensor pad; comparing the duration of said second presence with a third reference amount of time; terminating said first signal if the duration of said second presence is less than said third reference amount of time; and generating a second signal indicating said second gesture after the termination of said first signal. 5. The method of claim 4 wherein said touch-sensing system sends said first signal and said second signal to a host. BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to object positioning sensing transducers and systems. More particularly, the present invention relates to object position recognition useful in applications such as cursor movement for computing devices and other applications, and especially to cursor movement with enhanced edge-motion and gesture-recognition features. 2. The Prior Art Numerous devices are available or have been proposed for use as object position detectors for use in computer systems and other applications. The most familiar of such devices is the computer "mouse". While extremely popular as a position indicating device, a mouse has mechanical parts and requires a surface upon which to roll its position ball. Furthermore, a mouse usually needs to be moved over long distances for reasonable resolution. Finally, a mouse requires the user to lift a hand from the keyboard to make the cursor movement, thereby upsetting the prime purpose, which is usually typing on the computer. Trackball devices are similar to mouse devices. A major difference, however is that, unlike a mouse device, a trackball device does not require a surface across which is must be rolled. Trackball devices are still expensive, have moving parts, and require a relatively heavy touch as do the mouse devices. They are also large in size and doe not fit well in a volume-sensitive application like a laptop computer. There are several available touch-sense technologies which may be employed for use as a position indicator. Resistive-membrane position sensors are known and used in several applications. However, they generally suffer from poor resolution, the sensor surface is exposed to the user and is thus subject to wear. In addition, resistive-membrane touch sensors are relatively expensive. A one-surface approach requires a user to be grounded to the sensor for reliable operation. This cannot be guaranteed in portable computers. An example of a one-surface approach is the UnMouse product by MicroTouch, of Wilmington, MA A two-surface approach has poorer resolution and potentially will wear out very quickly in time. Resistive tablets are taught by U.S. Pat. No. 4,680,430 to Yoshikawa, U.S. Pat. No. 3,497,617 to Ellis and many others. The drawback of all such approaches is the high power consumption and the high cost of the resistive membrane employed. Surface Acoustic Wave (SAW) devices have potential use as position indicators. However, this sensor technology is expensive and is not sensitive to light touch. In addition, SAW devices are sensitive to residue buildup on the touch surfaces and generally have poor resolution. Strain gauge or pressure plate approaches are an interesting position sensing technology, but suffer from several drawbacks. This approach may employ piezo-electric transducers. One drawback is that the piezo phenomena is an AC phenomena and may be sensitive to the user's rate of movement. In addition, strain gauge or pressure plate approaches are somewhat expensive because special sensors are required. Optical approaches are also possible but are somewhat limited for several reasons. All would require light generation which will require external components and increase cost and power drain. For example, a "finger-breaking" infra-red matrix position detector consumes high power and suffers from relatively poor resolution. There have been numerous attempts to provide a device for sensing the position of a thumb or other finger for use as a pointing device to replace a mouse or trackball. Desirable attributes of such a device are low power, low profile, high resolution, low cost, fast response, and ability to operate reliably when the finger carries electrical noise, or when the touch surface is contaminated with dirt or moisture. Because of the drawbacks of resistive devices, many attempts have been made to provide pointing capability based on capacitively sensing the position of the finger. U.S. Pat. No. 3,921,166 to Volpe teaches a capacitive matrix in which the finger changes the transcapacitance between row and column electrodes. U.S. Pat. No. 4,103,252 to Bobick employs four oscillating signals to interpolate x and y positions between four capacitive electrodes. U.S. Pat. No. 4,455,452 to Schuyler teaches a capacitive tablet wherein the finger attenuates the capacitive coupling between electrodes. U.S. Pat. No. 4,550,221 to Mabusth teaches a capacitive tablet wherein the effective capacitance to "virtual ground" is measured by an oscillating signal. Each row or column is polled sequentially, and a rudimentary form of interpolation is applied to resolve the position between two rows or columns. An attempt is made to address to problem of electrical interference by averaging over many cycles of the oscillating waveform. The problem of contamination is addressed by sensing when no finger was present and applying a periodic calibration during such no-finger-present periods. U.S. Pat. No. 4,639,720 to Rympalski teaches a tablet for sensing the position of a stylus. The stylus alters the transcapacitance coupling between row and column electrodes, which are scanned sequentially. U.S. Pat. No. 4,736,191 to Matzke teaches a radial electrode arrangement under the space bar of a keyboard, to be activated by touching with a thumb. This patent teaches the use of total touch capacitance, as an indication of the touch pressure, to control the velocity of cursor motion. Pulsed sequential polling is employed to address the effects of electrical interference. U.S. Pat. Nos. 4,686,332 and 5,149,919 to Greanias, teaches a stylus and finger detection system meant to be mounted on a CRT. As a finger detection system, its X/Y sensor matrix is used to locate the two matrix wires carrying the maximum signal. With a coding scheme these two wires uniquely determine the location of the finger position to the resolution of the wire stepping. For stylus detection, Greanias first coarsely locates it, then develops a virtual dipole by driving all lines on one side of the object in one direction and all lines on the opposite side in the opposite direction. This is done three times with different dipole phases and signal polarities. Assuming a predetermined matrix response to the object, the three measurements present a set of simultaneous equations that can be solved for position. U.S. Pat. No. 4,733,222 to Evans is the first to teach a capacitance touch measurement system that interpolates to a high degree. Evans teaches a three terminal measurement system that uses a drive, sense and electrode signal set (3 signals) in its matrix, and bases the measurement on the attenuation effect of a finger on the electrode node signal (uses a capacitive divider phenomena). Evans sequentially scans through each drive set to measure the capacitance. From the three largest responses and interpolation routine is applied to determine finger position. Evans also teaches a zeroing technique that allows "no-finger" levels to be canceled out as part of the measurement. U.S. Pat. No. 5,016,008 to Gruaz describes a touch sensitive pad that also uses interpolation. Gruaz uses a drive and sense signal set (2 signals) in the touch matrix and like Evans relies on the attenuation effect of a finger to modulate the drive signal. The touch matrix is sequentially scanned to read the response of each matrix line. An interpolation program then selects the two largest adjacent signals in both dimensions to determiner the finger location, and ratiometrically determines the effective position from those 4 numbers. Gerpheide, PCT application US90/04584, publication No. WO91/03039, U.S. Pat. No. 5,305,017 applies to a touch pad system a variation of the virtual dipole approach of Greanias. Gerpheide teaches the application of an oscillating potential of a given frequency and phase to all electrodes on one side of the virtual dipole, and an oscillating potential of the same frequency and opposite phase to those on the other side. Electronic circuits develop a "balance signal" which is zero when no finger is present, and which has one polarity if a finger is on one side of the center of the virtual dipole, and the opposite polarity if the finger is on the opposite side. To acquire the position of the finger initially, the virtual dipole is scanned sequentially across the tablet. Once the finger is located, it is "tracked" by moving the virtual dipole toward the finger once the finger has moved more than one row or column. Because the virtual dipole method operates by generating a balance signal that is zero when the capacitance does not vary with distance, it only senses the perimeter of the finger contact area, rather than the entire contact area. Because the method relies on synchronous detection of the exciting signal, it must average for long periods to reject electrical interference, and hence it is slow. The averaging time required by this method together with the necessity to search sequentially for a new finger contact once a previous contact is lost, makes this method, like those before it, fall short of the requirements for a fast pointing device that is not affected by electrical interference. It should also be noted that all previous touch pad inventions that used interpolation placed rigorous design requirements on their sensing pad. Greanias and Evans use a complicated and expensive drive, sense and electrode line scheme to develop their signal. Gruaz and Gerpheide use a two signal drive and sense set. In the present invention the driving and sensing is done on the same line. This allows the row and column sections to by symmetric and equivalent. This in turn allows independent calibration of all signal paths, which makes board layout simpler and less constraining, and allows for more unique sensor topologies. The shortcomings of the inventions and techniques described in the prior art can also be traced to the use of only one set of driving and sensing electronics, which was multiplexed sequentially over the electrodes in the tablet. This arrangement was cost effective in the days of discrete components, and avoided offset and scale differences among circuits. The sequential scanning approach of previous systems also made them more susceptible to noise. Noise levels could change between successive measurements, thus changing the measured signal and the assumptions used in interpolation routines. Finally, all previous approaches assumed a particular signal response for finger position versus matrix position. Because the transfer curve is very sensitive to many parameters and is not a smooth linear curve as Greanias and Gerpheide assume, such approaches are limited in the amount of interpolation they can perform. In prior co-pending application Ser. No. 08/115,743, filed Aug. 31, 1993, now U.S. Pat. No. 5,734,787, a two-dimensional capacitive sensing system equipped with a separate set of drive/sense electronics for each row and for each column of a capacitive tablet is disclosed. All row electrodes are sensed simultaneously, and all column electrodes are sensed simultaneously. The sensed signals are processed by analog circuitry. Of the touchpad devices currently available, only the Alps/Cirque GlidePoint includes gesture recognition. The GlidePoint supports basic tap, double-tap, and drag gestures to simulate actions on a primary mouse button. It now also supports multiple-finger gestures and there are gestures for simulating secondary button clicks. No information is known about the implementation methods employed in the GlidePoint. However, the GlidePoint is known to have difficulty with double-taps, one of the problems addressed by the present invention. The GlidePoint exhibits a hesitation on each finger-motion stroke which may be an attempt to stabilize the cursor during tap gestures. Also, the GlidePoint must rely on physical switches or extremely high gain or acceleration in order to allow drags over long distances. One touchpad product, the UnMouse, mounts a switch underneath its resistive sensor so that the user simply presses down on the pad to activate the button. Aside from requiring fragile and complex mechanical mounting, this device also is reported to be very tiring to the user. Graphics tablets operated by a pressure sensitive stylus instead of a finger are well known in the art. These devices typically use a mechanism like the "push" gesture of the present invention to simulate actuator switches. No other gestures of the sort described herein have been seen in stylus operated tablets. It is thus an object of the present invention to provide a two-dimensional capacitive sensing system equipped with a separate set of drive/sense electronics for each row and for each column of a capacitive tablet, wherein all row electrodes are sensed simultaneously, and all column electrodes are sensed simultaneously. It is a further object of the present invention to provide an electronic system that is sensitive to the entire area of contact of a finger or other conductive object with a capacitive tablet, and to provide as output the coordinates of some measure of the center of this contact area while remaining insensitive to the characteristic profile of the object being detected. It is a further object of the present invention to provide an electronic system that provides as output some measure of area of contact of a finger of other conductive object with a capacitive tablet. Yet another object of the present invention is to provide a two-dimensional capacitive sensing system equipped with a separate set of drive/sense electronics for each row and for each column of a capacitive tablet, wherein all row electrodes are sensed simultaneously, and all column electrodes are sensed simultaneously and wherein the information defining the location of a finger or other conductive object is processed in digital form. It is a further object of the present invention to provide a two-dimensional capacitive sensing system wherein all row electrodes are sensed simultaneously, and all column electrodes are sensed simultaneously and wherein the location of a finger or other conductive object within a peripheral region of a sensing plane can optionally cause cursor "edge motion" on a display screen allowing control of large cursor excursions from a small sensing plane with a single gesture. A further object of the invention is to provide for the recognition of a drag extension gesture made by a finger or other object on a touch-sensor pad in a manner which permits control of large cursor excursions from a small sensing plane with a single gesture. A further object of the invention is to provide for the recognition of gestures made by a finger or other object on a touch-sensor pad in a manner which compensates for unintended motion of the finger or other object during expression of the gesture. Yet another object of the present invention is to provide for the recognition of multiple-finger gestures and for simulating secondary button clicks. It is a further object of the present invention is to provide for the recognition of the difference between gestures made by novice and expert users. BRIEF DESCRIPTION OF THE INVENTION With the advent of very high levels of integration, it has become possible to integrate many channels of driving/sensing electronics into one integrated circuit, along with the control logic for operating them, and the interface electronics to allow the pointing device to communicate directly with a host microprocessor. The present invention uses adaptive analog techniques to overcome offset and scale differences between channels, and can thus sense either transcapacitance or self-capacitance of all tablet rows or columns in parallel. This parallel-sensing capability, made possible by providing one set of electronics per row or column, allows the sensing cycle to be extremely short, thus allowing fast response while still maintaining immunity to very high levels of electrical interference. The present invention comprises a position-sensing technology particularly useful for applications where finger position information is needed, such as in computer "mouse" or trackball environments. However the position-sensing technology of the present invention has much more general application than a computer mouse, because its sensor can detect and report if one or more points are being touched. In addition, the detector can sense the pressure of the touch. According to a preferred embodiment of the present invention, referred to herein as a "finger pointer" embodiment, a position sensing system includes a position sensing transducer comprising a touch-sensitive surface disposed on a substrate, such as a printed circuit board, including a matrix of conductive lines. A first set of conductive lines runs in a first direction and is insulated from a second set of conductive lines running in a second direction generally perpendicular to the first direction. An insulating layer is disposed over the first and second sets of conductive lines. The insulating layer is thin enough to promote significant capacitive coupling between a finger placed on its surface and the first and second sets of conductive lines. Sensing electronics respond to the proximity of a finger, conductive object, or an object of high dielectric constant (i.e. greater than about 5) to translate the capacitance changes of the conductors caused by object proximity into digital information which is processed to derive position and touch pressure information. Its output is a simple X, Y and pressure value of the one object on its surface. In all descriptions herein, fingers are to be considered interchangeable with conductive objects and objects of high dielectric constant. Different prior art pad scan techniques have different advantages in different environments. Parallel drive/sense techniques according to the present invention allow input samples to be taken simultaneously, thus all channels are affected by the same phase of an interfering electrical signal, greatly simplifying the signal processing and noise filtering. There are two drive/sense methods employed in the touch sensing technology of the present invention. According to a first and presently preferred embodiment of the invention, the voltages on all of the X lines of the sensor matrix are simultaneously moved, while the voltages of the Y lines are held at a constant voltage, with the complete set of sampled points simultaneously giving a profile of the finger in the X dimension. Next, the voltages on all of the Y lines are held at a constant voltage to obtain a complete set of sampled points simultaneously giving a profile of the finger in the other dimension. According to a second drive/sense method, the voltages on all of the X lines of the sensor matrix are simultaneously moved in a positive direction, while the voltages of the Y lines are moved in a negative direction. Next, the voltages on all of the X lines of the sensor matrix are simultaneously moved in a negative direction, while the voltages of the Y lines are moved in a positive direction. This technique doubles the effect of any transcapacitance between the two dimensions, or conversely, halves the effect of any parasitic capacitance to the ground. In both methods, the capacitive information from the sensing process provides a profile of the proximity of the finger to the sensor in each dimension. As presently preferred, both embodiments then take these profiles and derive a digital value representing the centroid for X and Y position and derive a second digital value for the Z pressure information. The digital information may be directly used by a host computer. Analog processing of the capacitive information may also be used according to the present invention. The position sensor of these embodiments can only report the position of one object on its sensor surface. If more than one object is present, the position sensor of this embodiment computes the centroid position of the combined set of objects. However, unlike prior art, because the entire pad is being profiled, enough information is available to discern simple multi-finger gestures to allow for a more powerful user interface. According to another aspect of the present invention, several power reduction techniques which can shut down the circuit between measurements have been integrated into the system. This is possible because the parallel measurement technique according to the present invention is so much faster than prior art techniques. According to a further aspect of the invention, a variety of noise reduction techniques are integrated into the system. According to yet another aspect of the present invention, a capacitance measurement technique which is easier to calibrate and implement is employed. According to two aspects of the present invention, when the presence of a finger or other conductive object is sensed within a defined peripheral region of the sensing plane, the control of cursor motion may be changed to provide "edge motion" to allow control of large cursor excursions on a display screen from a single gesture executed on a small sensing plane. According to another aspect of the invention a drag extension gesture is recognized by the host which permits the control of large cursor excursions on a display screen from a single gesture executed on a small sensing plane. According to a further object of the present invention, a number of gestures made by a finger or other object on the touch-sensor pad are recognized and communicated to a host. Recognition of whether certain gestures are made by novice or expert users is also provided. Compensation for unintended motion of the finger or other object during expression of the gestures is provided. BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is an overall block diagram of the capacitive position sensing system of the present invention. FIG. 2a is a top view of an object position sensor transducer according to a presently preferred embodiment of the invention showing the object position sensor surface layer including a top conductive trace layer and conductive pads connected to a bottom trace layer. FIG. 2b is a bottom view of the object position sensor transducer of FIG. 2a showing the bottom conductive trace layer. FIG. 2c is a composite view of the object position sensor transducer of FIGS. 2a and 2b showing both the top and bottom conductive trace layers. FIG. 2d is a cross-sectional view of the object position sensor transducer of FIGS. 2a-2c. FIG. 3 is a block diagram of sensor decoding electronics which may be used with the sensor transducer in accordance with a preferred embodiment of the present invention. FIG. 4a is a simplified schematic diagram of a charge integrator circuit which may be used in the present invention. FIG. 4b is an illustrative schematic diagram of the charge integrator circuit of FIG. 4a. FIG. 5 is a timing diagram of the operation of charge integrator circuit of FIGS. 4a and 4b. FIG. 6 is a schematic diagram of an illustrative filter and sample/hold circuit for use in the present invention. FIG. 7 is a more detailed block diagram of a presently preferred arrangement of A/D converters for use in the present invention. FIG. 8 is a block diagram of an illustrative arithmetic unit which may be used in the present invention. FIG. 9 is a block diagram of a calibration unit which may be used with the arithmetic unit of FIG. 8. FIG. 10 is a schematic diagram of a bias voltage generating circuit useful in the present invention. FIG. 11 is a diagram of the sensing plane illustrating the edge motion feature of the object position sensor of the present invention. FIG. 12A is a schematic diagram illustrating a first hardware implementation of the determination of whether a finger or other object is present in the peripheral regions of the sensing plane. FIG. 12B is a schematic diagram illustrating a first hardware implementation of the determination of whether a finger or other object is present in the peripheral regions of the sensing plane. FIG. 13 is a schematic diagram illustrating hardware implementation of the edge motion feature of the present invention. FIG. 14 is a more detailed block diagram of gesture unit 20 of FIG. 1. FIGS. 15a through 15g are timing diagrams illustrating some of the gestures which may be recognized according to the present invention. FIGS. 16a and 16b are diagrams illustrating two tap zone shapes which may be used on sensor pads according to the present invention. FIGS. 17a through 17f comprise a flowchart illustrating the operation of the tap unit of FIG. 14. FIGS. 18 through 18c comprise a flowchart illustrating the operation of the zigzag unit of FIG. 14. FIG. 19 is a timing diagram illustrating a "push" gesture according to the present invention. FIG. 20 is a flowchart illustrating the operation of the push unit of FIG. 14. FIG. 21 is a block diagram of an illustrative LiftJump suppressor circuit which may be used in gesture recognition according to the present invention. DETAILED DESCRIPTION OF A PREFERRED EMBODIMENT This application is a divisional of co-pending application Ser. No. 08/899,317, filed Aug. 12, 1997, which is a continuation of co-pending application Ser. No. 08/623,483, filed Mar. 28, 1996, which is a continuation-in-part of co-pending application Ser. No. 08/320,158, filed Oct. 7, 1994, which is a continuation-in-part of co-pending application Ser. No. 08/300,387, filed Sep. 2, 1994, which is a continuation-in-part of co-pending application Ser. No. 08/115,743, filed Aug. 31, 1993, now U.S. Pat. No. 5,374,787, which is a continuation-in-part of co-pending application Ser. No. 07/895,934, filed June 8, 1992. The present invention continues the approach disclosed in the parent applications and provides more unique features not previously available. These improvements provide a more easily integrated solution, increased sensitivity, and greater noise rejection, increased data acquisition rate and decreased power consumption. The present invention allows for continuous self calibration to subtract out the effects of environmental changes and allows for enhanced cursor control from edge motion on a sensing plane. Those of ordinary skill in the art will realize that the following description of the present invention is illustrative only and not in any way limiting. Other embodiments of the invention will readily suggest themselves to such skilled persons. The present invention brings together in combination a number of unique features which allow for new applications not before possible. Because the object position sensor of the present invention has very low power requirements, it is beneficial for use in battery operated of low power applications such as lap top or portable computers. It is also a very low cost solution, has no moving parts (and is therefore virtually maintenance free), and uses the existing printed circuit board traces for sensors. The sensing technology of the present invention can by integrated into a computer motherboard to even further lower its cost in computer applications. Similarly, in other applications the sensor can be part of an already existent circuit board. Because of its small size and low profile, the sensor technology of the present invention is useful in lop top or portable applications where volume is an important consideration. The sensor technology of the present invention requires circuit board space for only a single sensor interface chip that can interface directly to a microprocessor, plus the area needed on the printed circuit board for sensing. Referring first to FIG. 1, a simplified block diagram of the capacitive position sensing system 6 of the present invention is presented. Capacitive position sensing system 6 can accurately determine the position of a finger 8 or other conductive object proximate to or touching a sensing plane 10. The capacitance of a plurality of conductive lines running in a first direction (e.g., "X") is sensed by X input processing circuitry 12 and the capacitance of a plurality of conductive lines running in a second direction (e.g., "Y") is sensed by Y input processing circuitry 14. The sensed capacitance values are digitized in both X input processing circuitry 12 and Y input processing circuitry 14. The outputs of X input processing circuitry 12 and Y input processing circuitry 14 are presented to arithmetic unit 16, which uses the digital information to derive digital information representing the position and pressure of the finger 8 or other conductive object relative to the sensing plane 10. The X, Y, and Z outputs of arithmetic unit 16 are directed to motion unit 18 which provides the cursor motion direction signals to the host computer. Those of ordinary skill in the art will recognize, that as used herein, "host" may mean a stand-alone computer such as an IBM or compatible PC or computer made by Apple Computers, hand-held control units, personal digital assistants, remote communication devices, or the like, or to any other devices or system which can take as input the output of a touch tablet. The X, Y, and Z outputs of arithmetic unit 16 are also directed to gesture unit 20, which is used to recognize certain finger gestures performed by a user on sensing plane 10. In addition, gesture unit 20 may produce a signal to motion unit 18 to enable the edge motion feature of the present invention based on the state of gesture processing. The sensor material can be anything that allows creation of a conductive X/Y matrix of pads. This includes not only standard PC boards, but also includes but is not limited to flexible PC boards, conductive elastomer materials, silk-screened conductive lines, and piezo electric Kynar plastic materials. This renders it useful as well in any portable equipment application or in human interface where the sensor needs to be molded to fit within the hand. The sensor can be conformed to any three dimensional surface. Copper can be plated in two layers on most any surface contour producing the sensor. This will allow the sensor to be adapted to the best ergonomic form needed for any particular application. This coupled with the "light-touch" feature will make it effortless to use in many applications. The sensor can also be used in an indirect manner, i.e it can have an insulating foam material covered by a conductive layer over the touch sensing surface and be used to detect any object (not just conductive) that presses against its surface. Small sensor areas are practical, i.e., a presently conceived embodiment takes about 1.5".times.1.5" of area, however those or ordinary skill in the art will recognize that the area is scaleable for different applications. The matrix area is scalable by either varying the matrix trace spacing or by varying the number or traces. Large sensor areas are practical where more information is needed. Besides simple X and Y position information, the sensor technology of the present invention also provides finger pressure information. This additional dimension of information may be used by programs to control special features such as "brush-width modes in Paint programs, special menu accesses, etc., allowing provision of a more natural sensory input to computers. It has also been found useful for implementing "mouse click and drag" modes and for simple input gestures. The user will not even have to touch the surface to generate the minimum reaction. This feature can greatly minimize user strain and allow for more flexible use. The sense system of the present invention depends on a transducer device capable of providing position and pressure information regarding the object contacting the transducer. Referring nor to FIGS. 2a-2d, top, bottom, composite, and cross-sectional views, respectively, are shown of a presently-preferred sensing plane comprising a touch sensor array 22 for use in the present invention. Since capacitance is exploited by this embodiment of the present invention, the surface of touch sensor array 22 is designed to maximize the capacitive coupling to a finger or other conductive object. A presently preferred touch sensor array 22 according to the present invention comprises a substrate 24 including a first set of conductive traces 26 disposed on a top surface 28 thereof and run in a first direction to comprise row positions of the touch sensor array 22. A second set of conductive traces 30 are disposed on a bottom surface 32 thereof and run in a second direction preferably orthogonal to the first direction to form the column positions of the touch sensor array 22. The first and second set of conductive traces 26 and 30 are alternately in contact with periodic sense pads 34 comprising enlarged areas, shown as diamonds in FIGS. 2a-2c, any shape, such as circles, which allows them to be closely packed is equivalent for purposes of this invention. As an arbitrary convention herein, the first set of conductive traces 26 will be referred to as being oriented in the "X" or "row" direction and may be referred to herein sometimes as "X lines" and the second set of conductive traces 30 will be referred to as being oriented in the "Y" or "column" direction and may be referred to herein sometimes as "Y lines". The number and spacing of these sense pads 34 depends upon the resolution desired. For example, in an actual embodiment constructed according to the principles of the present invention, a 0.10 inch center-to-center diamond-shaped pattern of sense pads 34 disposed along a matrix of 15 rows and 15 columns of conductors is employed. Every other sense pad 34 in each direction in the pad pattern is connected to first and second sets of conductive traces 26 and 30 on the top and bottom surfaces 28 and 32, respectively of substrate 24. Substrate 24 may be a printed circuit board, a flexible circuit board or any of a number of available circuit interconnect technology structures. Its thickness is unimportant as long as contact may be made therethrough from the second set of conductive traces 30 to their sense pads 34 on the top surface 28. The printed circuit board comprising substrate 24 can be constructed using standard industry techniques. Board thickness is not important. Connections form the sense pads 34 to the second set of conductive traces 30 may be made employing standard plated-through hole techniques well known in the printed circuit board art. In an alternate embodiment of the present invention, the substrate 24 may have a thickness on the order of 0.005 to 0.010 inches. Then the sense pads 34 on the top surface 28 and the plated through holes that connect to the second set of conductive traces 30, can be omitted, further reducing the cost of the system. An insulating layer 36 is disposed over the sense pads 34 on top surface 28 to insulate a human finger or other object therefrom. Insulating layer 36 is preferably a thin layer (i.e., approximately 5 mils) to keep capacitive coupling large and may comprise a material, such as mylar, chosen for its protective and ergonomic characteristics. The term "significant capacitive coupling" as used herein shall mean capacitive coupling having a magnitude greater than about 0.5 pF. There are two different capacitive effects taking place when a finger approaches the touch sensor array 22. The first capacitive effect is trans-capacitance, or coupling between sense pads 34, and the second capacitive effect is self-capacitance, or coupling to virtual ground. Sensing circuitry is coupled to the touch sensor array 22 of the present invention and responds to changes in either or both of these capacitances. This is important because the relative sized of the two capacitances change greatly depending on the user environment. The ability of the present invention to detect changes in both self capacitance and trans-capacitance results in a very versatile system having a wide range of applications. According to the preferred embodiment of the invention, a position sensor system including touch sensor array 22 and associated position detection circuitry will detect a finger position on a matrix of printed circuit board traces via the capacitive effect of finger proximity to the touch sensor array 22. The position sensor system will report the X, Y position of a finger placed near the touch sensor array 22 to much finer resolution than the spacing between the first and second sets of conductive traces 26 and 30. The position sensor according to this embodiment of the invention will also report a z value proportional to the outline of that finger and hence indicative of the pressure with which the finger contacts the surface of insulating layer 36 over the touch sensor array 22. According to the presently preferred embodiment of the invention, a very sensitive, light-touch detector circuit may be provided using adaptive analog and digital 5 VLSI techniques. The circuit of the present invention is very robust and calibrates out process and systematic errors. The detector circuit of the present invention will process the capacitive input information and provide digital information which may be presented directly to a microprocessor. According to this embodiment of the invention, sensing circuitry is contained on a single sensor processor integrated circuit chip. The sensor processor chip can have any number of X and Y "matrix" inputs. The number of X and Y inputs does not have to be equal. The integrated circuit has a digital bus as output. In the illustrative example disclosed in FIGS. 2a-2d herein, the touch sensor array 22 has 15 traces in both the X and Y directions. The sensor processor chip thus has 15 X inputs and 15 Y inputs. An actual embodiment constructed according to the principles of the present invention employed 18 traces in the X direction and 24 traces in the Y direction. Those of ordinary skill in the art will recognize that the size of the touch sensor array 22 which may be employed in the present invention is arbitrary and will be dictated largely by design choice. The X and Y matrix nodes are driven and sensed in parallel, with the capacitive information from each line indicating how close a finger is to that node. The scanned information provides a profile of the finger proximity in each dimension. According to this aspect of the present invention, the profile centroid is derived in both the X and Y directions and is the position in that dimension. The profile curve of proximity is also integrated to provide the Z information. There are two drive and sense methods employed in the touch sensing technology of the present invention. According to a first and presently preferred embodiment of the invention, the voltages on all of the X lines of the touch sensor array 22 are simultaneously moved, while the voltages of the Y lines are held at a constant voltage. Next, the voltages on all of the Y lines of the touch sensor array 22 are simultaneously moved, while the voltages of the X lines are held at a constant voltage. This scanning method accentuates the measurement of capacitance to virtual ground provided by the finger. Those of ordinary skill in the art will recognize that the order of these two steps is somewhat arbitrary and may be reversed. According to a second drive/sense method, the voltages on all of the X lines of the touch sensor array 22 are simultaneously moved in a positive direction, while the voltages of the Y lines are moved in a negative direction. Next, the voltages on all of the X lines of the touch sensor array 22 are simultaneously moved in a negative direction, while the voltages of the Y lines are moved in a positive direction. This second drive/sense method accentuates transcapacitance and de-emphasizes virtual ground capacitance. As with the first drive/sense method, those of ordinary skill in the art will recognize that the order of these two steps is somewhat arbitrary and may be reversed. Referring now to FIG. 3, a block diagram of the presently preferred sensing circuitry 40 for use according to the present invention is presented. This block diagram, and the accompanying disclosure, relates to the sensing circuitry 40 in one dimension (X) only, and includes the X input processing circuitry 12 of FIG. 1. Those of ordinary skill in the art will appreciate that an identical circuit would be used for sensing the opposite (Y) dimension and would include the Y input processing circuitry 14 of FIG. 1. Such skilled persons will further note that the two dimensions do not need to be orthogonal to one another. For example, they can be radial or of any other nature to match the contour of the touch sensor array 22 and other needs of the system. Those of ordinary skill in the art will recognize that the technology disclosed herein could be applied as well to a one-dimensional case where only one set of conductive traces is used. The capacitance at each touch sensor array 22 node is represented by equivalent capacitors 42-1 through 42-n. The capacitance of capacitors 42-1 through 42-n comprises the capacitance of the matrix conductors and has a characteristic background value when no object (e.g., a finger) is proximate to the sensing plane 10 of the touch sensor array 22. As an object approaches the sensing plane 10 the capacitance of capacitors 42-1 through 42-n increases in proportion to the size and proximity of the object. According to the present invention, the capacitance at each touch sensor array 22 node is measured simultaneously using charge integrator circuits 44-1 through 44-n. Charge-integrator circuits 44-1 through 44-n serve to inject charge into the capacitances 42-1 through 42-n, respectively, and to develop an output voltage proportional to the capacitance sensed on the corresponding X matrix line. Thus charge-integrator circuits 44-1 through 44-n are shown as bidirectional amplifier symbols. Each charge-integrator circuit 44-1 through 44-n is supplied with an operating bias voltage by bias-voltage generating circuit 46. As used herein, the phrase "proportional to the capacitance" means that the voltage signal generated is a monotonic function of the sensed capacitance. In the embodiment described herein, the voltage is directly and linearly proportional to the capacitance sensed. Those of ordinary skill in the art will recognize that other monotonic functions, including but not limited to inverse proportionality, and non-linear proportionality such as logarithmic or exponential functions, could be employed in the present invention without departing from the principles disclosed herein. In addition current-sensing as well as voltage-sensing techniques could be employed. According to a presently preferred drive/sense method used in the present invention, the capacitance measurements are performed simultaneously across all inputs in one dimension to overcome a problem which is inherent in all prior art approaches that scan individual inputs. The problem with the prior-art approach is that it is sensitive to high frequency and large amplitude noise (large dv/dt noise) that is coupled to the circuit via the touching object. Such noise may distort the finger profile because of noise appearing in a later scan cycle but not an earlier one, due to a change in the noise level. The present invention overcomes this problem by "taking a snapshot" of all inputs simultaneously in X and then Y directions (or visa versa). Because the injected noise is proportional to the finger signal strength across all inputs, it is therefore symmetric around the finger centroid. Because it is symmetric around the finger centroid it does not affect the finger position. Additionally, the charge amplifier performs a, differential measuring function to further reject common-mode noise. Because of the nature of the charge integrator circuits 44-1 through 44-n, their outputs will be changing over time and will have the desired voltage output for only a short time. As presently preferred, filter circuits 48-1 through 48-n are implemented as sample and hold switched capacitor filters. The desired voltage is captured by the filter circuits 48-1 through 48-n. As controlled by control circuitry 56, the filter circuits 48-1 through 48-n will filter out any high frequency noise from the sensed signal. This is accomplished by choosing the capacitor for the filter to be much larger than the output capacitance of charge integrator circuits 44-1 through 44-n. In addition, those of ordinary skill in the art will recognize that the switched capacitor filter circuits 48-1 through 48-n will capture the desired voltages and store them. According to the present invention, the capacitance information obtained in voltage form from the capacitance measurements is digitized and processed in digital format. Accordingly, the voltages stored by filter circuits 48-1 through 48-n are stored in sample/hold circuits 50-1 through 50-n so that the remainder of the circuitry processes input data taken at the same time. Sample/hold circuits 50-1 through 50-n may be configured as conventional sample/hold circuits as is well known in the art. The sampled analog voltages at the outputs of sample/hold circuits 50-1 through 50-n are digitized by analog-to-digital (A/D) converters 52. As presently preferred, A/D converters 52 resolve the input voltage to a 10-bit wide digital signal (a resolution of one part in 1,024), although those of ordinary skill in the art will realize that other resolutions may be employed. A/D converters 52 may be conventional successive approximation type converters as is known in the art. Given the charge integrator circuits 44 employed in the present invention, the background level (no object present) of the charge integrator circuits 44 outputs will be about 1 volt. The .DELTA.V resulting from the presence of a finger or other object will typically be about 0.4 volt. The voltage range of the A/D converters 52 should therefore be in the range of between about 1-2 volts. An important consideration is the minimum and maximum voltage reference points for the A/D converters 52 (V.sub.min and V.sub.max). It has been found that noise will cause position jitter if these reference voltages are fixed points. A solution to this problem which is employed in the present invention is to dynamically generate the V.sub.min and V.sub.max reference voltages from reference capacitances 42-Vmin and 42-Vmax, sensed by charge integrator circuits 44-Vmin and 44-Vmax and processed by filter circuits 48 Vmin and 48-Vmax and stored in sample/hold circuits 50-Vmin and 50-Vmax. In this manner, any common mode noise present when the signals are sampled from the touch sensor array 22 will also be present in the V.sub.min and V.sub.max reference voltage values and will tend to cancel. Those of ordinary skill in the art will realize that reference capacitances 42-Vmin and 42-Vmax may either be discrete capacitors or extra traces in the touch sensor array 22. According to the present invention, the V.sub.min reference voltage is generated from a capacitor having a value equal to the lowest capacitance expected to be encountered in the touch sensor array 22 with no object present (about 12 pF assuming a 2 inch square sensor array). The V.sub.max reference voltage is generated from a capacitor having a value equal to the largest capacitance expected to be encountered in the touch sensor array 22 with an object present (about 16 pF assuming a 2 inch square sensor array). The outputs of A/D converters 52 provide inputs to arithmetic unit 16. As will be more fully disclosed with reference to FIG. 8, the function of arithmetic unit 16 is to compute the weighted average of the signals on the individual sense lines in both the X and Y directions in the touch sensor array 22. Thus, arithmetic unit 16 is shared by the X input processing circuitry 12 and the Y input processing circuitry 14 as shown in FIG. 1. Control circuitry 56 of FIG. 3 orchestrates the operation of the remainder of the circuitry. Because the system is discretely sampled and pipelined in its operation, control circuitry 56 is present to manage the signal flow. The functions performed by control circuitry 56 may be conventionally developed via what is commonly known in the art as a state machine or microcontroller. The structure and operation of the individual blocks of FIG. 3 will now be disclosed. Referring now to FIGS. 4a, 4b, and 5, a typical charge integrator circuit 44 will be described. Charge integrator circuit 44 is shown as a simplified schematic diagram in FIG. 4a and as an illustrative schematic diagram in FIG. 4b. The timing of the operation of charge integrator circuit 44 is shown in FIG. 5. These timing signals are provided by the control circuitry 56. Charge integrator circuit 44 is based on the fundamental physical phenomena of using a current to charge a capacitor. If the capacitor is charged for a constant time by a constant current, then a voltage will be produced on the capacitor which is inversely proportional to the capacitance. The capacitance to be charged is the sensor array line capacitance 42 in parallel with an internal capacitor. This internal capacitor will contain the voltage of interest. Referring now to FIG. 4a, a simplified schematic diagram of an illustrative charge integrator circuit 44 is shown. A charge integrator circuit input node 60 is connected to one of the X (or Y) lines of the touch sensor array 22. A first shorting switch 62 is connected between the charge integrator circuit input node 60 and V.sub.DD, the positive supply rail. A second shorting switch 64 is connected between the charge integrator circuit input node 60 and ground, the negative supply rail. A positive constant current source 66 is connected to V.sub.DD, the positive supply rail and to the charge integrator circuit input node 60 and through a first current source switch 68. A negative constant current source 70 is connected to ground and to the charge integrator circuit input node 60 and through a second current source switch 72. It is obvious that other high and low voltage rails could be used in place of V.sub.DD and ground. A first internal capacitor 74 is connected between V.sub.DD and output node 76 of charge integrator circuit 44. A positive voltage storage switch 78 is connected between output node 76 and input node 60. A second internal capacitor 80 has one of its plates connected to ground through a switch 82 and to output node 76 of charge integrator circuit 44 through a switch 84, and the other one of its plates connected to input node 60 through a negative voltage storage switch 86 and to V.sub.DD through a switch 88. The capacitance of first and second internal capacitors 74 and 80 should be a small fraction (i.e., about 10%) of the capacitance of the individual sensor array lines. In a typical embodiment, the sensor array line capacitance will be about 10 pF and the capacitance of capacitors 74 and 80 should be about 1 pF. According to the presently preferred embodiment of the invention, the approach used is a differential measurement for added noise immunity, the benefit of which is that any low frequency common mode noise gets subtracted out. For the following discussion, it is to be assumed that all switches are open unless they are noted as closed. First, the sensor array line is momentarily shorted to V.sub.DD through switch 62, switch 78 is closed connecting capacitor 74 in parallel with the capacitance of the sensor line. Then the parallel capacitor combination is discharged with a constant current from current source 70 through switch 72 for a fixed time period. At the end of the fixed time period, switch 78 is opened, thus storing the voltage on the sensor array line on capacitor 74. The sensor line is then momentarily shorted to ground through switch 64, and switches 82 and 86 are closed to place capacitor 80 in parallel with the capacitance of the sensor line. Switch 68 is closed and the parallel capacitor combination is charged with a constant current from current source 66 for a fixed time period equal to the fixed time period of the first cycle. At the end of the fixed time period, switch 86 is opened, thus storing the voltage on the sensor matrix line on capacitor 80. The first and second measured voltages are then averaged. This is accomplished by opening switch 82 and closing switches 88 and 84, which places capacitor 80 in parallel with capacitor 74. Because capacitors 74 and 80 have the same capacitance, the resulting voltage across them is equal to the average of the voltages across each individually. This final result is the value that is then passed on to the appropriate one of filter circuits 48-1 through 48-n. The low frequency noise, notably 50/60 Hz and their harmonics, behaves as a DC current component that adds in one measurement and subtracts in the other. When the two results are added together that noise component averages to zero. The amount of noise rejection is a function of how quickly in succession the two opposing charge-up and charge-down cycles are performed as will be disclosed herein. One of the reasons for the choice of this charge integrator circuit 44 is that it allows measurements to be taken quickly. Referring now to FIG. 4b, a more complete schematic diagram of an illustrative embodiment of charge integrator circuit 44 of the simplified diagram of FIG. 4a is shown. Input node 60 is shown connected to V DD and ground through pass gates 90 and 92, which replace switches 62 and 64 of FIG. 4a. Pass gate 90 is controlled by a signal ResetUp presented to its control input and pass gate 92 is controlled by a signal ResetDn presented to its control input. Those of ordinary skill in the art will recognize that pass gates 90 and 92, as well as all of the other pass gates which are represented by the same symbol in FIG. 4b may be conventional CMOS pass gates as are known in the art. The convention used herein is that the pass gate will be off when its control input is held low and will be on and present a low impedance connection when its control input is held high. P-Channel MOS transistors 94 and 96 are configured as a current Mirror. P-Channel MOS transistor 94 serves as the current source 66 and pass gate 98 serves as switch 68 of FIG. 4a. The control input of pass gate 98 is controlled by a signal StepUp. N-Channel MOS transistors 100 and 102 are also configured as a current mirror. N-Channel MOS transistor 100 serves as the current source 70 and pass gate 104 serves as switch 72 of FIG. 4a. The control input of pass gate 104 is controlled by a signal StepDn. P-Channel MOS transistor 106 and N-Channel MOS transistor 108 are placed in series with P-Channel MOS current mirror transistor 96 and N-Channel MOS current mirror transistor 102. The control gate of P-Channel MOS transistor 106 is driven by an enable signal EN, which turns on P-Channel MOS transistor 106 to energize the current mirrors. This device is used as a power conservation device so that the charge integrator circuit 44 may be turned off to conserve power when it is not in use. N-Channel MOS transistor 108 has its gate driven by a reference voltage Vbias, which sets the current through current mirror transistors 96 and 102. The voltage Vbias is set by a servo feedback circuit as will be disclosed in more detail with reference to FIG. 10. Those of ordinary skill in the art will appreciate that this embodiment allows calibration to occur in real time (via long time constant feedback) thereby zeroing out any long term effects due to sensor environmental changes. In a current embodiment of the invention, Vbias is common for all charge integrator circuits 44-1 through 44-n and 44-Vmax and 44-Vmin. Note that proper sizing of N-channel MOS transistors 102 and 108 may provide temperature compensation. This is accomplished by taking advantage of the fact that the threshold of N-Channel MOS transistor 108 reduces with temperature while the mobility of both N-Channel MOS transistors 102 and 108 reduce with temperature. The threshold reduction has the effect of increasing the current while the mobility reduction has the effect of decreasing the current. By proper device sizing these effects can cancel each other out over a significant part of the operating range. Capacitor 74 has one plate connected to V.sub.DD and the other plate connected to the output node 76 and to the input node 60 through pass gate 110, shown as switch 78 in FIG. 4a. The control input of pass gate 110 is driven by the control signal SUp. One plate of capacitor 80 is connected to input node 60 through pass gate 112 (switch 86 in FIG. 4a) and to V.sub.DD through pass gate 114 (switch 88 in FIG. 4a). The control input of pass gate 112 is driven by the control signal SDn and the control input of pass gate 114 is driven by the control signal ChUp. The other plate of capacitor 80 is connected to ground through N-Channel MOS transistor 116 (switch 82 in FIG. 4a) and to output node 76 through pass gate 118 (switch 84 in FIG. 4a). The control input of pass gate 118 is driven by control signal Share. Referring now to FIGS. 4a, 4b and the timing diagram of FIG. 5, the operation of charge integrator circuit 44 during one scan cycle may be observed. First the EN (enable) control signal goes active by going to 0v. This turns on the current mirrors and energizes the charge and discharge current sources, P-channel and N-channel MOS transistors 94 and 100. The ResetUp control signal is active high at this time, which shorts the input node 60 (and the sensor line to which it is connected) to V.sub.DD. The Sup control signal is also active high at this time which connects capacitor 74 and the output node 76 to input node 60. This arrangement guarantees that the following discharge portion of the operating cycle always starts from a known equilibrium state. The discharge process starts after the ResetUp control signal goes inactive. The StepDn control signal goes active, connecting N-channel MOS transistor 100, the discharge current source, to the input node 60 and its associated sensor line. StepDn is active for a set amount of time, and the negative constant current source discharges the combined capacitance of the sensor line and capacitor 74 thus lowering its voltage during that time. StepDn is then turned off. A short time later the SUp control signal goes inactive, storing the measured voltage on capacitor 74. That ends the discharge cycle. Next, the ResetDn control signal becomes active and shorts the sensor line to ground. Simultaneously the SDn and ChDn control signals become active and connect capacitor 80 between ground and the sensor line. Capacitor 80 is discharged to ground, guaranteeing that the following charge up cycle always starts from a known state. The charge up cycle starts after ResetDn control signal becomes inactive and the StepUp control signal becomes active. At this point the current charging source, P-channel MOS transistor 94, is connected to the sensor line and supplies a constant current to charge the sensor line by increasing the voltage thereon. The StepUp control signal is active for a set amount of time (preferably equal to the time for the previously mentioned cycle) allowing the capacitance to charge, and then it is turned off. The SDn control signal then goes inactive, leaving the measured voltage across capacitor 80. The averaging cycle now starts. First the voltage on capacitor 80 is level shifted. This is done by the ChDn control signal going inactive, letting one plate of the capacitor 80 float. Then the ChUp control signal goes active, connecting the second plate of the capacitor 80 to V.sub.DD. Then the Share control signal becomes active which connects the first plate of capacitor 80 to output node 76, thus placing capacitors 74 and 80 in parallel. This has the effect of averaging the voltages across the two capacitors 74 and 80, thus subtracting out common-mode noise as previously described. This average voltage is also then available on output node 76. Those of ordinary skill in the art will recognize that the environmental alternating current and other low frequency noise-canceling feature inherent in the averaging of the voltages obtained in the discharge and charge cycles is most effective when the two cycles are performed very close together in time. According to the present invention, the ChDn and ChUp signals should be asserted with respect to each other within a time period much less than a quarter of the period of the noise to be canceled in order to take advantage of this feature of the present invention. According to the present invention, two different drive/sense methods have been disclosed. Those of ordinary skill in the art will readily observe that the charge integrator circuit 44 disclosed with reference to FIGS. 4a, 4b, and 5 is adaptable to operate according to either scanning method disclosed herein. As is clear from an understanding of the operation of charge integrator circuit 44, its output voltage is only available for a short period of time and is subject to environmental noise. In order to minimize the effects of noise, a switched capacitor filter circuit 48 is used. Referring now to FIG. 6, a schematic diagram of an illustrative switched capacitor filter circuit 48 which may be used in the present invention is shown. Those of ordinary skill in the art will recognize this switched capacitor filter circuit, which comprises an input node 120, a pass gate 122 having a control input driven by a Sample control signal, a capacitor 124 connected between the output of the pass gate 122 and a fixed voltage such as ground, and an output node 126 comprising the common connection between the capacitor 124 and the output of the pass gate 122. In a typical embodiment, capacitor 124 will have a capacitance of about 10 pF. As will be appreciated by persons of ordinary skill in the art, the switched capacitor filter circuit 48 is in part a sample/hold circuit and has a filter time constant which is K times the period of sample, where K is the ratio of capacitor 124 to the sum of capacitors 74 and 80 of the charge integrator circuit 44 of FIGS. 4a and 4b to which it is connected. The switched capacitor filter circuit 48 further reduces noise injection in the system. In the preferred embodiment, K=10/2=5. Those of ordinary skill in the art will recognize that other types of filter circuits, such as RC filters, may be employed in the present invention. Referring now to FIG. 7, a more detailed block diagram of a presently preferred arrangement of A/D converters 52 of FIG. 3 is presented. There are fewer A/D converters 52 than there are lines in the touch sensor array 22, and the inputs to the A/D converters 52 are multiplexed to share each of the individual A/D converters 52 among several lines in the touch sensor array 22. The arrangement in FIG. 7 is more efficient in the use of integrated circuit layout area than providing individual A/D converters 52 for each input line. In the embodiment illustrated in FIG. 7, twenty-four conductive line traces are assumed for the touch sensor array 22 of FIGS. 2a-2d. As shown in FIG. 7, the outputs of sample/hold circuits 50-1 through 50-24 are fed to the analog data inputs of analog multiplexer 130. Analog multiplexer 130 has six outputs, each of which drives the input of an individual A/D converter 52-1 through 52-6. The internal arrangement of analog multiplexer 130 is such that four different ones of the inputs are multiplexed to each of the outputs. Analog multiplexer 130 has been conceptually drawn as six internal multiplexer blocks 132-1 through 132-6. In the example shown in FIG. 7, inputs taken from sample/hold circuits 50-1 through 50-4 are multiplexed to the output of internal multiplexer block 132-1 which drives A/D converter 52-1. Similarly, inputs taken from sample/hold circuits 50-5 through 50-8 are multiplexed to the output of internal multiplexer block 132-2 which drives A/D converter 52-2; inputs taken from sample/hold circuits 50-9 through 50-12 are multiplexed to the output of internal multiplexer block 132-3 which drives A/D converter 52-3; inputs taken from sample/hold circuits 50-13 through 50-16 are multiplexed to the output of internal multiplexer block 132-4 which drives A/D converter 52-4; inputs taken from sample/hold circuits 50-17 through 50-20 are multiplexed to the output of internal multiplexer block 132-5 which drives A/D converter 52-5; and inputs taken from sample/hold circuits 50-21 through 50-24 are multiplexed to the output of internal multiplexer block 132-6 which drives A/D converter 52-6. Analog multiplexer 130 has a set of control inputs schematically represented by bus 134. In the illustrative embodiment shown in FIG. 7, each of internal multiplexors 132-1 through 132-6 are four-input multiplexors and thus control bus 134 may comprise a two-bit bus for a one-of four selection. Those of ordinary skill in the art will recognize that the arrangement of FIG. 7 is merely one of a number of specific solutions to the task of A/D conversion from twenty-four channels, and that other satisfactory equivalent arrangements are possible. In a straightforward decoding scheme, multiplexors 132-1 through 132-6 will pass, in sequence, the analog voltages present on their first through fourth inputs on to the inputs of A/D converters 52-1 through 52-6 respectively. After the analog values have settled in the inputs of A/D converters 52-1 through 52-6, a CONVERT command is asserted on common A/D control line 136 to begin the A/D conversion process. When the A/D conversion process is complete, the digital value representing the input voltage is stored in registers 138-1 through 138-6. As presently preferred, registers 138-1 through 138-6 may each comprise a two-word register, so that one word may be read out of the registers 138-1 through 138-6 to arithmetic unit 16 while a second word is being written into the registers 138-1 through 138-6 in order to maximize the speed of the system. The design of such registers 138-1 through 138-6 is conventional in the art. Referring now to FIG. 8, a more detailed block diagram of the arithmetic unit 16 is presented. Those of ordinary skill in the art will appreciate that arithmetic unit 16 processes information from both the X and Y dimensions, i.e., from X input processing circuit 12 and Y input processing circuit 14 of FIG. 1. Before disclosing the structural configuration of arithmetic unit 16, it is helpful to understand the preferred method by which the centroid position of an object proximate to the touch sensor array 22 is determined according to the present invention. According to a presently preferred embodiment of the invention, the object position in either direction may be determined by evaluating the weighted average of the capacitances measured on the individual sense line of the touch sensor array 22. In the following discussion, the X direction is used, but those of ordinary skill in the art will recognize that the discussion applies to the determination of the weighted average in the Y direction as well. As is well known, the weighted average may be determined as follows: ##EQU1## where .DELTA.C.sub.i =C.sub.l -CO.sub.i. C.sub.i is the capacitance presently being measured on the ith trace and CO.sub.i is the value measured on that same trace at some past time when no object was present. In terms of these past and present capacitance measurements, the position can be expressed as: ##EQU2## Using the distributive property of multiplication over addition, this expression is seen to be equivalent to: ##EQU3## where the negative terms in both the numerator and denominator are offsets and represent the background value of the capacitances with no object present. If the term O.sub.N is used to represent the numerator offset and the term O.sub.D is used to represent the denominator offset, Eq. 3 may be re-written as: ##EQU4## Referring now to FIG. 8, it may be seen that arithmetic unit 16 includes X numerator and denominator accumulators 150 and 152 and Y numerator and denominator accumulators 154 and 156. The source of operand data for X numerator and denominator accumulators 150 and 152 and Y numerator and denominator accumulators 154 and 156 are the registers 138-1 through 138-6 in each (X and Y) direction of the touch sensor array 22 of FIG. 1. The X and Y denominator accumulators 152 and 156 sum up the digital results from the A/D conversions. The X and Y numerator accumulators 150 and 154 compute the weighted sum of the input data rather than the straight sum. X and Y numerator and denominator accumulators 150, 152, 154, and 156 may be configured as hardware elements or as software running on a microprocessor as will be readily understood by those of ordinary skill in the art. As may be seen from an examination of FIG. 8, X and Y numerator accumulators 150 and 154 compute the expression of Eq. 4: ##EQU5## and X and Y denominator accumulators 152 and 156 compute the expression of Eq. 4: ##EQU6## The contents of X and Y numerator and denominator offset registers 158, 160, 162, and 164 are subtracted from the results stored in the X and Y numerator and denominator accumulators 150, 152, 154, and 156 in adders 166, 168, 170, and 172. Adder 166 subtracts the offset O.sub.NX stored in X numerator offset register 158. Adder 168 subtracts the offset O.sub.DX stored in X denominator offset register 160. Adder 170 subtracts the offset O.sub.NY stored in Y numerator offset register 162. Adder 172 subtracts the offset O.sub.DY stored in Y denominator offset register 164. The numerator denominator pairs are divided by division blocks 174 and 176 to produce the X and Y position data, and the X and Y denominator pair is used by block 178 to produce Z axis (pressure) data. The function performed by block 178 will be disclosed later herein. The offsets O.sub.DX, O.sub.NX, O.sub.DY, and O.sub.NY are sampled from the contents of the X and Y numerator and denominator accumulators 150, 152, 154 and 156 when directed by calibration unit 180. Persons of ordinary skill in the art will readily appreciate that the architecture of the system of the present invention may be distributed in a number of ways, several of which involve the availability of a microprocessor, whether it be in a host computer to which the system of the present invention is connected or somewhere between the integrated circuit described herein and a host computer. Embodiments of the present invention are contemplated wherein the accumulated numerator and denominator values representing the summation terms are delivered to such a microprocessor along with the O.sub.N and O.sub.D offset values for processing, or where all processing is accomplished by a programmed microprocessor as is known in the art. Initially, the X and Y numerator and denominator accumulators 150, 152, 154, and 156 are set to zero during system startup. If the multiplexed A/D converters 52-1 through 52-6 as shown in FIG. 7 are employed, the digitized voltage data in the first word of register 138-1 (representing the voltage at the output of sample/hold circuit 50-1) is added to the sum in the accumulator and the result stored in the accumulator. In succession, the digitized voltage values stored in the first word of registers 138-2 through 138-6 (representing the voltage at the outputs of sample/hold circuits 50-5, 50-9, 50-13, 50-17, and 50-21, respectively) are added to the sums in the accumulators and the results stored in the accumulators. As previously mentioned, A/D converters 52-1 through 52-6 may at this time be converting the voltages present at the outputs of sample/hold circuits 50-2, 50-6, 50-10, 50-14, 50-18, and 50-22 and storing the digitized values in the second words of registers 138-1 through 138-6 respectively. Next, in succession, the digitized voltage values stored in the second words of registers 138-1 through 138-6 (representing the voltage at the outputs of-sample/hold circuits 50-2, 50-6, 50-10, 50-14, 50-18, and 50-22, respectively) are added to the sum in the accumulator and the result stored in the accumulator. Next, in succession, the digitized voltage values stored in the first words of registers 138-1 through 138-6 (representing the voltage at the outputs of sample/hold circuits 50-3, 50-7, 50-11, 50-15, 50-19, and 50-23, respectively) are added to the sum in the accumulator and the result stored in the accumulator, followed by digitized voltage values stored in the second words of registers 138-1 through 138-6 (representing the voltage at the outputs of sample/hold circuits 50-4, 50-8, 50-12, 50-16, 50-20, and 50-24, respectively). At this point in time, the accumulators hold the sums of all of the individual digitized voltage values. The digital values stored in the O.sub.N and O.sub.D offset registers 158, 160, 162, and 164 are now respectively subtracted from the values stored in the numerator and denominator accumulators. The division operation in dividers 174 and 176 then completes the weighted average computation. The division operation may also be performed by an external microprocessor which can fetch the values stored in the accumulators or perform the accumulations itself. As the O.sub.N and O.sub.D offset values are presently derived by an external microprocessor, the additional processing overhead presented to such external microprocessor by this division operation is minimal. Alternately, a dedicated microprocessor may be included on chip to handle these processing tasks without departing from the invention disclosed herein. The above disclosed processing takes place within about 1 millisecond and may be repeatedly performed. Current mouse standards update position information 40 times per second, and thus the apparatus of the present invention may easily be operated at this repetition rate. Because of the nature of the method employed in the present invention, an opportunity exists to provide additional noise immunity without requiring additional hardware in the system of the present invention. While it is apparent that after the above-disclosed sequence has been performed, the accumulators may be cleared and the process repeated, the values may also be allowed to remain in the accumulators. If this is done, an averaging function may be implemented to further filter out noise. According to this aspect of the invention, a number of samples are taken and run through the accumulators without clearing them at the end of the processing sequence. As presently preferred, twenty-five samples are processed before a single division result is taken for use by the system, thus greatly reducing the effects of transient system noise spikes. Those of ordinary skill in the art will recognize that the number of samples taken prior to clearing the accumulators is a matter of design choice dictated by factors such as data acquisition rates, data processing rates etc. It is preferable to provide additional filtering of the X and Y position data produced by division blocks 174 and 176 of the arithmetic unit 16 of FIG. 8. The filtering preferably occurs in between arithmetic unit 16 and motion and gesture units 18 and 20 of FIG. 1. The X and Y coordinates are separately filtered as independent numbers. Each filter is an averaging register computing a "running average" as is well known in the art. When the finger's presence is first detected, the filter register is initialized with the current quotient. In subsequent samples, the new quotient is averaged with the filter register value to produce a new filter register value. In the presently preferred embodiment, the values are equally weighted in the average, though different weightings can be used to provide stronger or weaker filtering. The sequence of values in the filter register serve as the X and Y coordinates used by the motion and gesture units 18 and 20 of FIG. 1. The system of the present invention is adaptable to changing conditions, such as component aging, changing capacitance due to humidity, and contamination of the touch surface, etc. In addition, the present invention effectively minimizes ambient noise. According to the present invention, these effects are taken into consideration in three ways. First, the offset values O.sub.N and O.sub.D are dynamically updated to accommodate changing conditions. Second, a servo-feedback circuit is provided to determine the bias voltage used to set the bias of the charge-integrator circuits 44-1 through 44-n. Third, as previously disclosed herein, the reference voltage points for V.sub.max and V.sub.min of the A/D converters 52 are also dynamically altered to increase the signal to noise margin. Referring now to FIG. 9, a block diagram of a calibration unit 180 which may be used with the arithmetic unit 16 of FIG. 8 is presented. The calibration unit 180 executes an algorithm to establish the numerator and denominator offset values by attempting to determine when no finger or other conductive object is proximate to the touch sensor array 22. As previously disclosed, the O.sub.N and O.sub.D offset values represent the baseline values of the array capacitances with no object present. These values are also updated according to the present invention since baseline levels which are too low or too high have the effect of shifting the apparent position of the object depending on the sign of the error. These values are established by selection of the values read when no object is present at the touch sensor array 22. Since there is no external way to "know" when no object is present at touch sensor array 22, an algorithm according to another aspect of the present invention is used to establish and dynamically update these offset values. When the calibration unit 180 sees a Z value which appears typical of the Z values when no finger is present, it instructs the offset registers (158, 160, 162, and 164 of FIG. 8) to reload from the current values of the X and Y numerator and denominator accumulators 150, 152, 154 and 156. According to a presently preferred embodiment of the invention, the decision to update the offset values is based on the behavior of the touch sensor array 22 in only one of the X or Y directions, but when the decision is made all four offsets (O.sub.NX, O.sub.DX, O.sub.NY, and O.sub.DY) are updated. In other embodiments of the invention, the decision to update may be individually made for each direction according to the criteria set forth herein. The calibration algorithm works by monitoring changes in a selected one of the denominator accumulator values. According to the present invention, it has been observed that the sensitivity to changes in capacitance of one of the sets of conductive lines in the touch sensor array 22 is greater than the sensitivity to changes in capacitance of the other one of the sets of conductive lines in the touch sensor array 22. Experience suggests that the set of conductive lines having the greater sensitivity to capacitance changes is the one which is physically located above the set of conductive lines in the other direction and therefore closest to the touch surface of the touch sensor array 22. The upper set of conductive lines tends to partially shield the lower set of conductive lines from capacitive changes occurring above the surface of the touch sensor array 22. The finger pressure is obtained by summing the capacitances measured on the sense lines. This value is already present in the denominator accumulator after subtracting the offset O.sub.D. A finger is present if the pressure exceeds a suitable threshold value. This threshold may be chosen experimentally and is a function of surface material and circuit timing. The threshold may be adjusted to suit the tastes of the individual user. The pressure reported by the device is a simple function f(X.sub.D, Y.sub.D) of the denominators for the X and Y directions as implemented in block 178 of FIG. 8. Possible functions include choosing one preferred denominator value, or summing the denominators. In a presently preferred embodiment, the smaller of the two denominators is chosen. This choice has the desirable effect of causing the pressure to go below the threshold if the finger moves slightly off the edge of the pad, where the X sensors are producing valid data, but the Y sensors are not, or vice versa. This acts as an electronic bezel which can take the place of a mechanical bezel at the periphery of the sensor area. In the example of FIG. 8, the Y denominator is chosen for monitoring because it is the most sensitive. The chosen denominator is referred to as Z for the purposes of the calibration algorithm. The current saved offset value for this denominator is referred to as O.sub.Z. T |