This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
hi,
attempting to port to stm32f0 on a custom board, no OS. have been trying for quite some time.
when I run the spi testing project it passes fine so my SPI is working.
when sl_start is called it gets to :
retVal = _SlDrvSyncObjWaitTimeout(&g_pCB->ObjPool[ObjIdx].SyncObj, INIT_COMPLETE_TIMEOUT, SL_DRIVER_API_DEVICE_SL_START);
and gets stuck in an infinite loop at _SlNonOsSemGet() in nonos.c, in this loop the timeout counts down until it gets to 0xff and then stays there and does not stop looping.
this is the line that stops the timeout from decreasing:
#if (!defined (sl_GetTimestamp)) || (defined (SL_TINY_EXT)) if (Timeout != NONOS_WAIT_FOREVER) { Timeout--; }
NONOS_WAIT_FOREVER is 0xff.
I added a printf to the spi commands to see if correct looking data is being transferred (received 0's are filtered out):
Sent Data: 65 Sent Data: 87 Sent Data: 78 Sent Data: 56 Recieved Data: bc Recieved Data: dc Recieved Data: cd Recieved Data: ab Recieved Data: 8 Recieved Data: 8 Recieved Data: 11 Recieved Data: 11 Recieved Data: 11 Recieved Data: 11
so the sync patterns appear to get transferred, but nothing else happens
any help would be appreciated,
Huw