HMC5983
www.honeywell.com 11
Temperature Compensation
Temperature compensation of the measured magnetic data is enabled by default at the factory. Temperature measured
by the built-in temperature sensor will be used to compensate the sensor’s sensitivity change due to temperature based
on the sensor’s typical sensitivity temperature coefficient. The compensated data will be placed in the Data Output
Registers automatically. Temperature sensor must be enabled (set CRA7 =1) for compensation to work.
Temperature Output
HMC5983 has a built-in temperature sensor that its output can be enabled by setting bit 7 of Configuration Register A
(CRA7). This bit is disabled at power-on by default. When this feature is enabled, a temperature measurement will be
taken at each magnetic measurement and the output is placed in Temperature Output Registers (0x31 and 0x32).
Automatic Offset Compensation
HMC5983 automatically adjusts the sensor’s internal (bridge) offset to zero before each measurement is taken. This feature
allows the full dynamic range of the sensor to be available for measuring the external magnetic field. This feature is
particularly important when the gain setting is high (lower GN#) because the dynamic range is smaller at higher gain. As
long as the sensor does not saturate within the full range of the external field to be measured, higher gain usually means
better resolution and better accuracy.
MODES OF OPERATION
This device has several operating modes whose primary purpose is power management and is controlled by the Mode
Register. This section describes these modes.
Continuous-Measurement Mode
During continuous-measurement mode, the device continuously makes measurements, at user selectable rate, and places
measured data in data output registers. Data can be re-read from the data output registers if necessary; however, if the
master does not ensure that the data register is accessed before the completion of the next measurement, the data output
registers are updated with the new measurement. To conserve current between measurements, the device is placed in a
state similar to idle mode, but the Mode Register is not changed to Idle Mode. That is, MD[n] bits are unchanged. Settings
in the Configuration Register A affect the data output rate (bits DO[n]), the measurement configuration (bits MS[n]), when
in continuous-measurement mode. All registers maintain values while in continuous-measurement mode. The I²C bus is
enabled for use by other devices on the network in while continuous-measurement mode.
Single-Measurement Mode
This is the default power-up mode. During single-measurement mode, the device makes a single measurement and places
the measured data in data output registers. After the measurement is complete and output data registers are updated, the
device is placed in idle mode, and the Mode Register is changed to idle mode by setting MD[n] bits. Settings in the
configuration register affect the measurement configuration (bits MS[n]) when in single-measurement mode. All registers
maintain values while in single-measurement mode. The I²C bus is enabled for use by other devices on the network while
in single-measurement mode.
Table 2: Typical Measurement Times in Single-Measurement Mode
N Averages (MS0:1 in Config. Reg. A)
Measure Time in ms (Typical Value)
Idle Mode
During this mode the device is accessible through the I²C bus, but major sources of power consumption are disabled, such
as, but not limited to, the ADC, the amplifier, and the sensor bias current. All registers maintain values while in idle mode.
The I²C bus is enabled for use by other devices on the network while in idle mode.