Other Parts Discussed in Thread: TMDSCNCD28388D, SYSCONFIG
Hi all!
I have some issues.
I got the aseert error like the below line.
ASSERT(SysCtl_getLowSpeedClock(DEVICE_OSCSRC_FREQ) == DEVICE_LSPCLK_FREQ);
What is the importance of this assert? Should I care about it?
SImilarly I got some assert errors as well during SPI initialization like below.
ASSERT(SPI_isBaseValid(base)); ASSERT((HWREGH(base + SPI_O_CCR) & SPI_CCR_SPISWRESET) == 0U);
Here is my spi init code and how i call it.
uint32_t SPI_BASEs[4] = {SPIA_BASE, SPIB_BASE, SPIC_BASE, SPID_BASE};
for(erhan=0;erhan<4;erhan++)
initSPIFIFO(SPI_BASEs[erhan]);
void initSPIFIFO(uint32_t SPI_BASE)
{
//
// Must put SPI into reset before configuring it
//
SPI_disableModule(SPI_BASE);
//
// FIFO configuration
//
SPI_enableFIFO(SPI_BASE);
SPI_clearInterruptStatus(SPI_BASE, SPI_INT_RXFF | SPI_INT_TXFF);
if(SPI_BASE == SPIA_BASE)
{
SPI_setFIFOInterruptLevel(SPI_BASE, (SPI_TxFIFOLevel)1,
(SPI_RxFIFOLevel)SPI_FIFO_RXDEFAULT);
}
else if(SPI_BASE == SPID_BASE)
{
SPI_setFIFOInterruptLevel(SPI_BASE, (SPI_TxFIFOLevel)SPI_FIFO_TXEMPTY,
(SPI_RxFIFOLevel)1);
}
else
{
SPI_setFIFOInterruptLevel(SPI_BASE, (SPI_TxFIFOLevel)SPI_FIFO_TXEMPTY,
(SPI_RxFIFOLevel)SPI_FIFO_RXDEFAULT);
}
SPI_setTxFifoTransmitDelay(SPI_BASE, 1);
//
// SPI configuration. Use a 500kHz SPICLK and 16-bit word size.
//
SPI_setConfig(SPI_BASE, DEVICE_LSPCLK_FREQ, SPI_PROT_POL0PHA0,
SPI_MODE_MASTER, 1000000, 16);
SPI_enableLoopback(SPI_BASE);
SPI_enableModule(SPI_BASE);
}
Could someone tell me please why do I get assert error even for spi base addresses?
Also my debugger shows wrong code sometiems during debug like below in the pic. Is there any solution for that? I use TMDSCNCD28388D.
Thanks in advance.
cheers,