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.

LAUNCHXL-CC2650: Project 0 Main Loop

Part Number: LAUNCHXL-CC2650
Other Parts Discussed in Thread: CC2650

Hi all,

I am trying to figure out where the main application loop occurs for the project 0 project for the LAUNCHXL-CC2650. Essentially, I need to add SPI functionality to the project in order to communicate with other devices and still maintain ble functionality that project 0 offers. Looking at the project, I found the main() function within the startup folder, which makes a call to ProjectZero_createTask() which calls ProjectZero_taskFxn(). Here, the ProjectZero_init() function is called to initialize all the services I believe. However, I do not exactly know where the main loop for the Project Zero happens to check for button presses or LED calls. This is where I would like to make calls to SPI functions in order to send and receive bits. Does anyone know where to make this addition?

Thank you

  • Hi,

    The projects for the CC2650 run an RTOS. When you go from main and then execute BIOS_Start() the devices RTOS kernel starts up and runs all the tasks that were created and manages/schedules operation automatically. Once BIOS_Start is executed, it will never return to main unless the device restarts. That's just how RTOS's work.

    I suggest you look at SimpleLink Academy on dev.ti.com to read up on RTOS's. You can find a good deal of information there on TI-RTOS as well as the Software Developers Guide in the BLE Stack 2.2.2 SDK Docs folder which discusses the software architecture to the BLE Stack specifically.
  • Thanks for the help. Do you happen to know where BIOS_Start() is located within the project to make the edits?
  • I'm not on my work laptop but i think the main is in main_tirtos.c or something in the startup folder of a BLE project.