Forum: Mikrocontroller und Digitale Elektronik MSP430F2122 A/D Wandler Daten vom RAM lesen


von Michael S. (mike1992)


Lesenswert?

Hallo,

ich habe hier ein Beispiel Programm vom TI, dass 3 Werte in Folge
einliest. Diese werden dann aufsteigend unter der ADC10SA Adresse
gespeichert. Meine Frage ist nun wie ich diese Daten auslesen kann, da
dies im Beispiel nicht gezeigt wird. Ich habe den MSP430F2122 und 
verwende die MSP430-GCC tools.

Danke im Voraus
1
#include "msp430x21x2.h"
2
3
void main(void)
4
{
5
  WDTCTL = WDTPW + WDTHOLD;                 // Stop WDT
6
  ADC10CTL1 = INCH_2 + CONSEQ_1;            // A2/A1/A0, single sequence
7
  ADC10CTL0 = ADC10SHT_2 + MSC + ADC10ON + ADC10IE;
8
  ADC10DTC1 = 0x03;                         // 3 conversions
9
  ADC10AE0 |= 0x07;                         // P2.2,1,0 ADC10 option select
10
  P1DIR |= 0x01;                            // Set P1.0 output
11
12
  for (;;)
13
  {
14
    ADC10CTL0 &= ~ENC;
15
    while (ADC10CTL1 & BUSY);               // Wait if ADC10 core is active
16
    ADC10SA = 0x200;                        // Data buffer start
17
    P1OUT |= 0x01;                          // P1.0 = 1
18
    ADC10CTL0 |= ENC + ADC10SC;             // Sampling and conversion start
19
    __bis_SR_register(CPUOFF + GIE);        // LPM0, ADC10_ISR will force exit
20
    P1OUT &= ~0x01;                         // P1.0 = 0
21
22
  }
23
}
24
25
// ADC10 interrupt service routine
26
__attribute__((interrupt(ADC10_VECTOR)))
27
void ADC10_ISR(void)
28
{
29
  __bic_SR_register_on_exit(CPUOFF);        // Clear CPUOFF bit from 0(SR)
30
}

von Michael S. (mike1992)


Lesenswert?

Hab das Problem gelöst. Es hat schon einen Ähnlichen Post gegeben.
Falls es jemand braucht: Beitrag "MSP430 ADC10 mehrere Kanäle"

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.