msp430 ADC10 Kanäle auswählen

OP #494808
Lesenswert?
• ▲
▼
Hallo!

ICh versuche mit dem adc10 im msp430f1232 die Spannungen an A0 und A1 zu 
messen...
irgendwie bekomme ich aber für beide Kanäle die gleichen Werte?!?!?
Kann mir jemand einen Tipp geben?
1
  /*Init ADC*/
2
  
3
  ADC10CTL0 = ADC10SHT_2 + ADC10ON + ADC10IE; // ADC on Int. enabled
4
  ADC10AE |= 0x07; // Select the Pin 2.0-2.2
5
  
6
  ADC10CTL0 |= ENC + ADC10SC + INCH_0; // Start Conversion 
7
  while (ADC10CTL0 & ADC10BUSY); // Polling while ADC Busy
8
  adc_wert1 = (int) (((float)ADC10MEM / 1024.0) * 3600.0); // Wert in mV
9
  
10
  ADC10CTL0 |= ENC + ADC10SC + INCH_1; // Start Conversion 
11
  while (ADC10CTL0 & ADC10BUSY); // Polling while ADC Busy
12
  adc_wert2 = (int) (((float)ADC10MEM / 1024.0) * 3600.0); // Wert in mV
Gast #494836
Lesenswert?
• ▲
▼
Hatte auch mal so ein Problem, aber kann mich nicht mehr genau erinnern 
was es war.
Auf jeden fall musste erst ein Flag deaktiviert werden, damit der Kanal 
gewechselt werden konnte.
Am besten nochmals im Hardware Manual den Teil zum ADC10 durchlesen...
OP #494911
Lesenswert?
• ▲
▼
habs nochmal probiert....
1
  ADC10CTL0 = ADC10SHT_2 + ADC10ON + ADC10IE; // ADC on Int. enabled
2
  ADC10AE |= 0x07; // Select the Pin 2.0-2.2
3
  
4
  
5
  ADC10CTL0 |= ENC + ADC10SC + INCH_0; // Start Conversion 
6
  while (ADC10CTL0 & ADC10BUSY); // Polling while ADC Busy
7
  adc_wert1 = (int) (((float)ADC10MEM / 1024.0) * 3600.0); // Wert in mV
8
  ADC10CTL0 &= ~ENC;
9
  
10
  ADC10CTL0 |= ENC + ADC10SC + INCH_1; // Start Conversion 
11
  while (ADC10CTL0 & ADC10BUSY); // Polling while ADC Busy
12
  adc_wert2 = (int) (((float)ADC10MEM / 1024.0) * 3600.0); // Wert in mV
13
  ADC10CTL0 &= ~ENC;

geht leider auch nicht.....
Gast #495303
Lesenswert?
• ▲
▼
MSP430x1xx User Guide (slau049f)
1
ADC10CTL0 = ADC10SHT_2 + ADC10ON + ADC10IE;
2

3
//alles vor dem INCH_0 muss u.U. noch angepasst werden.
4
ADC10CTL1 = CONSEQ_0 | ADC10SSEL_0 | ADC10DIV_0 | SHS_0 | INCH_0;
5

6
ADC10CTL0 = ENC + ADC10SC;
7

8
while (ADC10CTL1 & ADC10BUSY);
9
...

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.