www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik MSP430 F1612 Single-Channel, Single Conversion - Mode (ADC12)


Autor: Armin Motakef (orginalperser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Leute,

ich habe momentan ein riesen Brett vor dem Kopf. Warum funktioniert 
folgender Code bei mir nicht?
// In einer Initialisierungsfunktion

P6DIR   = 0xEF;
P6SEL   = 0x10;
    
ADC12CTL0 = ADC12ON + SHT0_1 + REFON + REF2_5V; // Konfiguriert ADC12
ADC12MCTL0 = SREF_1 + INCH_4;                   // Vr+=Vref+ und Vr-=AVss,  
                                                //  Konvertierung von a4
ADC12CTL1 = CONSEQ_0;                      // SC-SC Mode
 
ADC12CTL0 |= ENC;        // Konvertierung beginnen


// ....

// Interruptroutine von TimerA

ADC12CTL0 |= ADC12SC + ENC;             // Abtasten und Konvertieren
while ((ADC12IFG & 0x0001)==0);         // Hier bleibt das Programm hängen      

U0TXBUF = (ADC12MEM0>>8);
while( ( IFG1 & 0x80 ) == 0 );    

U0TXBUF = ADC12MEM0;
while( ( IFG1 & 0x80 ) == 0 );

// Ende

Der Code bleibt bei der Abfrage des ADC - Interrupts hängen. Ich gehe 
davon aus, dass ich den AD-Wandler falsch konfiguriert habe, aber was 
habe ich falsch gemacht?

Vielen Dank im Vorraus für eure Hilfe!
Schönes Wochenende!
Armin

Autor: Christian R. (supachris)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Wieso schaust du nicht in die C-Demos von TI? Du hast den Sample%Hold 
Timer vergessen, fällt mir spontan auf:
ADC12CTL1 = SHP;                          // Use sampling timer

Ansonsten in das angehängte Beispiel schauen.

Autor: Armin Motakef (orginalperser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke, jetzt funktionierts. Ich meine, ich hätte es mit gesetztem SHP - 
Bit ebenfalls probiert, aber anscheinend lag ich falsch...

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.