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.

RTOS/LAUNCHXL-CC2650: How to change pin mappings to add spi functionality on the empty_CC2650_LAUNCHXL_TI_CC2650F128 project

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

Tool/software: TI-RTOS

Hi all,

I am currently trying to add spi functionality on the cc2650 launchpad (specifically, master mode with multiple slaves, as seen in the driver example here. The sample code uses Board_CSN_0 and Board_CSN_1 (which translates to Board_SPI0_CSN and SPI1_CSN in my board file). However, these pins are unassigned in the headers, as well as the Board_SPI1_MISO, MOSI, and CLK. I was wondering which pins would be best to IOID pins should be assigned to these values, and what subsequent things need to be done to ensure that the pin reassignments will not cause the board to function incorrectly. I was also unsure whether or not the SPI1 pins were really necessary, or if I could just use the SPI0 lines and ensure that the CS corresponds to the correct pin.

Thanks!

  • In the empty project the following pin mapping is used for the launchpad:

    /* SPI Board */
    #define Board_SPI0_MISO             IOID_8          /* RF1.20 */
    #define Board_SPI0_MOSI             IOID_9          /* RF1.18 */
    #define Board_SPI0_CLK              IOID_10         /* RF1.16 */
    #define Board_SPI0_CSN              PIN_UNASSIGNED
    #define Board_SPI1_MISO             PIN_UNASSIGNED
    #define Board_SPI1_MOSI             PIN_UNASSIGNED
    #define Board_SPI1_CLK              PIN_UNASSIGNED
    #define Board_SPI1_CSN              PIN_UNASSIGNED

    If you want/ need to use CSN you can assign this to what pin you want. The SPI pin can be mapped to any pin (as long as those pins are not used for something else) In the board file you can set pin assigned to PIN_ASSIGNED if you don't use this interface to free up IOs. Example, if you don't use UART you can set all pins assigned to UART as PIN_UNASSIGEND. 

    The chip has two SSI modules but if you only need one SPI you can leave the SPI1 pins unassigned.