2015-06-18 04:48 PM
I'm working with a device that uses the SMB Address Resolution Protocol as part of the response to generating an internal alert. I have no difficulty reading and writing address registers in general (With the peripheral configured as I2C) but cannot determine how to complete the SMB ARP transaction.
I'm reluctant to reconfigure the device as SMBus-two-wire-interface as we have two other devices on this I2C bus which are working fine.Is there any way using HAL/Cube calls to manage this transaction? Reconfigure the I2C temporarily (long enough to complete the transaction?)Which I2C HAL call would I use?For those of you who know what I'm talking about (I don't ;) ) Feel free to clue me in!FWIW, the device is aLTC2943 battery monitor and the data sheet can be found at http://www.linear.com/product/LTC2943. The problem I'm trying to solve is that the current/voltage/charge threshold alerts are not getting set and I believe that may be because I have no working code to implement the SMBus ARP transaction.Hmm... I better try reading back the thresholds I'm, setting to see if that part is working. (But must post now of lose the opportunity.) #i2c-smb-arp2015-06-18 05:28 PM
Never mind!
Once the thresholds were properly initrialized I could see thatthanks,
hank2015-06-19 06:37 AM
Further update... The LTC2943 will not release the /ALCC signal until the ARP transaction is invoked. Reading the status register clears the status bits but the /ALCC signal will remain low until the Address Resolution Protocol I2C/SMB operation is executed.