SPI on BCM920732TAG

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

I'm using the BCM920732TAG board with the 1.1.0 WICED Smart SDK. I'm trying to get SPI slave mode working, but I'm having pretty major issues since many of the API functions are either not documented, or have their documentation limited to just the bare function prototype itself. (Was the Doxygen generated API documentation ever actually finished?)

Specific question:

The spi_comm_slave app example uses the following code to enable interrupt on the flow control pin:

interrupt_handler_mask[SPIFFY2_INPUT_FLOW_CTRL_PORT] |= (1 << SPIFFY2_INPUT_FLOW_CTRL_PIN);

// Now register the interrupt handler.

gpio_registerForInterrupt(interrupt_handler_mask, application_gpio_interrupt_handler, NULL);

In my code, I would like to clear the Rx FIFO at the beginning of chip select, then read stuff out at the end of chip select. I think I'm only getting the interrupts at the beginning of chip select at the moment. How can I enable interrupts for both edges on chip select? The gpio_registerForInterrupt() function is completely undocumented, and it seems like a rather critical API function.

0 Likes
1 Solution

Within the SDK, please refer to the /WICED-Smart-SDK/Apps/spi_comm_master and /WICED-Smart-SDK/Apps/spi_comm_slave examples as these are tested and have been designed to work with one another.

View solution in original post

0 Likes
5 Replies