LPC2142 ADC funktioniert nicht

Gast #1244595
Hallo,

versuche mit folgendem Code vom AD0.2 auf einem LPC2142 zu lesen:
1
#define ADC1_SEL_2142 26
2
#define ADC_START 24
3
#define ADC_DONE 0x80000000
4

5
        PINSEL1 &= ~(3 << ADC1_SEL_2142);
6
        PINSEL1 |= (1 << ADC1_SEL_2142);
7

8
        AD0CR = 0x00200f04; /* AD1: 10bit AIN1 3MHz */
9
        AD0CR = (1 << ADC_START); /* start AD conversion */
10

11
        do {
12
            i++;
13
            val = (U32)AD0DR2;
14
        } while ((val & ADC_DONE) == 0); // && i < 2000);

Die Prüfung auf i als Timeout habe ich bewusst auskommentiert, da ich 
wissen wollte ob irgendwann ein Ergebnis rauskommt - leider friert 
dieser Code immer ein - Ich nehme an es wird eine Endlosschleife beim 
Prüfen auf Erfolg sein...

Hat jemand eine Idee was falsch läuft?

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.