This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Read STMicroelectronics sensors board using nordic SPI

Hi,

I am using STM X-nucleo-iks01a2 sensor board arduino compatible, so connected to nF52840 DK arduino header and want to read HTS221 I2C/SPI interface supported sensor registers which is one out of many sensors on board. How to select particular SPI interface of HTS221 and read its register value over SPI? I tried following code but I think some modifications are needed.

Actually m_rx_buf should get 0xBC but 0x00 is coming. My doubt is whether HTS221 sensor is selected, SPI of HTS221 is up and used.

void spi_event_handler(nrf_drv_spi_evt_t const * p_event,
void * p_context)
{
spi_xfer_done = true;
NRF_LOG_INFO("Transfer completed.");
if (m_rx_buf[0] != 0)
{
NRF_LOG_INFO(" Received:");
NRF_LOG_HEXDUMP_INFO(m_rx_buf, strlen((const char *)m_rx_buf));
}
}

spi_config.ss_pin = ARDUINO_10_PIN;
spi_config.miso_pin = ARDUINO_12_PIN;
spi_config.mosi_pin = ARDUINO_11_PIN;
spi_config.sck_pin = ARDUINO_13_PIN;
dbg_init_err = nrf_drv_spi_init(&spi, &spi_config, spi_event_handler, NULL);

nrf_drv_spi_transfer(&spi, &Reg, 1, m_rx_buf, len);

Thanks

Related