Difference between revisions of "Multimeter ICs"
Uwe Hermann (talk | contribs) |
|||
Line 13: | Line 13: | ||
|- | |- | ||
| [http://www.cyrustek.com.tw | | [http://www.cyrustek.com.tw Cyrustek] | ||
| [http://www.cyrustek.com.tw/spec/ES51922.pdf ES51922] | | [http://www.cyrustek.com.tw/spec/ES51922.pdf ES51922] | ||
| RS232, TX only, 19230 baud, 7o1 | | RS232, TX only, 19230 baud, 7o1 | ||
| Data is sent via the '''SDO''' pin. Data logging can be en/disabled via '''RS232''' pin. | | Data is sent via the '''SDO''' pin. Data logging can be en/disabled via '''RS232''' pin. Parsing utilities listed in [[Cyrustek ES51922]]. | ||
|- | |- |
Revision as of 21:22, 1 April 2013
This page lists some information about ICs commonly used in various multimeters (DMMs).
Overview
Many multimeters use a special-purpose multimeter IC internally. This table lists those chips, as they're often directly responsible for the protocol and data format of the PC logging functionality of a multimeter.
Vendor | Device | Builtin PC interface | Comments |
---|---|---|---|
Cyrustek | ES51922 | RS232, TX only, 19230 baud, 7o1 | Data is sent via the SDO pin. Data logging can be en/disabled via RS232 pin. Parsing utilities listed in Cyrustek ES51922. |
Fortune Semiconductor | FS9721_LP3 | RS232, TX only, 2400 baud, 8n1 | Data is sent via the TXD pin. Data logging can be en/disabled via ENTX pin. |
Fortune Semiconductor | FS9922_DMM4 | RS232, TX only, 2400 baud, 8n1 (?) | Data is sent via the TXD pin. Data logging can be en/disabled via TXEN pin (?) and the REL/RS232 pin (?). |
Intersil | ICL7106 | ? | |
Intersil | ICL7136 | ? | |
Intersil | ICL7139/ICL7149 | none (?) | |
MASTECH | M343-01 | ? | |
Maxim | MAX130/131 | ? | |
Maxim | MAX133/134 | ? | |
Metex | KS57C2016 | ? | Possibly a relabel'd Samsung KS57C2016 4-bit microcontroller. |
New Japan Radio | NJU9207 | none |
Fortune Semiconductor FS9721_LP3
Protocol
The chip periodically sends 14-byte packets at 2400 baud, 8n1. The upper nibble of each byte indicates the byte number. The payload is composed of the lower nibbles, and is a 1-1 mapping of the LCD segments. The downside to this protocol structure is that transmission errors in the LSB nibbles cannot be detected. There is no checksum or CRC in the packet. The 4 user-defined bits can have different meaning on different multimeters using this IC.
Packet structure:
Byte | Bits 7-4 | Bit 3 | Bit 2 | Bit 1 | Bit 0 |
---|---|---|---|---|---|
0 | 0x1 | AC | DC | Auto | RS232 |
1 | 0x2 | Negative | 1A | 1B | 1C |
2 | 0x3 | 1D | 1E | 1F | 1G |
3 | 0x4 | DP1 | 2A | 2B | 2C |
4 | 0x5 | 2D | 2E | 2F | 2G |
5 | 0x6 | DP2 | 3A | 3B | 3C |
6 | 0x7 | 3D | 3E | 3F | 3G |
7 | 0x8 | DP3 | 4A | 4B | 4C |
8 | 0x9 | 4D | 4E | 4F | 4G |
9 | 0xa | u | n | k | Diode |
10 | 0xb | m | % | M | Beep |
11 | 0xc | Farads | Ohms | Rel | Hold |
12 | 0xd | A | V | Hz | Low battery |
13 | 0xe | User bit 3 | User bit 2 | User bit 1 | User bit 0 |
Segment lettering:
C | ||
B | G | |
F | ||
A | E | |
D |
Fortune Semiconductor FS9721B
TODO.
Fortune Semiconductor FS9922-DMM3
TODO.
Fortune Semiconductor FS9922-DMM4
The Fortune Semiconductor FS9922-DMM4 (datasheet) is a widely used 6000-count auto-ranging DMM chip: it takes input from the various controls on the front panel, drives the LCD display, and can communicate its readings via a serial port.
Protocol
TODO
Metex 14-byte ASCII
Protocol
Various multimeters from Metex (and rebadged ones) use this common 14-byte packet based ASCII protocol. The actual multimeter ICs in the devices have different names (e.g. "MASTECH M343-01" or "Metex KS57C2016") but they all use the same common protocol format.
The serial port settings can vary from device to device, e.g. 600/1200 baud, 7n2, RTS low, DTR high.
Every time the host sends a (any?) character to the DMM (most software packages send a D/0x44), it returns 14 ASCII bytes containing the measurement mode, value, and units. Even with continuous packet requests, the IC will only send a packet when a new measurement is available.
There is no additional other information about the multimeter status returned in the packets (e.g. no low-battery bit, no relative/min/max/hold bits, and so on).
Packet structure
Byte(s) | Description |
---|---|
1-2 | Measuring mode (DC, AC, OH, CA, TE, DI, ...) |
3 | Always a space (?) |
4 | Sign ('-' or ' ', i.e. a minus or a space) |
5-9 | Decimal point and current measurement value (Examples: 10.00, 0L, 3.999) |
10-13 | Unit (Examples: V, mV, A, mA, kOhm, MOhm, nF, ...) |
14 | Carriage return (13/0x0d) |
Example packets
01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 | 13 | 14 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
D | C | - | 0 | 0 | 0 | . | 0 | V | \r | ||||
A | C | 0 | 0 | . | 0 | 0 | A | \r | |||||
C | A | 0 | . | 0 | 7 | 1 | n | F | \r | ||||
O | H | O | . | L | M | O | h | m | \r |