Other Parts Discussed in Thread: MSP430G2755
#include <msp430.h>
#include "TI_USCI_I2C_master.h"
#define IR_ADDRESS 0x13
#define IR_REGISTER_PRODUCT_ID 0x81
#define PRESCALE 0x44
unsigned char registerAddress = 0x81;
unsigned char productID = 0;
void main(void)
{
WDTCTL = WDTPW + WDTHOLD; // Stop WDT
BCSCTL1 = CALBC1_8MHZ;
DCOCTL = CALDCO_8MHZ;
_EINT();
//write register address
TI_USCI_I2C_transmitinit(IR_ADDRESS, PRESCALE); // init transmitting with
while ( TI_USCI_I2C_notready() ); // wait for bus to be free
TI_USCI_I2C_transmit(1, ®isterAddress); // start transmitting
//read from register
TI_USCI_I2C_receiveinit(IR_ADDRESS, PRESCALE); // init receiving with USCI
while ( TI_USCI_I2C_notready() ); // wait for bus to be free
TI_USCI_I2C_receive(1,&productID);
while ( TI_USCI_I2C_notready() ); // wait for bus to be free
LPM3;
}

Christian



