So i am utilizing SPI and i got it to work, however for some absurd reason after removing the segger_print statement below from before the while loop the spi would stop functioning. otherwise it works perfectly fine. Any idea why a print statement would cause this? do i need to add a delay? Although i would expect the while loop to handle any delay necessary.
uint32_t LCD_SPI_Write_Command (uint8_t command)
{
spi_lcd_xfer_done = false;
LCD_CSX_LOW(); // set CSX to low to activate LCD listening
LCD_DCX_LOW(); // indicate command
uint32_t err_code = nrf_drv_spi_transfer(&m_spi_LCD, &command, 1, NULL, 0);
if (err_code != NRF_SUCCESS) {
SEGGER_RTT_printf(0, "[ERROR] on command transfer :%d \n", err_code);
}
SEGGER_RTT_printf(0,"Im writing a command! \n");
while (!spi_lcd_xfer_done)
{
}
return err_code;
}