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.