7 SPI.beginTransaction( SPISettings( 1000000, MSBFIRST, SPI_MODE1 ) );
8 digitalWrite( SS, LOW );
9 SPI.transfer( data, size );
10 digitalWrite( SS, HIGH );
17 uint8_t v[] = { (uint8_t)(reg >> 8), (uint8_t)(reg & 0xFF) };
18 txrx( v,
sizeof( v ) );
25 uint8_t v[] = { (uint8_t)(reg >> 8), (uint8_t)(reg & 0xFF), (uint8_t)(val >> 8), (uint8_t)val };
26 txrx( v,
sizeof( v ) );
34 uint8_t v[ 4 ] = { (uint8_t)(reg >> 8), (uint8_t)(reg & 0xFF), 0xFF, 0xFF };
35 txrx( v,
sizeof( v ) );
44 uint8_t v[] = { (uint8_t)(reg >> 8), (uint8_t)(reg & 0xFF), (uint8_t)(val >> 16), (uint8_t)(val >> 8), (uint8_t)val };
45 txrx( v,
sizeof( v ) );
53 uint8_t v[] = { (uint8_t)(reg >> 8), (uint8_t)(reg & 0xFF), 0xFF, 0xFF, 0xFF };
54 txrx( v,
sizeof( v ) );
62 uint16_t reg = (0x2005 << 1) | 0x4000;
64 v[ 0 ] = (uint8_t)(reg >> 8);
65 v[ 1 ] = (uint8_t)(reg & 0xFF);
69 for (
auto i = 0; i < length; i++ )
int32_t read_r24(uint16_t reg)
void txrx(uint8_t *data, int size)
void write_r24(uint16_t reg, uint32_t val)
uint16_t read_r16(uint16_t reg)
static constexpr int command_length
void burst(uint32_t *data, int length, int width=3)
int32_t get_data24(uint8_t *vp)
void write_r16(uint16_t reg)
int32_t get_data16(uint8_t *vp)