EasyManua.ls Logo

Waveshare NRF52840 - Page 35

Waveshare NRF52840
72 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
NRF52840 Eval Kit User Manual
Vision: V1.0.1 Date: 2019.01.19 35 / 72
* |------------+---------------------|
*/
return rslt;
}
Working with NRF52840, you can use its library to realize the write/read function
int8_t user_i2c_read(u8 dev_id, u8 reg_addr, u8 *reg_data, u16 len)
{
ret_code_t err_code =
nrf_drv_twi_tx(&m_twi,dev_id,&reg_addr,1,false);
APP_ERROR_CHECK(err_code);
err_code = nrf_drv_twi_rx(&m_twi,dev_id,reg_data,len);
APP_ERROR_CHECK(err_code);
return err_code;
}
#define MAX_WRITE_LENGTH 200
int8_t user_i2c_write(u8 dev_id, u8 reg_addr, u8 *reg_data, u16
len)
{
ret_code_t err_code;
uint8_t write_data[MAX_WRITE_LENGTH];
if(len>MAX_WRITE_LENGTH-1)
{
err_code = 1;
return err_code;
}
write_data[0] = reg_addr;
memcpy(&write_data[1],reg_data,len);
err_code =
nrf_drv_twi_tx(&m_twi,dev_id,write_data,len+1,false);
APP_ERROR_CHECK(err_code);
return err_code;