Acquisizione audio con MKR WAN 1300

Buongiorno a tutti!

Ho dei problemi con l'acquisizione audio, utilizzo la scheda MKR WAN 1300. Come posso aumentare la frequenza di campionamento utilizzando i registri ADC? E come posso utilizzare il convertitore analogico digitale per visualizzare i dati acquisiti?

Questo è il codice utilizzato

void AdcBooster()
{
  SYSCTRL->OSC8M.bit.PRESC = 0;    // Set OSC8M prescaler to 1
  ADC->INPUTCTRL.bit.MUXPOS=0x01;  //A1 as input
  ADC->INPUTCTRL.bit.MUXPOS=0x1C;   //DAC as output
  ADC->CTRLA.bit.ENABLE = 0;                     // Disable ADC
  while ( ADC->STATUS.bit.SYNCBUSY == 1 );       // Wait for synchronization
  ADC->CTRLB.reg = ADC_CTRLB_PRESCALER_DIV64 |   // Divide Clock by 64.
                   ADC_CTRLB_RESSEL_12BIT;       // Result on 12 bits
  ADC->AVGCTRL.reg = ADC_AVGCTRL_SAMPLENUM_1 |   // 1 sample
                     ADC_AVGCTRL_ADJRES(0x00ul); // Adjusting result by 0
  ADC->SAMPCTRL.reg = 0x00;                      // Sampling Time Length = 0
  ADC->CTRLA.bit.ENABLE = 1;                     // Enable ADC
  while ( ADC->STATUS.bit.SYNCBUSY == 1 );       // Wait for synchronization
} 

uint32_t anaRead()
{
  ADC->INTFLAG.bit.RESRDY = 1;              // Data ready flag cleared
  
  ADC->SWTRIG.bit.START = 1;                // Start ADC conversion
  while ( ADC->INTFLAG.bit.RESRDY == 0 );   // Wait till conversion done
  
  uint32_t valueRead = ADC->RESULT.reg;     // read the result
  
  ADC->SWTRIG.reg = 0x01;                    //  and flush for good measure
  
  return valueRead;
}


void setup() {
  Serial.begin(250000);
 // pinMode(A1, INPUT);
  AdcBooster();
 
  
}
void loop() {
  uint32_t audio = anaRead();
  analogWrite(A0, audio);
}

Grazie anticipatamente

>Enrico93: in conformità al REGOLAMENTO della sezione Italiana del Forum, punto 13, il cross-posting è proibito (anche tra lingue diverse) e tu hai già posto la stessa domanda QUI.

Inoltre, NON avendolo tu ancora fatto, ti chiedo cortesemente di presentarti IN QUESTO THREAD (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto :wink:) e di leggere con MOLTA attenzione il REGOLAMENTO.

Quindi, in conformità al suddetto regolamento, questo tuo thread viene chiuso e ti prego di continuare nella sezione Inglese, dove avevi cominciato. Grazie. :slight_smile:

Guglielmo