Part Number Hot Search : 
BUK95 FCA22N60 4LVC2G AO4800AL BFXXXX H50N60 B1100LB 1N30B
Product Description
Full Text Search
 

To Download HMC5983 Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  3 - axis digital compass ic HMC5983 the honeywell HMC5983 is a temperature compensated three - axis integrated circuit magnetometer . this surface - mount , multi - chip module is designed for low - field magnetic sensing for applications such as automotive and personal navigation, vehicle detection, and pointing. the HMC5983 includes our sta te - of - the - art , high - resolution hmc 1 1 8 x series magnetoresistive sensors plus an asic containing amplifi cation, automatic degaussing s trap driver s, offset cancellation, an d a 12 - bit adc that enables 1 to 2 compass heading accuracy. the i2c or spi serial bus allows for eas y interface . the HMC5983 is a 3 .0 x 3.0 x 0.9 mm surface mount 16 - pin leadless chip carrier ( lcc ) . the HMC5983 utilizes honeywells anisotropic magnetoresi stive (amr) technology th at provides advantages over other magnetic sensor technologies. honeywells anisotropic, directional sensors excel in linearity, low hysteresis, null output and scale factor stability over temperature, and with very low cross - axis sensitivity . these sensors solid - state construction is designed to measure both the direction and the magnitude of magnetic fields, from mi lli - g auss to 8 g auss. honeywells magnetic sensors are among the most sensitive and reliable low - field sensors in t he industry. features benefit ? 3 - axis magnetoresistive sensor s and asic in a 3.0x3.0x0.9mm lcc surface mount package ? small s ize for h ighly integrated products. just a dd a m icro - controller interface, plus t wo e xternal smt capacitors d esigned for h igh v olume, c ost s ensitive oem designs . easy to a ssemble & c ompatible with high speed smt assembly . ? temperature compensated data output and temperature output ? automatically m aintains s ensors s ensitivity u nder w ide o perating t emperature r ange ? automatic offset compensation ? maximizes s ensor s f ull d ynamic r ange and r esolution ? 12 - bit adc coupled with low noise amr sensors achieves 2 milli - gauss field resolution ? enables 1 to 2 d egree c ompass h eading a ccuracy ? i2c (standard, fast, high - speed modes) or spi digital interface ? high - speed i nterface s for fast data communications. i2c up to 3 .4 m hz and spi up to 8.0 m hz ? fast 220 hz maximum output rate ? enables pedestrian navigation an d lbs applications ? built - in sel f test ? enables l ow - c ost f unctionality t est after a ssembly in p roduction ? low voltage operations (2.16 to 3.6v) and low power consumption (100 a ) ? compatible for b attery p owered a pplications ? built - in strap drive circuit s ? set/ r eset and o ffset s trap d rivers for d egaussing, s elf t est, and o ffset c ompensation . eliminates sensor calibration necessary for other magnetic sensor technologi es. ? lead free package construction ? rohs complianc e ? wide magnetic field range (+/ - 8 oe) ? sensors c an b e u sed in s trong m agnetic f ield e nvironments with a 1 to 2 d egree c ompass h eading a ccuracy ? software and algorithm suppo rt available ? compass ing heading, hard iron, soft iron, and auto calibration l ibraries a vailable advanced information
HMC5983 2 www.honeywell. com specifications ( * tested and specified at 25 c except stated otherwise. ) characteristics conditions* min typ max units power supply supply vol tage vdd referenced to a gnd vdd io referenced to dgnd 2. 1 6 1. 71 2.5 1.8 3. 6 vdd+0.1 volts volts average current draw idle mode measurement mode ( 7.5 hz odr; n o measurement a verag e, ma1:ma0 = 00 ) specified at: vdd = 2.5v, vddio = 1.8v - - 2 1 0 0 - - a a performance field range full scale (fs) - 8 + 8 gauss mag dynamic range 3 - bit gain control 1 8 gauss sensitivity (gain) vdd=3.0v, gn=0 to 7, 12 - bit adc 230 1370 lsb/g auss digital resolution vdd=3.0v, gn=0 to 7, 1 - lsb, 1 2 - bit adc 0.73 4.35 milli - gauss noise floor (field resolution) vdd=3.0v, gn=0, no measurement average, standard deviation 100 samples (see typical performance graphs below) 2 milli - gauss linearity 2.0 gauss input range 0.1 % fs h ysteresis 2.0 gauss input range 2 5 ppm cross - axis sensitivity test conditions: cross field = 0.5 gauss, happlied = 3 gauss 0.2% %fs/gauss output rate (odr) continuous measurment mode single measurement mode 0.75 220 160 hz measure ment period from receiving command to data ready 6 ms turn - on time ready for i2c commands analog circuit ready for measurements 200 50 s ms gain tolerance all gain/dynamic range settings 5 % i2c address 8 - bit read address 8 - bit wri te address 0x3d 0x3c hex clock rate controlled by i2c /spi master i2c spi 3 400 8000 khz i2c hysteresis hysteresis of schmitt trigger inputs on scl and sda - fall (vddio=1.8v) rise (vddio=1.8v) 0.2* vddio 0.8* vddio volts self te st x & y axes z axis 1.16 1.08 gauss x & y & z axes (gn=5) positive bias x & y & z axes (gn=5) negative bias 243 - 575 575 - 243 lsb temperature sensor accuracy 3 at t > 0c 3 at t = - 25c 3 at t = - 40c 7 11 14 c sensitivity tempco t a = - 40 to 8 5 c, c ompensated o utput temperature sensor on - 0. 0 3 ( 3 =0. 12 ) %/ c
HMC5983 www.honeywell.com 3 characteristics conditions* min typ max units general esd voltage human body model (all pins) charged device model (all pins) 2000 750 volts operating temperature ambient - 30 85 c storage temperature ambient, unbiased - 40 125 c reflow classification msl 3, 260 c peak temperature package size length and width 2.85 3.00 3.15 mm package height 0.8 0.9 1.0 mm package weight 18 mg absolute maximum ratings ( * tested at 25 c except stated otherwise.) characteristics min max units supply voltage vdd - 0.3 4.8 v olts supply voltage vdd io - 0.3 4.8 v olts reflow classification msl 3, 260 c peak temperature pin configurations table 1: pin configurations pin name description 1 scl /spi_sck serial clock C i2c master/slave clock or spi serial clock 2 vdd power supply (2.16v to 3.6v) 3 nc no t to be connected 4 spi_cs chip sele ct line for spi (active low) . tie to vdd io for i2c interface 5 spi_sdo spi serial data out 6 i2c /~ spi i2c / spi selection pin. connect to vdd for i2c (also connect spi_cs to vdd io ) . connect to gnd for spi . 7 nc no t to be connected 8 setp set/re set strap positive C s/r capacitor (c2) connection 9 soc start of conversion (leading edge active) connect to ground when this function/pad is not used in application. 10 c1 reservoir capacitor (c1) connection 11 gnd supply ground 12 setc s/r capacito r (c2) connection C driver side 13 vdd io io power supply (1.71v to vdd) 14 nc no t to be connected . no internal connection. 15 drdy data ready , interrupt pin. internally pulled high. optional connection. low for >200 sec when data are placed in the d ata output registers . 16 sda /spi_sdi serial data C i2c master/slave data or spi serial d ata in or spi serial d ata i/o (sdi/ o) for 3 - wire interface
HMC5983 4 www.honeywell. com top view (looking through) arrow indicates direction of magnetic field that generates a positive ou tput reading in normal measurement configuration. package outlines package drawing HMC5983 (16 - pin lpcc, dimensions in millimeters)
HMC5983 www.honeywell.com 5 mounting considerations the following is the recommend printed circuit board (pcb) footprint for the HMC5983 . layou t considerations besides keeping all components that may contain ferrous materials (nickel, etc.) away from the sensor on both sides of the pcb , i t is also recommend ed that there is no conducting copper under/near the sensor in any of the pcb layers. see recommended layout below. i2c layout examples: notice that the one trace under the sensor in the dual supply mode is not expected to carry active current since it is for p in 4 pull - up to vddio. power and ground plan es are removed under the sensor to min imize possible source of magnetic noise. for best results, use non - ferrous materials for all exposed copper coding.
HMC5983 6 www.honeywell. com *layout examples are for i2c ( dual supply and single supply ) modes only . pcb pad definition and traces the HMC5983 is a fine pi tch lcc package . refer to previous figure for recommended pcb footprint for proper package centering. si ze the traces between the HMC5983 and the external capacitors (c1 and c2) to handle the 1 ampere peak current pulses with low voltage drop on the trace s. stencil design and solder paste a 4 mil stencil and 100% paste coverage is recommended for the electrical contact pads. reflow assembly this device is classified as msl 3 with 260 c p eak reflow t emperature. as specified by jedec, parts with an msl 3 rating require baking prior to soldering if the part is not kept in a continuously dry (< 10% rh) environment before assembly. refer to table 4 - 1 reference conditions for drying mounted or unmounted smd packages in the ipc/jedec standard j - std - 033 hand ling, packing, shipping and use of moisture/reflow sensitive surface mount devices for additional information. no special reflow prof ile is required for HMC5983 , which is compatible with lead eutectic and lead - free solder paste reflow profiles. honeywell r ecommends adherence to solder paste manufac turers guidelines. hand soldering is not recommended. built - in self test can be used to verify device functionalities after assembly. external capacitors the two external capacitors should be ceramic type const ruction with low esr characteristics. the exact esr values are not critical but values less than 200 milli - ohms are recommended. reservoir capacitor c1 is nominally 4.7 f in capacitance, with the set/reset capacitor c2 nominally 0.22 f in capacitance. lo w esr characteristics may not be in many small smt ceramic capacitors (0402), so be prepared to up - size the capacitors to gain low esr characteristics.
HMC5983 www.honeywell.com 7 internal schematic diagram HMC5983
HMC5983 8 www.honeywell. com dual supply reference design ( i2c ) single suppl y reference design ( i2c )
HMC5983 www.honeywell.com 9 dual supply reference design (spi) single supply reference design (spi)
HMC5983 10 www.honeywell. com performance the following graph ( s ) highlight HMC5983 s performance . typical noise floor (field resolution) basic device operation anisotropic magneto - resistive sensors the honeywell HMC5983 magnetoresistive sensor circuit is a trio of sensors and application specific support circuits to measure magnetic fields. with power supply applied, the sensor con verts any incident magnetic field in the sensitive axis directions to a differential voltage output. the magnetoresistive sensors are made of a nickel - iron (permalloy) thin - film and patterned as a resistive strip element. in the presence of a magnetic fiel d, a change in the bridge resistive elements causes a corresponding change in voltage across the bridge outputs. these resistive elements are aligned together to have a common sensitive axis (indicated by arrows i n the pinout diagram ) that will provide po sitive voltage change with magnetic fields increasing in the sensitive direction. because the output is only proportion al to the magnetic field component along its axis , additional sensor bridges are placed at orthogonal directions to permit accurate measu rement of magnetic field in any orientation . self test to check the HMC5983 for proper operation, a self test feature is incorporated in which the sensor is internally excited with a nominal magnetic field ( in either positive or negative bias configurat ion) . this field is then measured and reported. this function is enabled and the polarity is set by bits ms[n] in the configuration register a . an internal current source generate s a dc current (about 10 ma) from the vdd supply. this dc current is appl ie d to the offset strap s of the magneto - resistive sensor, which creates an artificial magnetic field on the sensor. the difference of this measurement and the measurement of the ambient field will be put in the data output register for each of the three axe s. by using this built - in function, the manufacturer can quickly verify the sensors full functionality after the assembly without additional test setup. the self test results can also be used to estimate/compensate the sensors sensitivity drift due to te mperature. for e ach self t est m easurement, the asic: 1. sends a set p ulse 2. takes one m easurement (m1) 3. sends the (~10 ma) offset current to generate the (~1.1 gauss) offset field and takes another m easurement (m2) 4. puts the difference of the two measurement s in s en sors data output r egister: output = [m2 C m1] ( i.e. o utput = o ffset f ield o nly) see self test operation section later in this datasheet for additional details . 0 0.5 1 1.5 2 2.5 3 0 1 2 3 4 5 6 7 r e s o l u t i o n - s t d d e v 1 0 0 r e a d i n g s ( m g a ) gain HMC5983 resolution expon. (1) expon. (2) expon. (4) expon. (8) 1 avg 2 avg 4 avg 8 avg
HMC5983 www.honeywell.com 11 power m anagement this device has two different domains of power supply. the first one is vdd that is the power supply for internal operations and the second one is vddio that is dedicated to io interface. it is possible to work with vddio equal to vdd ; s ingle s upply mode, or with vddio lower than vdd allowing HMC5983 to be compatible with other devices on board. communication bus interface this device will be connected to a serial interface bus as a slave device under the control of a master device, such as the processor. control of th is device is carried out via i2c or spi interfa ces. use pin 6 ( i2c /~ spi ) to select between i2c and spi interface modes . i2c interface this device is compliant with i2c - bus specification , document number: 9398 393 40011. as an i2c compatible device, this device has a 7 - bit serial address and su pports i2c protocols. this device support s standard , fast, and high speed modes, 100khz , 400khz, a nd 3 400khz , respectively . external pull - up resistors are required to support all these modes. activities required by the master (register read and write) have priority over internal activities, such as the measurement. the purpose of this priority is to not keep the master waiting and the i2c bus engaged for longer than necessary . spi interface this device is compliant with both 4 - wire and 3 - wire spi interface standards. selection 3 - wire mode is by setting sim (spi serial interface mode selection) bit (mr2) in mode register to 1. see spi communication protocol section later in this datasheet for additional details. internal clock the device has an i nternal clock for internal digital logic functions and timing management. this clock is not available to external usage. h - bridge for set/reset strap drive the asic contains large switching fets capable of delivering a large but brief pulse to the set/re set strap of the sensor. t his strap is largely a resistive load. there is no need for an external set/reset circuit. the controlling of the set/reset function is done automatically by the asic for each measurement. one half of the difference from the mea surements taken after a set pulse and after a reset pulse will be put in the data output register for each of the three axes. by doing so, the sensors internal offset and its temperature dependence is removed/cancelled for all measurements. the set/reset pulses also effectively remove the past magnetic history (magnetism) in the sensor, if any. for each m easurement, the asic: 1. sends a set p ulse 2. takes one m easurement (mset) 3. sends a reset p ulse 4. takes another m easurement (mreset) 5. puts the following resu lt in sensors data output r egister: output = [mset C mreset] / 2 charge current limit the current that reservoir capacitor (c1) can draw when charging is limited for both single supply and dual supply configuration s . this prevents drawing down the supply voltage (vdd).
HMC5983 12 www.honeywell. com temperature compensation temperature compensation of the measured magnetic data is enabled by default at the factory. temperature measured by the built - in temperature sensor w ill be used to compensate the sensors sensitivity chang e due to temperature based on the sensors typical sensitivity tem p erature co efficient . the compensated data will be placed in the data output regi sters automatically. temperature sensor must be enabled (set cra7 =1) for compensation to work. temperatur e 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 ea ch 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 all ows 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 smal ler at higher gain. as long as the sensor does not satura te 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 co ntrolled 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. d ata 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 con serve current between measurements, the device is placed in a state similar to idle mode, but the m ode register is not changed to i dle m ode . that is, md[n] bits are unchanged. settings in the c onfiguration r egister 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 i2c bus is enabled for use by other devices on the network in while continuous - measurement mo de. 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 u p dated, the device is placed in idle mode, and the m ode r egister 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 maint ain values while in single - measurement mode. the i2c bus is enabled for use by other devices on the network while in single - measurement mode. idle mode during this mode the device is accessible through the i2c bus, but major sources of power consumpt ion are disabled, such as, but not limited to, the adc, the amplifier, and the sensor bias current. all registers maintain values while in idl e mode. the i2c bus is enabled for use by other devices on the network while in idle mode.
HMC5983 www.honeywell.com 13 registers thi s device is controlled and configured via a number of on - chip registers, which are described in this section. in the following descriptions, set implies a logic 1, and reset or clear implies a logic 0, unless stated otherwise. register list the table b elow lists the registers and their access. all address locations are 8 bits. table2: register list address location name access 00 0x00 configuration register a read/write 01 0x01 configuration register b read/write 02 0x02 mode register read/write 03 0x03 data output x msb register read 04 0x04 data output x lsb register read 05 0x05 data output z msb register read 06 0x06 data output z lsb register read 07 0x07 data output y msb register read 08 0x08 data output y lsb register read 09 0x09 status register read 10 0x0a identification register a read 11 0x0b identification register b read 12 0x0c identification register c read 49 0x31 temp erature output msb register read 50 0x32 temp erature output l sb register read register access thi s section describes the process of reading from and writing to this device. the devices uses an address pointer to indicate which register location is to be read from or written to. these pointer locations are sent from the master to this slave device an d succeed the 7 - bit address (0x1e) plus 1 bit read/write identifier , i.e. 0x3d for read and 0x3c for write . to minimize the communication between the master and this device, the address pointer updated automatically without master intervention. the regist er pointer will be incremented by 1 automatically after the current register has been read successfully. the address pointer value itself cannot be read via the i2c bus. any attempt to read an invalid address location returns 0s, and any write to an i nvalid address location or an undefined bit within a valid address location is ignored by this device. to move the address pointer to a random register location, first issue a write to that register location with no data byte following the commend. fo r example, to move the address pointer to register 10, send 0x3c 0x0a.
HMC5983 14 www.honeywell. com configuration register a the configuration register is used to configure the device for setting the data output rate and measurement configuration. cra0 through cra7 indicate bit lo cations, with cra denoting the bits that are in the configuration register. cra7 denotes the first bit of the data stream. the number in parenthesis indicates the default value of that bit. cra default is 0x10. table 3: configuration register a cra7 cra6 cra5 cra4 cra3 cra2 cra1 cra0 ( 0 ) ma1 ( 0 ) ma0 ( 0 ) do2 (1) do1 (0) do0 (0) ms1 (0) ms0 (0) table 4: configuration register a bit designations location name description cra7 ts set this bit to enable temperature sensor. temperature sensor will be measured at each magnetic measurement. enable temperature sensor for automatic compensation of sensitivity over temperature. cra 6 to cra5 ma1 to ma0 select number of s ample s averaged (1 to 8) per measurement output . 00 = 1 (default) ; 01 = 2; 10 = 4; 11 = 8 cra4 to cra2 do2 to do0 data output rate bits. these bits set the rate at which data is written to all three data output registers. cra1 to cra0 ms1 to ms0 measurement configuration bits. these bits define the measurement flow of the device, specifically w hether or not to incorporate an applied bias into the measurement. the table below shows all selectable output rates in continuous measurement mode . all three channels shall be measured within a given output rate. other output rate s with maximum rate of 1 60 hz can be achieved by monitoring drdy interrupt pin in single measurement mode. table 5: data output rates do2 do1 do0 typical data output rate (hz) 0 0 0 0. 7 5 0 0 1 1 .5 0 1 0 3 0 1 1 7.5 1 0 0 15 ( d efault) 1 0 1 30 1 1 0 75 1 1 1 220
HMC5983 www.honeywell.com 15 tab le 6: measurement modes ms1 ms0 measurement mode 0 0 normal measurement configuration ( d efault). in normal measurement configuration the device follows normal measurement flow. the positive and negative pins of the resistive load are left floating and high impedance. 0 1 positive bias configuration for x , y, and z axes . in this configuration, a positive current is forced across the resistive load for all three axes. 1 0 negative bias configuration for x , y and z axes . in this configuration, a negativ e current is forced across the resistive load for all three axes. 1 1 temperature sensor only. magnetic sensor will not be enabled during measurement. configuration register b the configuration register b for setting the device gain. crb0 through cr b7 indicate bit locations, with crb denoting the bits that are in the configuration register. crb7 denotes the first bit of the data stream. the number in parenthesis indicates the default value of that bit. crb default is 0x 2 0. table 7: configuration b register crb7 crb6 crb5 crb4 crb3 crb2 crb1 crb0 gn2 (0) gn1 (0) gn0 (1) (0) (0) (0) (0) (0) table 8 : configuration register b bit designations locatio n name description crb7 to crb5 gn2 to gn0 gain configuration bits. these bits configure the gain for the device. the gain configuration is common for all channels. crb4 to crb0 n/a th ese bit s must be cleared for correct operation.
HMC5983 16 www.honeywell. com the table below shows nominal gain settings. use the gain column to convert counts to gauss . the digital resolu tion column is the theoretical v alue in term of milli - gauss per count (lsb ) which is the inverse of the values in the gain column . the effective resolution of the usable s ignal also depends o n the noise floor of the system, i.e. effective resolution = max ( digital r esolution, noise floor) choose a lower gain value (higher gn#) when total field strength causes overflow in one of the data output registers (saturation) . note that the very first measurement after a gain change maintains the same gain as th e previous setting. t he new gain setting is effective from the second measurement and on. table 9: gain settings gn2 gn1 gn0 recommended sensor field range gain ( lsb / gauss) digital resolution (mg/ls b ) output range 0 0 0 0. 88 ga 1370 0.73 0xf800 C C C C C C C C C C C C C C C C
HMC5983 www.honeywell.com 17 m ode register the mode register is an 8 - bit register from which data can be read or to which data can be writt en. this register is used to select the operating mode of the device. mr0 through mr7 indicate bit locations, with mr denoting the bits that are in the mode register. mr7 denotes the first bit of the data stream. the number in parenthesis indicates the default value of that bit. mode register default is 0x01. table 10 : mode register mr7 mr6 mr5 mr4 mr3 mr2 mr1 mr0 ( 0 ) (0) (0) (0) (0) (0) md1 ( 0 ) md0 ( 1 ) table 11 : mode register bit designations location name description mr7 hs set this pin to enable i2c high speed mode, 3400 khz. mr6 n/a clear this bit for correct operation. mr5 lp lowest power mode. when set, odr=0.75 hz, and averaging = 1. mr4 n/a this bit has no functionality. mr3 n/a clear this bit for correct operation. mr2 sim spi serial i nterface mode selection: 0: 4 - wire spi interface 1: 3 - wire spi interface mr1 to mr0 md1 to md0 mode select bits. these bits select the operation mode of this device. table 12: operating modes md1 md0 operating mode 0 0 continuous - measurement mode. in continuous - measurement mode, the device continuously performs measurement s an d places the result in the data register. rdy goes high when new data is placed in all three registers. after a power - on or a write to the mode or configuration register, the f irst measurement set is available from all three data output registers after a period of 2/f do and subsequent measurements are available at a frequency of f do , where f do is the frequency of data output. 0 1 single - measurement mode ( d efault) . when single - measurement mode is selected, device performs a single measurement, se ts rdy high and returned to idle mode . mode register returns to idle mode bit values. the measurement remains in the data output register and rdy remains high until the data output reg ister is read or another measurement is performed. 1 0 idle mode. device is placed in idle mode. 1 1 idle mode. device is placed in idle mode.
HMC5983 18 www.honeywell. com data output x registers a and b the data output x registers are two 8 - bit registers, data output registe r a and data output register b. these registers store the measurement result from channel x. data output x register a contains the msb from the measurement result, and data output x register b contains the lsb from the measurement result. the value stor ed in these two registers is a 16 - bit value in 2s complement form, whose range is 0xf800 to 0x07ff. dxra0 through dxra7 and dxrb0 through dxrb7 indicate bit locations, with dxra and dxrb denoting the bits that are in the data output x registers. dxra7 an d dxrb7 denote the first bit of the data stream. the number in parenthesis indicates the default value of that bit. in the event the adc reading overflows or underflows for the given channel, or if there is a math overflow during the bias measurement, this data register will contain the value - 4096. this register value will clear when after the next valid measurement is made. table 13 : data output x registers a and b dxra7 dxra6 dxra5 dxra4 dxra3 dxra2 dxra1 dxra0 (0) (0) (0) (0) (0) (0) (0) (0) dx rb7 dxrb6 dxrb5 dxrb4 dxrb3 dxrb2 dxrb1 dxrb0 (0) (0) (0 ) (0) (0) (0) (0) (0) data output y registers a and b the data output y registers are two 8 - bit registers, data output register a and data output register b. these registers store the measuremen t result from channel y. data output y register a contains the msb from the measurement result, and data output y register b contains the lsb from the measurement result. the value stored in these two registers is a 16 - bit value in 2s complement form, w hose range is 0xf800 to 0x07ff. dyra0 through dyra7 and dyrb0 through dyrb7 indicate bit locations, with dyra and dyrb denoting the bits that are in the data output y registers. dyra7 and dyrb7 denote the first bit of the data stream. the number in paren thesis indicates the default value of that bit. in the event the adc reading overflows or underflows for the given channel, or if there is a math overflow during the bias measurement, this data register will contain the value - 4096. this register valu e will clear when after the next valid measurement is made. table 14 : data output y registers a and b dyra7 dyra6 dyra5 dyra4 dyra3 dyra2 dyra1 dyra0 (0) (0) (0) (0) (0) (0) (0) (0) dyrb7 dyrb6 dyrb5 dyrb4 dyrb3 dyrb2 dyrb1 dyrb0 (0) (0) (0 ) (0) (0) (0) (0) (0) data output z registers a and b the data output z registers are two 8 - bit registers, data output register a and data output register b. these registers store the measurement result from channel z. data output z register a contains the msb from the measurement result, and data output z register b contains the lsb from the measurement result. the value stored in these two registers is a 16 - bit value in 2s complement form, whose range is 0xf800 to 0x07ff. dzra0 through dzra7 and dzrb0 thro ugh dzrb7 indicate bit locations, with dzra and dzrb denoting the bits that are in the data output z registers. dzra7 and dzrb7 denote the first bit of the data stream. the number in parenthesis indicates the default value of that bit. in the event the adc reading overflows or underflows for the given channel, or if there is a math overflow during the bias measurement, this data register will contain the value - 4096. this register value will clear when after the next valid measurement is made.
HMC5983 www.honeywell.com 19 table 15 : data output z registers a and b dzra7 dzra6 dzra5 dzra4 dzra3 dzra2 dzra1 dzra0 (0) (0) (0) (0) (0) (0) (0) (0) dzrb7 dzrb6 dzrb5 dzrb4 dzrb3 dzrb2 dzrb1 dzrb0 (0) (0) (0 ) (0) (0) (0) (0) (0) data output register operation when one or more of the output registers are read, new data cannot be placed in any of the output data registers until all six data output registers are read. this requirement also impacts drdy and rdy, which cannot be cleared until new data is placed in all the output register s. status register the status register is an 8 - bit read - only register. this register is used to indicate device status. sr0 through sr7 indicate bit locations, with sr denoting the bits that are in the status register. sr7 denotes the first bit of t he data stream. table 16 : status register sr7 sr6 sr5 sr4 sr3 sr2 sr1 sr0 (0) (0) (0) ( 0 ) (0) (0) lock (0) rdy(0)
HMC5983 20 www.honeywell. com t able 17 : status register bit designations location name description sr7 to sr 5 0 these bits are reserved . sr4 dow data over written . set when the measurement data are not read before the subsequent data measurements are posted to the output registers. this happens when master device skips reading one or more data samples. bit is cleared at the beginning of a data read. dr3 to dr2 n /a reserved. sr1 lock data output register lock. this bit is set when : 1. some but not all of of the six data output registers have been read , 2. mode register has been read . when this bit is set, the six data output registers are locked and any new dat a will not be placed in these register until on e of th ese conditions are met: 1. all six bytes have been read and the next measurement starts , 2. the mode register is written , 3. t he measurement configuration (cra) is written , 4. power is reset. sr0 rdy ready bit. set when data is written to all six data registers. cleared when device initiates a write to the data output registers and after one or more of the data output registers are written to. when rdy bit is clear it shall remain cleared for >200 s. drdy pin can be used as an alternative to the status register for monitoring the device for measurement data. identification register a the identification register a is used to identify the device. ira0 through ira7 indicate bit locations, with ir a denoting the bits that are in the identification register a. ira7 denotes the first bit of the data stream. the number in parenthesis indicates the default value of that bit. the identification value for this device is stored in this register. this is a read - only register. register values. ascii value h table 18: identification register a default values ira7 ira6 ira5 ira4 ira3 ira2 ira1 ira0 0 1 0 0 1 0 0 0
HMC5983 www.honeywell.com 21 identification register b the identification register b is used to identify the devic e. irb0 through irb7 indicate bit locations, with irb denoting the bits that are in the identification register a. irb7 denotes the first bit of the data stream. register values. ascii value 4 table 19: identification register b default values identification register c the identification register c is used to identify the device. irc0 through irc7 indicate bit locations, with irc denoting the bits that are in the identification registe r a. irc7 denotes the first bit of the data stream. register values. ascii value 3 table 20: identifi cation register c default values temperature output registers h and l the temperatur e output registers are two 8 - bit registers, temperature output register h and temperature output register l . these registers store the measurement result from the internal temperature sensor . temperature output register h contains the msb from the measur ement result, and temperature output register l contains the lsb from the measurement result. the value stored in these two registers is a 16 - bit value in 2s complement form, whose range is 0xf800 to 0x07ff. temph 0 through temph7 and templ 0 through temp l 7 indicate bit locations, with temph and templ denoting the bits that are in the temperature output registers. temph 7 and templ 7 denote the first bit of the data stream. the number in parenthesis indicates the default value of that bit. table 21 : temp erature output registers h and l temph 7 temph 6 temph 5 temph 4 temph 3 temph 2 temph 1 temph 0 (0) (0) (0) (0) (0) (0) (0) (0) templ 7 templ 6 templ 5 templ 4 templ 3 templ 2 templ 1 templ 0 (0) (0) (0 ) (0) (0) (0) (0) (0) temperature output in c i s related to the t emperature output register values as follows. temperature = (msb * 2^8 + lsb) / (2^4 * 8) + 25 in c irb 7 irb6 irb5 irb4 irb3 irb2 irb1 irb0 0 0 1 1 0 1 0 0 irc7 irc6 irc5 irc4 irc3 irc2 irc1 irc0 0 0 1 1 0 0 1 1
HMC5983 22 www.honeywell. com i2c communication protocol if selected, the HMC5983 communicates via a two - wire i2c bus syst em as a slave device. the HMC5983 use s a simple protocol with the interface protocol defined by the i2c bus specification, and by this document . the data rate is at the standard - mode 100kbps , 400kbps , or 3400kbps rate s as defined in the i2c bus specification s . the bus bit format is an 8 - bit data/address send and a 1 - bit acknowledge bit. the format of the data bytes (payload) shall be case sensitive ascii charact ers or binary data to the HMC5983 slave, and binary data returned. negative binary values will be in twos complement fo rm. the defa ult (factory) HMC5983 8 - bit slave address is 0x3c for write operations, or 0x3d for read operations. the HMC5983 serial clock (scl) and serial data (sda) lines require resistive pull - ups (rp) between the master device (usually a host microprocessor) and t he HMC5983 . pull - up resistance values of about 2.2k to 10 k ohms ar e recommended with a nominal vdd io voltage . other resistor values may be used as defined in the i2c bus specifications that can be tied to vdd io . the scl and sda lines in this bus specific ation may be connected to multiple devices. the bus can be a single master to multiple slaves, or it can be a multiple master configuration. all data transfers are initiated by the master device , which is responsible for generating the clock signal, and th e data transfers are 8 bit long. all devices are addressed by i2c s unique 7 - bit address. after each 8 - bit transfer, the master device generates a 9 th clock pulse, and releases the sda line. the receiving device (addressed slave) will pull the sda line lo w to acknowledge (ack) the successful transfer or leave the sda high to negative acknowledge (nack). per the i2c spec, all transitions in the sda line must occur when scl is low. this requirement leads to two unique conditions on the bus associated with the sda transitions when scl is high. master device pulling the sda line low while the scl line is high indicates the start (s) condition, and the stop (p) condition is when the sda line is pulled high while the scl line is high. the i2c protocol also al lows for the restart condition in which the master device issues a second start condition without issuing a stop. all bus transactions begin with the master device issuing the start sequence followed by the slave address byte. the address byte contains t he slave address; the upper 7 bits (bits7 - 1), and the least significant bit (lsb). the lsb of the address byte designates if the operation is a read (lsb=1) or a write (lsb=0). at the 9 th clock pulse, the receiving slave device will issue the ack (or nac k). following these bus events, the master will send data bytes for a write operation, or the slave will clock out data with a read operation. all bus transactions are terminated with the master issuing a stop sequence. i2c bus control can be implemente d with either hardware logic or in software. typical hardware designs will release the sda and scl lines as appropriate to allow the slave device to manipulate these lines. in a software implementation, care must be taken to perform these tasks in code. spi communication protocol if selected, t he HMC5983 communicates via a 3 - wire or 4 - wire spi bus as a slave device . the spi allows writing and read ing the registers of the device. the standard serial interface interacts with the outside world with 4 wir es: cs , sck, s di and s do that correspond to commonly used notations s s, sck, mosi and mis o , respectively.
HMC5983 www.honeywell.com 23 read and write protocol figure 1: read & write protocol cs (spi_cs) is the serial port enable and it is controlled by the spi master. it goes l ow at the start of the transmission and goes back high at the end. s c k ( spi_sck ) is the serial port clock and it is controlled by the spi master. it is stopped high when cs is high (no transmission). s di ( spi_sdi ) and s do (spi_sdo) are respectively the ser ial port data input and output. those lines are driven at the falling edge of sck and should be captured at the rising edge of s ck . both the read register and write register commands are completed in 16 clocks pulses or in multiple of 8 in case of multipl e byte read/write. bit duration is the time between two falling edges of sck . the first bit (bit 0) starts at the first falling edge of sc k after the falling edge of cs while the last bit (bit 15, bit 23, ...) starts at the last falling edge of sck (spi_cs ) just before the rising edge of cs . bit 0: rw bit. when 0, the data di(7:0) is written into the device. when 1, the data do(7:0) from the device is read. in latter case, the chip will drive s do at the start of bit 8. bit 1: ms bit. when 0, the address w ill remain unchanged in multiple read/write commands. when 1, the address will be auto incremented in multiple read/write commands. bit 2 - 7: address ad(5:0). this is the address field of the indexed register. bit 8 - 15: data di(7:0) (write mode). this is the data that will be written into the device (msb first). bit 8 - 15: data do(7:0) (read mode). this is the data that will be read from the device (msb first). in multiple read/write commands further blocks of 8 clock periods will be added. when ms bit is 0 the address used to read/write data remains the same for every block. when ms bit is 1 the address used to read/write data is incremented at every block. the function and the behavior of sdi and sdo remain unchanged.
HMC5983 24 www.honeywell. com spi read figure 2: spi read p rotocol the spi read command is performed with 16 clocks pulses. multiple byte read command is performed adding blocks of 8 clocks pulses at the previous one. bit 0: read bit. the value is 1. bit 1: ms bit. when 0 do not increment address, when 1 increm ent address in multiple reading. bit 2 - 7: address ad(5:0). this is the address field of the indexed register. bit 8 - 15: data do(7:0) (read mode). this is the data that will be read from the device (msb first). bit 16 - ... : data do(... - 8). further data i n multiple byte reading. figure 3: multiple bytes spi read protocol (2 bytes example) spi write figure 4: spi write protocol
HMC5983 www.honeywell.com 25 the spi write command is performed with 16 clocks pulses. multiple byte write command is performed adding blocks of 8 clo cks pulses at the previous one. bit 0: write bit. the value is 0. bit 1: ms bit. when 0 do not increment address, when 1 increment address in multiple writing. bit 2 - 7: address ad(5:0). this is the address field of the indexed register. bit 8 - 15: data di(7:0) (write mode). this is the data that wi ll be written inside the device (msb first). bit 16 - ... : data di(... - 8). further data in multiple byte writing. figure 5: multiple bytes spi write protocol (2 bytes example) spi read in 3 - wires mode 3 - wires mode is entered by setting to 1 bit sim (spi serial interface mode selection) in mode_reg(2). figure 6: spi read protocol in 3 - wires mode the spi read command is performed with 16 clocks pulses: bit 0: read bit. the value is 1. bit 1: ms bit. when 0 do not increment address, when 1 increment address in multiple reading. bit 2 - 7: address ad(5:0). this is the address field of the indexed register. bit 8 - 15: data do(7:0) (read mode). this is the data that wi ll be read from the device (msb first) . multiple write command is also available in 3 - wires mode .
HMC5983 26 www.honeywell. com i2c operational examples the HMC5983 has a fairly quick stabilization time from no voltage to stable and ready for data retrieval. the nominal 5 6 milli - seconds with the factory default sing le measurement mode means that the six bytes of magnetic data registers (d x ra, d x rb, d z ra, d z rb, d y ra, and d y rb) are filled with a valid first measurement. to change the measurement mode to continuous measurement mode, after the power - up time send the thr ee bytes: 0x3c 0x02 0x00 this writes the 00 into the second register or mode register to switch from single to continuous measurement mode setting. with the data rate at the factory default of 1 5 hz updates, a 67 milli - second typical delay should be allow ed by the i2c master before querying the HMC5983 data registers for new measurements. to clock out the new data, send: 0x3d, and clock out dxra, dxrb, dzra, dzrb, dyra, and dyrb located in r egisters 3 through 8. the HMC5983 will automatically re - point ba ck to register 3 for the next 0x3d query . all six data registers must be read properly before new data can be placed in any of these data registers. below is an example of a (power - on) initialization process for continuous - measurement mode via i2c inte rface : 1. write cra (00) C send 0x3c 0x00 0x70 (8 - average, 15 hz default, normal measurement) 2. write crb (01) C send 0x3c 0x01 0xa0 (gain=5, or any other desired gain) 3. write mode (02) C send 0x3c 0x02 0x00 (continuous - measurement mode) 4. wait 6 ms or monitor st atus register or drdy hardware interrupt pin 5. loop send 0x3d 0x06 (read all 6 bytes. i f gain is changed then this data set is using previous gain) convert three 16 - bit 2s compliment hex values to decimal values and assign to x, z, y, respectively. send 0x3 c 0x03 (point to first data register 03) wait about 67 ms (if 15 hz rate) or monitor status register or drdy hardware interrupt pin end_loop below is an example of a (power - on) initialization process for single - measurement mode via i2c interface : 1. writ e cra (00) C send 0x3c 0x00 0x70 (8 - average, 15 hz default or any other rate , normal measurement) 2. write crb (01) C send 0x3c 0x01 0xa0 (gain=5, or any other desired gain) 3. for each measurement query: write mode (02) C send 0x3c 0x02 0 x01 (single - measurement mode) wait 6 ms or monitor status register or drdy hardware interrupt pin s end 0x3d 0x06 (read all 6 bytes . if gain is changed then this data set is using previous gain ) convert three 16 - bit 2s compliment hex values to decimal values and assign to x, z, y, respectively. spi operational examples to read configuration b register lower cs line write 0x81 to the spi bus read 1 byte from spi bus raise cs line to write configuration b register lower cs line write 0x01 to the spi bus write 0xvv to the spi bus (vv is the value to be written to register b) raise cs line to read status lower cs line write 0x89 to the spi bus read 1 byte from spi bus raise cs line to read output lower cs line write 0xc3 to the spi bus read 6 byte from spi bus raise cs line
HMC5983 www.honeywell.com 27 self test operation to check the HMC5983 for proper operation, a self test feature is incorporated in which the sensor offset straps are excited to create a nominal field strength (bias field) to be measured. to implement self test, the least signifi cant bits (ms1 and ms0) of configuration register a are changed from 00 to 01 ( p os itive b ias ) or 10 ( negative b ias). then, b y placing the mode register into single or continuous - measurement mode, two data acquisition cycles will be made on each magnetic v ector. the first acquisition will be a set pulse followed shortly by measurement data of the external field. the second acquisition will have the offset strap excited (about 10 ma) in the positive bias mode for x , y, and z axes to create about a 1.1 gauss self test field plus the external field. the first acquisition values will be subtracted from the second acquisition, and the net measurement will be placed into the data output registers. since s elf test adds ~1.1 gauss additional field to the existing field s trength, using a reduced gain setting prevents the sensor from being saturated and the data registers from overflow ing . for example, i f the configuration register b is set to 0xa0 (gain= 5 ) , values around + 452 ls b ( 1.16 ga * 390 ls b /ga) will be place d in the x and y data output registers and around + 421 (1.08 ga * 390 ls b /ga) will be placed in z data output register . to leave the self test mode, change ms1 and ms0 bit of the configuration register a back to 00 (normal measurement mode). acceptable lim its of the self test values depend on the gain setting . limits for gain =5 are provided in the specification table. below is an example of a positive self test process using continuous - measurement mode via i2c interface : 1. write cra (00) C send 0x3c 0x00 0x71 (8 - average, 15 hz default, positive self test measurement) 2. write crb (01) C send 0x3c 0x01 0xa0 (gain=5) 3. write mode (02) C send 0x3c 0x02 0x00 (continuous - measurement mode) 4. wait 6 ms or monitor status register or drdy hardware interrupt pin 5. loop send 0x3d 0x06 (read all 6 bytes . i f gain is changed then this data set is using previous gain ) convert three 16 - bit 2s compliment hex values to decimal values and assign to x, z, y, respectively. send 0x3c 0x03 (point to first data register 03) wait about 67 ms (if 15 hz rate) or monitor status register or drdy hardware interrupt pin end_loop 6. check limits C if all 3 axes (x, y, and z) are within reasonable limits (243 to 575 for gain=5 , a djust these limits bas ed on the gain setting used . see an example below. ) then all 3 axes pass positive self test write cra (00) C send 0x3c 0x00 0x70 ( exit self test mode and this procedure ) else i f gain< 7 write crb (01) C send 0x3c 0x01 0x n 0 ( increase gain setting to next value; n , and retry . s kip the next data set) else a t l east one axis did not pass positive self test write cra (00) C send 0x3c 0x00 0x70 (exit self test mode and this procedure) end if below is an example of how to adjust the positive self test limits based on the gain setting : 1. if gain = 6, self test l imits are : low limit = 243 * 330/390 = 206 high limit = 575 * 330/390 = 487 2. if gain = 7, self test limits are : low limit = 243 * 230/390 = 143 high limit = 575 * 230/390 = 339
HMC5983 28 www.honeywell. com ordering information ordering number product HMC5983 - tr tape and re el 4 k pieces/reel find out more for more information on honeywells magnetic sensors visit us online at www.magneticsensors .com or contact us at 800 - 323 - 8295 (763 - 954 - 2474 internationally). the application circuits herein constitute typic al usage and interface of honeywell product. honeywell does not warranty or assume liability of customer - designed circuits derived from this description or depiction. honeywell reserves the right to make changes to improve reliability, function or design . honeywell does not assume any liability arising out of the application or use of any product or circuit described herein; neither does it convey any licens e under its patent rights nor the rights of others. u.s. patents 4,441,072, 4,533,872, 4,569,742, 4,681,812, 4,847,584 and 6,529,114 apply to the technology described honeywell 12001 highway 55 plymouth, mn 55441 tel: 800 - 323 - 8295 www. magneticsensors.com form # 900425 january 201 2 ?2011 honeywell international inc.


▲Up To Search▲   

 
Price & Availability of HMC5983

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X