+ Reply to Thread
Results 1 to 2 of 2

Thread: tlv493d reading problem

  1. #1
    New Member New Member matthewli is on a distinguished road
    Join Date
    Jul 2019
    Posts
    1
    Points
    30

    tlv493d reading problem

    I read data from tlv493 via i2c bus with xilinx fpga spartan6.
    the setting procedure is:
    for low power mode:
    1. write data (0x00 0x80 0x00 0x60) to address 0xBC;
    2. write data (0x00 0x85 0x00 0x60) to address 0xBC;

    for fast mode:
    1. write data (0x00 0x80 0x00 0x60) to address 0xBC;
    2. write data (0x00 0x86 0x00 0x60) to address 0xBC;

    After mode set, int is produced according power mode, it works well, then I read data follow INT signal after 12us.

    For the data read from sensor, Bx is right all the time,but By and Bz and Temp is wrong sometimes,when it is wrong, the register 2 to 6 are 0xff.

    The other question is that in low power mode FRAM COUNTER is not increment all the time, It even depends on magnetic field intensity, sometimes normal, sometimes abnormal.

    I am totally confused!
    test picture
    Click image for larger version

Name:	试验.jpg
Views:	0
Size:	89.2 KB
ID:	4071
    Write to sensor with 4 bytes
    Click image for larger version

Name:	write.jpg
Views:	0
Size:	153.1 KB
ID:	4072
    Read from sensor with 7 bytes
    Click image for larger version

Name:	read.jpg
Views:	0
Size:	137.0 KB
ID:	4073
    Read detals
    Click image for larger version

Name:	read more.jpg
Views:	0
Size:	161.8 KB
ID:	4074

  2. #2
    Beginner Beginner forix is on a distinguished road
    Join Date
    Feb 2012
    Location
    Munich
    Posts
    66
    Points
    298.125
    Excerpt from data sheet ->
    Managing correct sensor read outs by the C:
    This sensor does not incorporate shadow-buffers for readout. Thus, it is mandatory to read the sensor data
    not during a running conversion to avoid corrupted reads. Ideally, the /INT feature is enabled together with
    the low-power or ultra-low power mode and the C reads the data after the /INT pulse was asserted by the
    sensor. Furthermore, the readout needs to be finished before a new conversion is started and the /INT will be
    asserted again (if the readout is finished 1 ms before a new /INT pulse, this will be sufficient).

    This is the procedure when everything is running well. Please consult the user's manual regarding ADC frame counter hangup -> here
    In case there is something wrong you will need to generate general reset (section 5.7.1).

    Hope this helps.

+ Reply to Thread
Disclaimer

All content and materials on this site are provided as is. Infineon makes no warranties or representations with regard to this content and these materials of any kind, whether express or implied, including without limitation, warranties or representations of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. No license, whether express or implied, is granted by Infineon. Use of the information on this site may require a license from a third party, or a license from Infineon.


Infineon accepts no liability for the content and materials on this site being accurate, complete or up- to-date or for the contents of external links. Infineon distances itself expressly from the contents of the linked pages, over the structure of which Infineon has no control.


Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Usage Terms of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Usage Terms of this site. Infineon reserves the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.