Forum: Mikrocontroller und Digitale Elektronik MSP430 P1IV Fehlermeldung


von Dominik G. (moondryl)


Lesenswert?

Hallo,

ich hänge hier gerade etwas bei den Interrupts des MSP430.
Ich nutze ein Launchpad mit einem msp430g2553. Nun wollte ich den 
Port1-Interrupt nutzen, bekomme aber einen Fehler:

#20 identifier "P1IV" is undefined
1
#pragma vector = PORT1_VECTOR
2
3
__interrupt void Port_1(void)
4
{
5
  volatile unsigned int P1IV_Read = P1IV;
6
7
  if((P1IV_Read & 0x0A))
8
  {
9
    P1OUT ^= BIT3;
10
  }
11
12
}

Wo liegt mein Fehler?
Wie lese ich denn sonst das PxIV-Register?

Hoffe, ihr könnte mir bitte helfen.

Viele Grüße

Dominik :)

von Felix (Gast)


Lesenswert?

Hallo Dominik,

hier ein P1-ISR-Beispiel von der TI HP:

1
// Port 1 interrupt service routine
2
#pragma vector=PORT1_VECTOR
3
__interrupt void Port_1(void)
4
{
5
  P1OUT ^= BIT0;                            // P1.0 = toggle
6
  P1IFG &= ~BIT3;                           // P1.3 IFG cleared
7
}

Ich denke du solltest einen Blick in den Userguide werfen und dir die 
jeweiligen Register anschauen. Die Flags können im PxIFG-Register 
abgefragt bzw. gecleared werden.

MfG

von Dominik G. (moondryl)


Lesenswert?

Autsch! Mein Fehler! Ich hatte das falsche Datenblatt geöffnet.
Ich hatte das DB für die Produktfamilie MSP0x5xx. Das PxIV-Register 
existiert für diesen Controller einfach nicht.

Werde dann den Weg über das PxIFG-Register gehen. :)

Viele Grüße

Dominik

von Helper (Gast)


Lesenswert?

Im Family User Guide slau144 unter 8.2.7 steht alles zu den Interrupts.

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.