Other Parts Discussed in Thread: TAA5212
https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1572693/taa5212-setting-up-bi-quad-filter
器件型号:TAA5212工具/软件:
大家好、我正在尝试使用 TAA5212 设置双二阶滤波器、以便在 20~100kHz 区域进行一些滤波。
我使用 STM32L4 微控制器的 Sai 接口驱动 TAA5212。
使用 187.5kHz 作为采样频率和 12MHz BCLK。
我可以读取原始信号只是很好、但我从来没有注意到滤波器的影响、是否有人可以查看我的寄存器设置并告诉我的做法有误。
寄存器设置代码:
writeByte(0x00, 0x00); // set page 0 writeByte(0x01, 0x01); // software reset ThisThread::sleep_for(3); // device settle time after power on / reset writeByte(0x02, 0x09); // Wake up with AVDD > 2v and all VDDIO level ThisThread::sleep_for(3); // device settle time after wake writeByte(0x10, 0x50); // Configure DOUT as Primary ASI (PASI) DOUT writeByte(0x19, 0x00); // 1 data input and 1 data output for PASI writeByte(0x1A, 0x70); // PASI I2S, 32 bit format writeByte(0x50, 0x50); // ADC Ch1 single ended, mux inp1, 10KOhm, ac-coupled, 1Vrms writeByte(0x76, 0x80); // Enable Input Ch1, disable output channels // Set up filters before powering up any adc channel 30kHz low pass writeByte(0x00, 0x08); // set page 8 writeByte(0x08, 0x2e); // N0 = 0x2e8f9340 writeByte(0x09, 0x8f); writeByte(0x0A, 0x93); writeByte(0x0B, 0x40); writeByte(0x0C, 0xd1); // N1 = 0xd1706cc0 writeByte(0x0D, 0x70); writeByte(0x0E, 0x6c); writeByte(0x0F, 0xc0); writeByte(0x10, 0x2e); // N2 = 0x2e8f9340 writeByte(0x11, 0x8f); writeByte(0x12, 0x93); writeByte(0x13, 0x40); writeByte(0x14, 0x11); // D0 = 0x114fb4c0 writeByte(0x15, 0x4f); writeByte(0x16, 0xb4); writeByte(0x17, 0xc0); writeByte(0x14, 0xE8); // D0 = 0xe8611cc0 writeByte(0x15, 0x61); writeByte(0x16, 0x1c); writeByte(0x17, 0xc0); writeByte(0x00, 0x00); // set page 0 again writeByte(0x72, 0x08); // No HPF enable 1 biquad writeByte(0x78, 0xa0); // Power up ADC and MICBIAS



