MSP430 F2013 merkwürdiges Verhalten

Gast #1925346
Lesenswert?
• ▲
▼
Hallo zusammen,

ich habe ein merkwürdiges Phänomen mit einem MSP430F2013. Die 
Beschaltung sieht folgendermaßen aus:

                      MSP430f2013
                    --------------
          +3,5V  --|DVCC       GND|-- DVSS
       rote LED  --|P1.0      P2.6|-- Enable
            TXD  --|P1.1      P2.7|-- Data
            RXD  --|P1.2      TEST|-- TEST/SBWTCK
         Taster  --|P1.3     RESET|-- RST/NMI/SBWTDIO
        ADC_IN+  --|P1.4      P1.7|-- Clock
  (GND) ADC_IN-  --|P1.5      P1.6|-- grüne LED
                    --------------

Nun zum Phänomen, an RXD wird ein Interrupt ausgelöst und der Eingang 
ist entsprechend konfiguriert. Wenn ich nun den ADC konfiguriere 
(INCH_2) dann löst der Interrupt an RXD nicht mehr aus. Kommentiere ich 
die Zeile SD16AE = SD16AE2 aus dann funktioniert der Interrupt 
einwandfrei.

Was hat bitteschön der INCH_2 an P1.4, P1.5 mit dem Interrupt an P1.2 am 
Hut ???

Auszug Initialisierung:
1
    P1IES |= RXD;                                 // RXD hi/low edge interrupt
2
    P1IFG &= ~ RXD;                               // clear RXD (flag) before enabling interrupt
3
    P1IE |= RXD;                                  // enable RXD interrupt
4
    P1OUT &= ~ LED1 + LED2;                       // LED's Off
5
    P2SEL &= ~ Clock + Data;                      // P2.6, P2.7 as IO
6
    P2DIR |= Clock + Data;                        // Clock, Data als Ausgang setzen
7

8
    SD16_A = 0x61;                                // center 1,2V temp. drift 50ppm/K (Errata, ADC)
9
    SD16CTL = SD16REFON + SD16SSEL_1 + SD16DIV_0; // VREF=1.2V, fM=SMCLK (SD16CTL=REF+Clocksource)
10
    SD16INCTL0 = SD16INCH_2;                      // ADC Input is (SD16INCH_2)
11
    SD16CCTL0 = SD16UNI + SD16OSR_1024;           // OSR=1024, unipolar
12
//    SD16AE = SD16AE2;                             // P1.4 A2+, P1.5 A2- = GND, enable analog Input

Vielen Dank für die Hilfe.
Gast #1925585
Lesenswert?
• ▲
▼
Erst einmal vielen Dank, kanns im Moment nicht testen... das wäre der 
Hammer denn wenn ich mit der Konfiguration messe, dann bekomme ich 
korrekte Meßwerte am Eingang.

Kannst Du mir bitte sagen wo du diese Zuordnung im DB gefunden hast ?

Vielen Dank noch mal.
Gast #1925667
Lesenswert?
• ▲
▼
Die Zuordnung ist im Datenblatt im Abschnitt "APPLICATION INFORMATION, 
MSP430x20x3" auf den Seiten "Port P1 (P1.0 to P1.3) pin functions, 
MSP430x20x3" und "Port P1 (P1.4 to P1.7) pin functions, MSP430x20x3" zu 
finden.

Die ADC Eingänge werden über den ausgewählten ADC Kanal bestimmt, mit 
den SD16AE.x Bits werden die Ausgangstreiber bzw. Eingangschaltungen 
abgeschaltet:
3. Setting the SD16AE.x bit disables the output driver as well as the 
input schmitt trigger to prevent parasitic cross currents when
applying analog signals.

Statt P1.5 mit GND zu verbinden könntest du auch einfach nur das Bit für 
P1.4 setzen und das für P1.5 auf 0 lassen:
4. With SD16AE.x = 0 the negative inputs are connected to VSS if the 
corresponding input is selected.

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.