Connecting I2C Device to Labview using NI-845x

2019-05-30 03:23发布

I'm trying to connect a mass flow sensor, SFM-3000 by sensorion, to labview on PC using USB device, NI-8452, which provide I2C interface.

I followed the user manual of the sensor and used I2C example by labview but I cannot establish communication between them

I get the error message:

Error -301744 occurred at NI-845x I2C Run Script.vi:6110001, Possible reason(s): NI-845x: The I2C master lost arbitration and failed to seize the bus during transmission of an address+direction byte.

I'm using NI-8452 that include pull up resistor and I make sure to enable them by enabling 'Use Internal I2C Pullup Resistor' filled in 'NI-845x Device' property node. I set I/O voltage level to 3.3,

I double check the address, I have 7 bit address defined in user manual of my device, 64 dec or 1000000 binary.

As specified in my device user manual, I provide it Vdd of 5v from NI-8452 pin 40 and also GND in pin 7. Off-course SDA in pin 5 and SCL in pin 9.

I think I might have a problem with pull up reference voltage because the sensor specified it need to be 5v but NI-8452 use up to 3.3V.

wiring

but the low limit for high signal is 2.5v so it should work

high and low level

My diagram:

I2c over NI-845x

another option i tried is using I2c script blocks

I2c script blocks

I tried similar solution also for pressure sensor, hdi0611arz8p5 by First-Sensor, but also got the same error.

1条回答
欢心
2楼-- · 2019-05-30 04:07

After re-wiring it's started working, maybe some bad connectivity between wire and port. i hope this thread could help people that wish to connect sfm3000 using labview.

查看更多
登录 后发表回答