Tool/software:
Hello,
I have been working on a project that involves porting a great deal of code from MSP430 to MSP432, and we're using the ethernet capabilities of the MSP432E401. I have been able to get most of the needed functionality, but the resources I've found such as the MSP432 user guide reference functions that don't seem to exist. I have gone through and re-installed CCS and the SimpleLink SDK to no avail. I'm wondering if these functions are only available for MSP432Pxx devices, but I haven't found an answer on that yet.
I have tried to setup and use I2C as follows:
#define I2C_BASE_ADDR I2C9_BASE
void I2CInit(){
MAP_GPIOPinConfigure(GPIO_PA0_I2C9SCL);
MAP_GPIOPinConfigure(GPIO_PA1_I2C9SDA);
MAP_GPIOPinTypeI2C(GPIO_PORTA_BASE, (GPIO_PIN_0 | GPIO_PIN_1));
MAP_SysCtlPeripheralEnable(SYSCTL_PERIPH_I2C9);
while(!(MAP_SysCtlPeripheralReady(SYSCTL_PERIPH_I2C9)));
I2CMasterInitExpClk(I2C_BASE_ADDR, g_ui32SysClock,0);
I2CMasterEnable(I2C_BASE_ADDR);
}
void I2CwB(char data){
int cycles = 0;
int err = 0;
int fifo = 0;
while(!I2CFIFODataPutNonBlocking(I2C_BASE_ADDR,data)) {
cycles++;
delay_ms(10);
err = I2CMasterErr(I2C_BASE_ADDR);
fifo = I2CFIFOStatus(I2C_BASE_ADDR);
if(cycles % 8 == 0)I2CTxFIFOFlush(I2C_BASE_ADDR);
}
}
This is able to execute without issue, however I find that the SCL line goes low, and the SDA line is never pulled low, and no calls of the ICwB ever effect the pins.
I included the I2CMasterErr and I2CFIFOStatus so I could gather more information, but there's no errors or anything terribly interesting that shows up on those.
Thank you in advance for any and all help. I greatly appreciate it.
