Other Parts Discussed in Thread: TM4C1294NCPDT
Tool/software: Code Composer Studio
Hi
I did configuration for the SPI2 for the TM4C1294NCPDT and tested it with one slave device with successful result.
here is copy of my configuration using the "driverlib/ssi.h" library:
// The SSI2 peripheral must be enabled for use.
SysCtlPeripheralEnable(SYSCTL_PERIPH_SSI2);
// Configure the pin muxing for SSI2 functions on port D
GPIOPinConfigure(GPIO_PD3_SSI2CLK);
GPIOPinConfigure(GPIO_PD2_SSI2FSS);
GPIOPinConfigure(GPIO_PD1_SSI2XDAT0); //GPIO_PD1_SSI2TX
GPIOPinConfigure(GPIO_PD0_SSI2XDAT1); //GPIO_PD0_SSI2RX
// Configure the GPIO settings for the SSI pins. This function also gives
// control of these pins to the SSI hardware.
// PD1 - SSI2Tx
// PD0 - SSI2Rx
// PD2 - SSI2Fss
// PD3 - SSI2CLK
GPIOPinTypeSSI(GPIO_PORTD_BASE, GPIO_PIN_3 | GPIO_PIN_2 | GPIO_PIN_1 |
GPIO_PIN_0);
SSIConfigSetExpClk(SSI2_BASE, SysCtlClockGet(), SSI_FRF_MOTO_MODE_0, SSI_MODE_MASTER, 1000000, 8);
// Enable the SSI2 module.
SSIEnable(SSI2_BASE);
my concern as I want to use the same above configuration with multi slaves.
But when i use SSIDataPut(SSI2_BASE, ui8DOTx[ui8Index]);
I discovered that there is no way to force the SPI driver library to change the slave select (Fss) to use another GPIO pin than the first configured.
So is there any solution for this other than using an external hardware?