LM8300 NSC | Alldatasheet

Document overview

  • Manufacturer or author: Provided By ALLDATASHEET.COM(FREE DATASHEET DOWNLOAD SITE)
  • PDF pages: 20

Technical content

Features

n Supports 4 wire resistive touch panels n Low power standby current typically less than 2 µA at 5.5V n Maximum speed of 500 coordinate pairs per second n Automatic wake up and return to standby n 10 bit A/D n On-chip touch screen current drivers - no external driver required n UART interface n Controller configurations are stored in the internal non-volatile storage element n Touch pressure can be measured

APPLICATIONS

n Personal Digital Assistants n Smart Hand-Held Devices n Touch Screen Monitors n Point-of-Sales Terminals n KIOSK n Pagers n Cell Phones COP8™ is a trademark of National Semiconductor Corporation. PRELIMINARY October 2002 LM8300/LM8400/LM8500 Four Wire Resistive Touchscreen Controller with Brownout © 2002 National Semiconductor Corporation DS200372 www.national.com

  • This pin is available in the LM8500. It is unused in the LM8300/LM8400.

Ordering Information

Family and Feature Set Indicator No. Of Pins Package Type Temperature 8300 = Low Brownout Voltage 8400 = No Brownout 8500 = High Brownout Voltage H=4 4P i n I=4 8P i n LQ = LLP MT = TSSOP VA = PLCC 9 = 0 to +70˚C LM8300/LM8400/LM8500 www.national.com 2

www.national.com3

  • This pin is available in the LM8500. It is unused in the LM8300/LM8400. Top View Plastic Chip Package See NS Package Number V44A 20037203 * This pin is available in the LM8500. It is unused in the LM8300/LM8400. Top View See NS Package Number LQA44A 20037204 * This pin is available in the LM8500. It is unused in the LM8300/LM8400. Top View See NS Package Number MTD48 LM8300/LM8400/LM8500 www.national.com 4

2.0 Pin Descriptions

Pinouts for 44- and 48-Pin Packages Pin Name Direction Pin Description 44-Pin LLP 44-Pin PLCC 48-Pin TSSOP RESET I Reset pin, pull low to reset 6 1 1 DTR I UART Data terminal ready signal, low if not ready 72 2 WD_OUT O Watchdog output, tie to RESET pin for correct function 83 3 CLK_SET1 I Used to set if crystal is 3.3 MHz (low) or 10 MHz (floating or pulled high) 94 4 Unused2 10 5 5 Unused2 11 6 6 Unused2 12 7 7 Unused2 13 8 8 OSC_OUT O Clock oscillator output 14 9 9 OSC_IN I Clock oscillator input 15 10 10 Unused 2 16 11 11 Unused2 17 12 12 UART_TX O UART transmit pin (inverted for use with standard RS-232 drivers) 18 13 13 UART_RX I UART receive pin (inverted for use with standard RS-232 drivers 19 14 14 SHUTDOWN I Shutdown pin, puts the device in halt mode if pulled low 20 15 15 Unused2 21 16 16 Unused2 22 17 17 WAKE-UP I Used to wake up the processor from halt mode with touch on touch screen 23 18 18 X+ I/O Drives the X+ wire, also analog input when sampling 24 19 19 Y- I/O Drives the Y- wire, also analog input when sampling 25 20 20 X- I/O Drives the X- wire, also analog input when sampling 26 21 21 Y+ I/O Drives the Y+ wire, also analog input when sampling 27 22 22 Unused2 28 23 23 Unused2 29 24 24 FILTER_OUT O Analog output to the filter 30 25 25 FILTER_IN I Analog input from the filter 31 26 26 GND Digital ground 32 27 27 AGND Analog ground 33 28 28 AV CC Analog power supply, connect to filter for best performance 34 29 31 VCC Digital power supply 35 30 32 Unused2 XX 3 3 Unused2 XX 3 4 Unused2 36 31 35 Unused2 37 32 36 Unused2 38 33 37 Unused2 39 34 38 Unused2 40 35 39 LM8300/LM8400/LM8500 www.national.com5

2.0 Pin Descriptions (Continued)

Pinouts for 44- and 48-Pin Packages(Continued) Pin Name Direction Pin Description 44-Pin LLP 44-Pin PLCC 48-Pin TSSOP Unused2 41 36 40 LED Output Optional LED output, low when running, high in halt-mode 42 37 41 Unused2 34 2 4 6 Unused2 44 3 4 7 Unused2 54 4 4 8 Note 1: This is available in the LM8500 only. Note 2: These pins are for future functional expansions. LM8300/LM8400/LM8500 www.national.com 6

Distributors for availability and specifications. when operating the device at absolute maximum ratings.

3.0 Electrical Characteristics

TABLE 1. DC Electrical Characteristics (0˚C≤ TA ≤ +70˚C) Datasheet min/max specification limits are guaranteed by design, test, or statistical analysis.

Note 4: Maximum rate of voltage change must be< 0.5 V/ms. Note 5: Supply and IDLE currents are measured with CKI driven with a square wave Oscillator, CKO driven 180˚ out of phase with CKI, inputs connected to V CC and outputs driven low but not connected to a load. Note 6: The HALT mode will stop CKI from oscillating. Measurement of IDD HALT is done with device neither sourcing nor sinking current; all inputs tied to VCC; A/D converter and clock monitor and BOR disabled. Note 7: Absolute Maximum Ratings should not be exceeded. A/D Converter Electrical Characteristics (0˚C≤ TA ≤ +70˚C) (Single-ended mode only) Datasheet min/max specification limits are guaranteed by design, test, or statistical analysis. Parameter Conditions Min Typ Max Units Resolution 10 Bits DNL V CC =5 V ±1 LSB DNL V CC =3 V ±1 LSB INL V CC =5 V ±2 LSB INL V CC =3 V ±4 LSB Offset Error V CC =5 V ±1.5 LSB Offset Error V CC =3 V ±2.5 LSB Gain Error V CC =5 V ±1.5 LSB Gain Error V CC =3 V ±2.5 LSB Input Voltage Range 2.7V ≤ VCC < 5.5V 0 V CC V Analog Input Leakage Current 0.5 µA Analog Input Resistance (Note 8) 6k Ω Analog Input Capacitance 7p F Operating Current on AV CC AVCC = 5.5V 0.2 0.6 mA Note 8: Resistance between the device input and the internal sample and hold capacitance.

4.0 Functional Description

4.1 General

The LM8300/8400/8500 is a 4-wire resistive touch screen controller. The primary communication is through the built in UART operating at a baud rate of 38400. The LM8300/8400/ 8500 has the ability to measure pressure on the Z-axis, in addition to the X-Y coordinates. The device has the capability to do a 2, 5, and 13 point calibration. All calibration data is stored in the internal non- volatile storage element. In addition, all settings pertaining to the controller are stored internally. This feature negates the need for external EEPROM. The device has three built in averaging algorithms: oversam- pling, delta, and focus. These algorithms help to minimize noise and A/D variation due to noise. Refer to the averaging algorithm for a more detail explanation. These algorithms are implemented on-chip, freeing the main processor from these tasks. To further minimize noise in extremely noisy environ- ments, the device has the ability to route the signal from the touch panel to an external filtering stage before A/D conver- sions are performed. To minimize power consumption, the device can be put into power save mode. The device can be set to go into power save mode automatically or manually by pulling the external shutdown pin low.

4.2 Advanced Pin Descriptions

CLK_SET — This pin is the selection pin used to determine the operating frequency of the controller. On power up, the controller polls this pin to determine if the operating fre- quency is set to 10 MHz or 3.3 MHz. If the pin is left floating or tied high, then the operating frequency is 10 MHz. If the pin is tied low, then the operating frequency is set to 3.3 MHz. Note: This is available on the LM8500 only. SHUTDOWN — This is the external shut down pin. When pulled low, the controller goes into power saving mode. This selection pin state has higher priority than the internal power save mode settings. WAKE_UP — This pin is used to wake the controller from power save mode. When the device is in power save mode, the pin must be tied to one of X-Y lines coming from the touch screen panel. X+ — Connect to X+ terminal of the resistive screen. X- — Connect to X- terminal of the resistive screen. Y+ — Connect to Y+ terminal of the resistive screen. Y- — Connect to Y- terminal of the resistive screen. Filter_out — Analog output to external filter. The use of the external filter is controlled by sending a command byte of $A0 on the UART to the controller. Filter_in — Analog input from external filter. The use of the external filter is controlled by sending a command byte of $A0 on the UART to the controller. LED — Optional LED output. When the controller is oper- ating in normal (non power save) mode, a low is output to the pin. When the controller is in power save mode, a high is output to the pin. RESET — Reset pin. When pulled low, a manual reset is executed. For normal operation, this pin must be pulled high. Under no circumstances should the pin be left floating. Note: For the LM8400, an external reset must be used as outlined in the Brownout Reset section. TTL_TX — UART transmit pin. The signal is inverted for use with standard RS-232 drivers. TTL_RX — UART receive pin. The signal is inverted for use with standard RS-232 drivers. DTR — Data Terminal Ready signal for the UART. If a low level is detected on the pin, this signals that the UART is not ready. If a high level is detected on the pin, this signals that the UART is ready. LM8300/LM8400/LM8500 www.national.com 8

4.0 Functional Description (Continued)

pin should be connected to the RESET pin. OSC_OUT — Clock oscillator output pin. DVCC — Digital power supply. pin should be connected to a filter.

4.3 USART Framing Format

the UART set at a baud rate of 38400, 8, n, 1. bit of the data byte is reset (0). enabled, four bytes are sent. data package is sent, the 4th bit of the header byte is set (1).

2 X1 X0 Y2 Y1 Y0

4.3.2 Command Bytes

FIGURE 1. LLP Package Bottom View

(# of pixels from predicted coordinate) Set calibration points $BD 4.3.3 Advanced Command Bytes Descriptions $CA 4.3.3 Advanced Command Bytes Descriptions Set minimum pressure Toggle disable/enable external filter path $A0 $CA $00, $01 Toggle disable/enable self power-down $A2 $CA $00, $01 Toggle disable/enable echo mode $A3 $CA $00, $01 Toggle disable/enable pressure measurements $A4 $CA $00, $01 Toggle disable/enable calibration coordinate check $A5 $CA $00, $01 Wakeup $A7 Shutdown $A8 $CA Soft reset $AF $CA $CB, $CC TSC Replies Timeout $CF Re-send $CE Self test failed $CC Self test ok $CB Acknowledge $CA Calibration coordinates ok $C4 Error / buffer overrun $C8 Software version $C7 $0-$7F Data transmit $80/$90 Payload (3/4 bytes)

4.3.3 Advanced Command Bytes Descriptions

Unless otherwise mentioned, all values are in hex. $B0: Read clock-speed Reply Byte #1: $CA (Acknowledge) Byte #2: Clock readout (0 = 3.3MHz, 1 = 10MHz) CLK_SEL pin tells the firmware which oscillator speed is used. If the CLK_SEL input pin is floating or pulled high a 10.0MHz oscillator must be connected. If the pin is pulled low a 3.3MHz oscillator must be connected. This command enables the driver software to determine which oscillator speed is used with the touch screen controller, as this deter- mines the maximum coordinate pair per second data rates. Note: This is available in the LM8500 only. $B1: Read parameters Reply Byte #1: $CA (Acknowledge) Reply Byte #2: First byte in software version number, year 20 (00-99) Reply Byte #3: Communication mode (1 = stream, 2 = touchdown, 4 = liftoff) Byte #4: Wakeup on touch (0 = disabled, 1 = enabled) Reply Byte #5: Number of samples (1,2, 4, 8, 16 or 32) Byte #6: Clock readout (0 = 3.3MHz, 1 = 10MHz) Byte #7: Second byte in software version number, month (1-12) Byte #8: Third byte in software version number, day (1-31) Byte #9: Focus value (0-63) Byte #10: Max delta (0-63) Byte #11: Number of calibration coordinates (0, 2, 5 or 13) Byte #12: Toggle-flags: Bit #5: calibration coordinates check (0=disabled, 1=enabled) Bit #4: Pressure measurement (0=disabled, 1=enabled) Bit #3: Echo mode (0=disabled, 1=enabled) Bit #2: Self Power-Down mode (0=disabled, 1=enabled) Bit #1: Unused Bit #0: External filter path (0=disabled, 1=enabled) Byte #13: Pressure threshold for valid touch This command allows the user to read all the selected pa- rameters. It is primary intended to aid in debugging. This command can also be used if a configuration utility needs to determine the current setting of controller. LM8300/LM8400/LM8500 www.national.com 10

$B2: Read software version number Reply Byte #1: $C7 (Software version number) Byte #2: First byte in version number, year 20 (00-99) Byte #3: Second byte in version number, month (1-12) Byte #4: Third byte in version number, day (1-31) $B3: Read # of calibration points Reply Byte #1: $CA (Acknowledge) Byte #2: ( $00 — no calibration done,$02 — 2 points, $05 — 5 points or $0D — 13 points) $B4: Read stored calibration points Reply Byte #1: $CA (Acknowledge) Byte #2: ( $00 — no calibration done,$02 — 2 points, $05 — 5 points or $0D — 13 points) Byte #3: X-max (2 MSB for coordinate 1) Byte #4: X-min (8 LSB for coordinate 1) Byte #5: Y-max (2 MSB for coordinate 1) Byte #6: Y-min (8 LSB for coordinate 1) Continue until all coordinates have been sent. A zero is send back if calibration has not been performed and there are no data bytes. $B8: Set focus value Byte #2: Focus value (0-63) Reply Byte #1: $CA (Acknowledge) Byte #2: Focus value (0-63) The set focus command allows the setting of different values to improve touch screen focusing. Focusing is defined as the ability of the touch screen controller to detect exactly identi- cal coordinate values from measurement to measurement if the pointer on the touch screen has not moved. The focus values are equivalent to pixels of touch screen resolution. If for example a value of 2 is selected, this means that every coordinate value that is within two pixels of the previously measured coordinate value is considered to be identical to that previous value and that in this case the touch screen controller transmits the previous coordinate information. This keeps the mouse pointer steady at the point being touched, rather than "jumping around" the point. A Focus value of zero disables the focusing algorithm. The default setting is 4. $BA: Set number of samples per coordinate Byte #2: Number of samples per coordinate ($01 - 1 samples/coordinate, $02 - 2 samples/coordinate, $04 - 4 samples/coordinate, $08 - 8 samples/coordinate, $10 - 16 samples/coordinate, $20 - 32 samples/coordinate) Reply Byte #1: $CA (Acknowledge) Byte #2: Number of samples per coordinate ($01 - 1 samples/coordinate, $02 - 2 samples/coordinate, $04 - 4 samples/coordinate, $08 - 8 samples/coordinate, $10 - 16 samples/coordinate, $20 - 32 samples/coordinate) This command allows the selection of different sample num- bers per X, Y , and Z coordinates. The higher the number of samples per X, Y , and Z coordinates, the better the accuracy, but the lower the coordinates per second data rate. The default setting is 8. $BB: Set communication mode Byte #2: Communication mode ( $01 = stream,$02 = touchdown, $04 = liftoff) Reply Byte #1: $CA (Acknowledge) Byte #2: Communication mode ($01 = stream,$02 = touchdown, $04 = liftoff) See the communication modes section for a description of the stream, touchdown and liftoff modes. This command selects the communication mode. The default setting is stream mode. $BC: Set max delta Byte #2: Max delta value (0-63) Reply Byte #1: $CA (Acknowledge) Byte #2: Max delta value (0-63) See the averaging algorithms section for a detailed descrip- tion of this setting. Simply put, this command sets how much the "coordinate velocity" can change from one coordinate to the next. The default setting is 8. $BD: Set calibration points Byte #2: High nibble: Number of calibration points $01 = two,$02 = five,$04 = thirteen) Low nibble: Active calibration cross (1-13 = cross #) Reply Byte #1: $CA (Acknowledge) Byte #2: High nibble: Number of calibration points $01=two, $02=five, $04=thirtheen) Low nibble: Active calibration cross # (1-13) Refer to the calibration section for details. $BE: Set minimum pressure Byte #2: Minimum pressure value (0-127) Reply Byte #1: $CA (Acknowledge) Byte #2: Minimum pressure value (0-127) This setting controls how high the pressure (Z-axis) must be in order for samples to be accepted. Setting this value too low may result in having faulty coordinates accepted. This value is internally multiplied by two in the controller (due to the 7-bit limitation in the communication format, which can not send 8-bit values larger than 127 in one byte). The default setting is 40. $A0: Toggle disable/enable external filter path Reply Byte #1: $CA (Acknowledge) Byte #2: (0 = now disabled, 1 = now enabled) This command enable/disable external filter path. The exter- nal filter path enabled option will require the addition of a single external low pass filter (either R/C or active OpAmp based), which is then applied to the touch screen signal lines. This option can be used in high noise environments to significantly improve performance and accuracy of the touch screen controller. The default setting is filter path enabled. $A2: Toggle disable/enable self-power down Reply Byte #1: $CA (Acknowledge) Byte #2: (0 = now disabled, 1 = now enabled) This command can switch between self-power down mode enable or disabled. Refer to the Power Save Mode section for details. The default setting is Self-Power Down mode enabled. If the echo mode is enabled, any command byte send to the device will be echo back and executed. $A3: Toggle disable/enable echo mode Reply Byte #1: $CA (Acknowledge) Byte #2: (0 = now disabled, 1 = now enabled) The echo mode is available for debugging purposes. If en- abled, the touch screen controller will echo back any data that is received via the UART interface. LM8300/LM8400/LM8500 www.national.com11

The default setting is Echo mode disabled. sample the Z-axis when reading the X and Y coordinates. The default setting is pressure measurement enabled. There is no reply byte to this command. save mode it sends a shutdown command to the controller. starting up the communication again. down mode (i.e. wake-up on touchdown is disabled). received command or a buffer overrun condition occurs. a buffer overrun has occurred.

5.0 Oscillator

nent values required for various standard crystal values. Figure 2shows the crystal oscillator connection diagram. TABLE 2. Crystal Oscillator Configuration, to minimize printed circuit trace length. trace, socket, and package (which can vary from 0 to 8 pF). should be less than or equal to C1. FIGURE 2. Crystal Oscillator

6.0 Power Save Mode (Low Power

pin low, or by issuing a driver shutdown command of $A8. startup time for a given operating frequency. TABLE 3. Startup Times

10 MHz 1–10 ms

3.33 MHz 3–10 ms

7.0 Averaging Algorithm

greater the accuracy, but the lower the CPPS.

7.1 Delta Algorithm

following delta calculations. value of 0-63. The factory default is 8.

7.2 Focus Algorithm

effect of the pointer when the pointer is stationary. algorithm. The factory default is 4.

7.0 Averaging Algorithm (Continued)

7.3 Communication Modes

nate is sent out to the UART. detected on the touchscreen.

8.0 Brownout Reset

Reset feature is not available on the LM8400. set circuit for this device is shown inFigure 3. FIGURE 3. Reset Circuit using External Reset

8.0 Brownout Reset (Continued)

LM8300, Vbor = low voltage range. At this time, the internal reset will be generated. generated. In this case, the external RESET must be used.

9.0 Calibration

The device supports two, five, and thirteen point calibration. process is not performed incorrectly. in Table 4, Table 5, andTable 6respectively. FIGURE 4. Brownout Reset Operation

9.0 Calibration (Continued)

9.1 General Calibration Procedures

disabled by sending a command byte of $A5 to the device. calibration procedures is shown inFigure 8. FIGURE 8. Calibration Procedures with Coordinates Checking Enabled

9.2 Calibration Procedures with Coordinates Checking

To do TS calibration with coordinates checking enabled, first ensure the Calibration Coordinates Checking is enabled on the device. This can be accomplished by sending a com- mand byte of $B1 (Read Parameters command) and check- ing the 5th bit of the 12th reply byte is set. Alternatively, if the device is set to Calibration Coordinates Checking enabled as default, this step can be skipped. The TS driver sends the command byte to do calibration ($BD). The TS driver should wait for the reply bytes and ensure it is the same command bytes it sent. The device waits for a touch to be detected on the panel. Once a touch is detected, the device checks it against the predetermined calibration values as noted onTable 4, Table 5, andTable 6. If the detected touch is within the predefined value ( ±127 of the raw A/D value), the device will send a command of $C4 to the TS driver and store the calibration point in the internal flash. The TS driver can now send a command byte to do the next calibration point. If the detected touch is not within the predefined value, the device will send a reply byte of $C8 to the TS driver. Upon receiving this reply byte, the TS driver can resend the calibration command for the same calibration point, go the next calibration point, or abort the calibration process. Once all the calibration points are done, the device does a self-test. If the self-test was not successful, the device will send a reply byte of $CC to the TS driver. At this point, the TS driver should either notify the user to redo the calibration point or automatically redo the calibration again. If the self- test was successful, the device will send a reply byte of $CB to the TS driver.

9.3 Calibration Procedures with Coordinates Checking

To do TS calibration with coordinates checking disabled, first ensure the Calibration Coordinates Checking is disabled on the device. This can be accomplished by sending a com- mand byte of $B1 (Read Parameters command) and check- ing the 5th bit of the 12th reply byte is not set. Alternatively, if the device is set to Calibration Coordinates Checking disabled as default, this step can be skipped. The TS driver sends the command byte to do calibration ($BD). The TS driver should wait for the reply bytes and ensure it is the same command bytes it sent. The device waits for a touch to be detected on the panel. Once a touch is detected, the device save the values into the internal flash and send a reply byte of $C4 to the TS driver. The TS driver can now send a command byte to do the next calibration point. Since the Calibration Checking is disabled, the TS driver should ensure the calibration point is within the range of the calibration cross. Once all the calibration points are done, the device does a self-test. If the self-test was not successful, the device will send a reply byte of $CC to the TS driver. At this point, the TS driver should either notify the user to redo the calibration point or automatically redo the calibration again. If the self- test was successful, the device will send a reply byte of $CB to the TS driver. LM8300/LM8400/LM8500 www.national.com 18

Physical Dimensions inches (millimeters) unless otherwise noted Order Number LM8300HLQ9 or LM8400HLQ9 or LM8500HLQ9 Order Number LM8300IMT9 or LM8400IMT9 or LM85009IMT9 LM8300/LM8400/LM8500 www.national.com19

Physical Dimensions inches (millimeters) unless otherwise noted (Continued) Plastic Leaded Chip Carrier (VA) Order Number LM8300HVA9 or LM8400HVA9 or LM8500HVA9 LIFE SUPPORT POLICY NATIONAL’S PRODUCTS ARE NOT AUTHORIZED FOR USE AS CRITICAL COMPONENTS IN LIFE SUPPORT DEVICES OR SYSTEMS WITHOUT THE EXPRESS WRITTEN APPROVAL OF THE PRESIDENT AND GENERAL COUNSEL OF NATIONAL SEMICONDUCTOR CORPORATION. As used herein: 1. Life support devices or systems are devices or systems which, (a) are intended for surgical implant into the body, or (b) support or sustain life, and whose failure to perform when properly used in accordance with instructions for use provided in the labeling, can be reasonably expected to result in a significant injury to the user. 2. A critical component is any component of a life support device or system whose failure to perform can be reasonably expected to cause the failure of the life support device or system, or to affect its safety or effectiveness. National Semiconductor Americas Customer Support Center Email: new.feedback@nsc.com Tel: 1-800-272-9959 National Semiconductor Europe Customer Support Center Fax: +49 (0) 180-530 85 86 Email: europe.support@nsc.com Deutsch Tel: +49 (0) 69 9508 6208 English Tel: +44 (0) 870 24 0 2171 Français Tel: +33 (0) 1 41 91 8790 National Semiconductor Asia Pacific Customer Support Center Fax: 65-6250 4466 Email: ap.support@nsc.com Tel: 65-6254 4466 National Semiconductor Japan Customer Support Center Fax: 81-3-5639-7507 Email: nsj.crc@jksmtp.nsc.com Tel: 81-3-5639-7560 www.national.com LM8300/LM8400/LM8500 Four Wire Resistive Touchscreen Controller with Brownout National does not assume any responsibility for use of any circuitry described, no circuit patent licenses are implied and National reserves the right at any time without notice to change said circuitry and specifications.