Hallo zusammen,
ich versuche gerade in einem einfachen Projekt mithilfe der Low Layer
von ST einen ADC auszulesen. Mein Code sieht folgendermaßen aus.
1 | /* Enable internal regulator */
|
2 | LL_ADC_EnableInternalRegulator(ADC1);
|
3 | /* Run the ADC calibration in single-ended mode */
|
4 | LL_ADC_StartCalibration(ADC1,LL_ADC_SINGLE_ENDED);
|
5 | while(LL_ADC_IsCalibrationOnGoing(ADC1));
|
6 | // Enables ADC
|
7 | LL_ADC_Enable(ADC1);
|
8 | //Enable interruption ADC group injected end of sequence conversions
|
9 | LL_ADC_ClearFlag_JEOS(ADC1);
|
10 | // Start injected conversion
|
11 | LL_ADC_INJ_StartConversion(ADC1);
|
Im ADC-Interrupt lese ich dann das entsprechende Register aus und lösche
das JEOS-Flag. Mein Problem ist aber das die Werte die der ADC liefert
nicht zu der Spannung passt die tatsächlich anliegt.
Was habe ich vergessen das ich trotz Kallibierung keine rrichtigen
Ergebnisse bekomme ?
Schon mal vielen Dank für eure Antworten.