MSP430 ADC10 Referenzspannung

OP #3361483
Lesenswert?

Hallo zusammen,

ich experimentiere gerade ein bisschen mit dem MSP430 und dem ADC10.
Ich wundere mich jedoch etwas, dass das ändern der Referenzspannung 
keine Änderung beim Messergebnis bringt.

Ich habe die interne Referenzspannung von 2,5V und 1,5V ausprobiert, der 
gemessene Wert ist jedoch der gleiche. Stimmt irgend etwas an meinem 
Code nicht?
1
#include <msp430.h>
2
#include "stdint.h"
3

4
#define SCHALTER BIT3
5

6
volatile uint16_t wert;
7

8
int main(void){
9
  WDTCTL = WDTPW + WDTHOLD;  // Stop watchdog timer
10
  P1DIR |= SCHALTER;  // P1.3 als Output für Transistor
11
  P1OUT |= SCHALTER;  // Transistor für Operationsverstärker schalten
12

13
  ADC10CTL0 = ADC10SHT_2 + ADC10ON + ADC10IE + REFON; // 1,5V als Referenz
14
  //ADC10CTL0 = ADC10SHT_2 + ADC10ON + ADC10IE + REFON + REF2_5V; // 2,5V als Referenz
15

16
  ADC10CTL1 = INCH_2;  //P1.2 als input für ADC
17
  ADC10AE0 |= BIT2;
18

19
  for(;;){
20
    ADC10CTL0 |= ENC + ADC10SC;
21
    wert = ADC10MEM;
22
  }
23

24
  return 0;
25
}
Gast #3361494
Lesenswert?

Du gibst dem Wandler ja garkeine Zeit, irgendwas zu wandeln. Du startest 
direkt immer ne neue Messung. Arbeite mit Interrupts und bearbeite das 
Ergebnis in der ISR, oder poll das IFG oder das ADC10BUSY-Flag. Guck mal 
in die Code-Examples von TI.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren