Eugen_pcad_ru

AD9361: tx filter configuration

Discussion created by Eugen_pcad_ru on Mar 5, 2018
Latest reply on Mar 5, 2018 by mhennerich

Hello!
I see strange strings in function "ad9361_load_fir_filter_coef" of file "ad9361.c":
...
"
for (val = 0; val < ntaps; val++) {
ad9361_spi_write(spi, REG_TX_FILTER_COEF_ADDR + offs, val);
ad9361_spi_write(spi, REG_TX_FILTER_COEF_WRITE_DATA_1 + offs,
coef[val] & 0xFF);
ad9361_spi_write(spi, REG_TX_FILTER_COEF_WRITE_DATA_2 + offs,
coef[val] >> 8);
ad9361_spi_write(spi, REG_TX_FILTER_CONF + offs,
fir_conf | FIR_WRITE);
ad9361_spi_write(spi, REG_TX_FILTER_COEF_READ_DATA_2 + offs, 0); /// ???
ad9361_spi_write(spi, REG_TX_FILTER_COEF_READ_DATA_2 + offs, 0); /// ???
}
"
where
REG_TX_FILTER_COEF_READ_DATA_2 = 0x064 (R)
REG_TX_FILTER_COEF_READ_DATA_2 = 0x064 (R)
Look at datasheet "AD9361 Register Map", section "TRANSMITTER CONFIGURATION", table "TX PROGRAMMABLE FIR FILTER REGISTERS 060 THROUGH 065". Register "TX Filter Coefficient Read Data 2" is read only (R). Why I must write to address REG_TX_FILTER_COEF_READ_DATA_2 some value? What is the purpose of writing?

Who can help?

 

Thanks in advance!

Evgeniy

Outcomes