Part Number: TM4C129ENCPDT
I am using a TM4C129ENCPDT in legacy SSI mode.
It seems like the processor is keeping MISO high. My logic level on my slave varies between 3.3V and 2.5V. Disconnecting the master allows the slave voltage to swing correctly.
I am using SSI port 0 in legacy mode. Here is the configuration:
// ** Initialise SSI0 module ** SysCtlPeripheralEnable(SYSCTL_PERIPH_SSI0); SSIDisable(SSI0_BASE); SSIConfigSetExpClk(SSI0_BASE, CPU_CLOCK, SSI_FRF_MOTO_MODE_0, SSI_MODE_MASTER, INTERFACE_CLOCK, 8); SSIEnable(SSI0_BASE); // ** Initialise GPIO ** // Setup GPIO for SSI2 GPIOPinConfigure(GPIO_PA2_SSI0CLK); GPIOPinConfigure(GPIO_PA3_SSI0FSS); GPIOPinConfigure(GPIO_PA4_SSI0XDAT0); GPIOPinConfigure(GPIO_PA5_SSI0XDAT1); GPIOPinTypeSSI(GPIO_PORTA_BASE, GPIO_PIN_2 | GPIO_PIN_3 | GPIO_PIN_4 | GPIO_PIN_5);
The problem goes away if I disable the initialisation for PA5, but then I won't be able to read data.
Is there a special configuration needed to get the device into legacy SSI mode? Why might it be driving the line high?
Kind regards