|
|
@ -159,7 +159,17 @@ static void ads1293_spi_tx_rx_1(uint8_t* tx, uint8_t* rx, uint8_t len) { |
|
|
|
static void ads1293_spi_writereg_and_check(ads1293_t* ads, uint8_t addr, uint8_t data) { |
|
|
|
uint8_t readbak = 0; |
|
|
|
// readonly add |
|
|
|
if (addr == 0x19 || addr == 0x1a || addr == 0x1b || addr == 0x1c || addr == 0x40 || addr == 0x30) { |
|
|
|
readbak = data; |
|
|
|
if (addr >= 0x18 && addr <= 0x1E) { |
|
|
|
return; |
|
|
|
} |
|
|
|
if (addr >= 0x30 && addr <= 0x3f) { |
|
|
|
return; |
|
|
|
} |
|
|
|
if (addr == 0x40) { |
|
|
|
return; |
|
|
|
} |
|
|
|
if (addr == 0x50) { |
|
|
|
return; |
|
|
|
} |
|
|
|
ads1293_spi_writereg_and_readbak(ads, addr, data, &readbak); |
|
|
@ -195,6 +205,8 @@ static void ads1293_init() { |
|
|
|
ads1293_spi_init(&m_ads1293_0, ads1293_spi_tx_rx_0); |
|
|
|
ads1293_spi_init(&m_ads1293_1, ads1293_spi_tx_rx_1); |
|
|
|
|
|
|
|
m_ads1293_driver_is_inited = true; |
|
|
|
|
|
|
|
uint8_t revid = ads1293_spi_readreg(&m_ads1293_0, TI_ADS1293_REVID_REG); |
|
|
|
ZLOGI("ads1293_0 revid: %d\n", revid); |
|
|
|
revid = ads1293_spi_readreg(&m_ads1293_1, TI_ADS1293_REVID_REG); |
|
|
@ -208,14 +220,13 @@ static void ads1293_init() { |
|
|
|
for (uint16_t i = 0; i < ZARRAY_SIZE(m_prvads1cfg); i++) { |
|
|
|
ads1293_spi_writereg_and_check(&m_ads1293_1, m_prvads1cfg[i].add, m_prvads1cfg[i].data); |
|
|
|
} |
|
|
|
m_ads1293_driver_is_inited = true; |
|
|
|
|
|
|
|
/** |
|
|
|
* @brief READY引脚中断初始化 |
|
|
|
*/ |
|
|
|
{ |
|
|
|
// nrf_gpio_cfg_input(ADS1293_READY_PIN, NRF_GPIO_PIN_PULLUP); |
|
|
|
ZERROR_CHECK(nrfx_gpiote_init()); |
|
|
|
// ZERROR_CHECK(nrfx_gpiote_init()); |
|
|
|
nrf_drv_gpiote_in_config_t inConfig = GPIOTE_CONFIG_IN_SENSE_TOGGLE(false); // 双边沿中断触发 |
|
|
|
inConfig.pull = NRF_GPIO_PIN_PULLUP; // 默认上拉 |
|
|
|
inConfig.sense = NRF_GPIOTE_POLARITY_LOTOHI; // 上升沿触发 |
|
|
|