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.

sl_Start doesnt work properly

Part Number: CC3100BOOST
Other Parts Discussed in Thread: CC3100,

Hello everyone ,


I have CC3100 and i am trying to port it to Atmel SAMD21 microcontroller. I have compiled simplelink library and ported required functions on user.h

in main.c i have configureSimpleLinkToDefaultState() function. Basically this function makes my module ready for communication. I have also osciloscope shots on on breakpoint while debugging.

YELLOW - IRQ PIN

BLUE - CS PIN

At the begining CS and IRQ pins are on low- position.

        

If you go step into sl_Start(0,0,0) command. There is g_pCB->FD = sl_IfOpen((void *)pDevName, 0);  command which configures the spi communication and adjusts cs pin high. After sl_IfOpen() command osc. shot is like below.

      


After spi spi configuration interrupt registiration codeblock comes. after sl_DeviceEnable() command irq pin goes high as you see on osc. shot.

      

After sl_DeviceEnable(); command there is  if(NULL == pInitCallBack) block. If i use CC3100BOOST with MSP430F5529LP it doesnt enter to this if block. But on Samd21 it enters and it waits on this line for a while

retVal = _SlDrvSyncObjWaitTimeout(&g_pCB->ObjPool[ObjIdx].SyncObj, INIT_COMPLETE_TIMEOUT,SL_DRIVER_API_DEVICE_SL_START);

Then _SlDrvRxIrqHandler  function gets triggered. 

After that my ISR function is triggered.

Then SAMD21 External Interrupt Handler function is tirggered.

An then it goes to my Spi_Write() function , after writing event IRQ pin gets low . CS pin first gets low and goes high again. Remember YELLOW - IRQ / BLUE - CS

At the end it comes to this page and line and it freezes there. Line number : 1140.

I need help. Where am i wrong ?

Thank you .