Other Parts Discussed in Thread: CC2650, LMP91000,
Tool/software: Code Composer Studio
Helllo community,
I have been trying to communicate the LMP91000EVM with the CC2650 via I2C and I am unfamiliar with the concepts. I am trying to configure the LMP91000 into the 3-cell mode, also knows as Amperometric mode because I am going to be conducting chemical readings. I have been looking around but I can't seem to wrap my head around as too how I will be able to do this. The following code shows my attempt at reading the status_register = 0x00, which lets me know if the LMP91000 is on.
Void lmp91000(UArg arg0, UArg arg1) { I2C_init(); /* local variables */ uint8_t txBuffer[3]; uint8_t rxBuffer[3]; I2C_Handle handle; I2C_Params params; I2C_Transaction transaction; /* Opening the driver */ I2C_Params_init(¶ms); params.bitRate = I2C_400kHz; /* Initialize master I2C transaction structure */ transaction.writeCount = 0; transaction.writeBuf = txBuffer; transaction.readCount = 1; transaction.readBuf = rxBuffer; transaction.slaveAddress = 0x48; /* Open I2C */ handle = I2C_open(Board_I2C0, ¶ms); /* Check for I2C initialization */ if(handle == NULL) { System_printf("Error initializing\n"); } else { System_printf("I2C initialized\n"); } /* Checks the status of the LMP91000 */ txBuffer[0] = LMP91000_STATUS_REG; bool trans = I2C_transfer(handle, &transaction); if(trans) { if(rxBuffer[0] == LMP91000_READY) { System_printf("LMP Ready.\n"); } else { System_printf("Not Successful\n"); } } System_flush(); }
If anyone can point me in the right direction, I have not found many guides and the datasheet has not been much help.
Best Regards,
Francisco