Hello,
i am trying to communicate with a SD card using the SSI0 interface on the launchpad. When trying to write data over the bus im am not seeing the CLK line using a logic analyzer.
i enable the SSI0 module the following way:
// GPIO used for UART and SSI SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA); SysCtlPeripheralEnable(SYSCTL_PERIPH_SSI0); //SysCtlPeripheralEnable(SYSCTL_PERIPH_SSI1); // Set alternate function mux to SSI // GPIOPinConfigure(GPIO_PCTL_PD0_SSI1CLK); // GPIOPinConfigure(GPIO_PCTL_PD2_SSI1RX); // GPIOPinConfigure(GPIO_PCTL_PD3_SSI1TX); // CLK, MOSI, and MISO pins use alternate function (SSI) GPIOPinTypeSSI(GPIO_PORTA_BASE, GPIO_PIN_2 | GPIO_PIN_4 | GPIO_PIN_5); // set chip select pin as output GPIOPinTypeGPIOOutput(GPIO_PORTA_BASE, GPIO_PIN_3); // set the SSI clock to the PIOSC clock SSIClockSourceSet(SSI0_BASE, SSI_CLOCK_PIOSC); SSIConfigSetExpClk(SSI0_BASE, 16000000, SSI_FRF_MOTO_MODE_0, SSI_MODE_MASTER, 100000, 8); SSIEnable(SSI0_BASE); uartWriteString(UART0_BASE, "SPI initialized\r\n", 17);
Below a screenshot of my analyzer software when writing a command to the sd card:
as you can see, the data is getting sent just fine, but there is no clock signal!
I have also tried using the SSI1 module with the same results...
What am i missing here?
Sisco