@@ -48,15 +48,15 @@ class I2SBase {
48
48
switch (cfg.rx_tx_mode ){
49
49
case RX_MODE:
50
50
p_rx_buffer = new NBuffer<uint8_t >(cfg.buffer_size , cfg.buffer_count );
51
- startI2SReceive (&hi2s3 , writeFromReceive, cfg.buffer_size );
51
+ startI2SReceive (&i2s_stm32 , writeFromReceive, cfg.buffer_size );
52
52
break ;
53
53
case TX_MODE:
54
54
p_tx_buffer = new NBuffer<uint8_t >(cfg.buffer_size , cfg.buffer_count );
55
- startI2STransmit (&hi2s3 , readToTransmit, cfg.buffer_size );
55
+ startI2STransmit (&i2s_stm32 , readToTransmit, cfg.buffer_size );
56
56
break ;
57
57
case RXTX_MODE:
58
58
p_tx_buffer = new NBuffer<uint8_t >(cfg.buffer_size , cfg.buffer_count );
59
- startI2STransmitReceive (&hi2s3 , readToTransmit, writeFromReceive, cfg.buffer_size );
59
+ startI2STransmitReceive (&i2s_stm32 , readToTransmit, writeFromReceive, cfg.buffer_size );
60
60
break ;
61
61
default :
62
62
LOGE (" Unsupported mode" );
@@ -145,6 +145,7 @@ class I2SBase {
145
145
146
146
protected:
147
147
I2SConfig cfg;
148
+ I2SSettingsSTM32 i2s_stm32;
148
149
inline static NBuffer<uint8_t > *p_tx_buffer=nullptr ;
149
150
inline static NBuffer<uint8_t > *p_rx_buffer=nullptr ;
150
151
@@ -160,10 +161,11 @@ class I2SBase {
160
161
}
161
162
162
163
void setupDefaultI2SParameters () {
163
- i2s_default_samplerate = getSampleRate (cfg);
164
- i2s_default_mode = getMode (cfg);
165
- i2s_default_standard = getStandard (cfg);
166
- i2s_default_fullduplexmode = cfg.rx_tx_mode == RXTX_MODE ? I2S_FULLDUPLEXMODE_ENABLE : I2S_FULLDUPLEXMODE_DISABLE;
164
+ i2s_stm32.sample_rate = getSampleRate (cfg);
165
+ i2s_stm32.mode = getMode (cfg);
166
+ i2s_stm32.standard = getStandard (cfg);
167
+ i2s_stm32.fullduplexmode = cfg.rx_tx_mode == RXTX_MODE ? I2S_FULLDUPLEXMODE_ENABLE : I2S_FULLDUPLEXMODE_DISABLE;
168
+ i2s_stm32.i2s = &hi2s3;
167
169
}
168
170
169
171
uint32_t getMode (I2SConfig &cfg){
0 commit comments