mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Interrupts MSP430 Port2


Autor: reflection (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Salu zusammen

Ich habe an Port2 meines MSP430F149 einen Minijoystick, wie er in 
Mobiltelefonen verbaut wird, angeschlossen.

Nun möchte ich gerne einen Interrupt auslösen wenn der Joystick 
IRGENDWIE gedrückt wird. Muss also den Port2 Interrupt verwenden. In der 
ISR möchte ich dann auswerten welche Richtung gedrückt wurde.

Meine eigentliche Frage ist:

Wie heisst der Interruptvektor? Also was muss ich genau schreiben. Für 
den RX des Uart sieht das ja z.B. so aus:

interrupt (UART1RX_VECTOR) usart1_rx(void)

Wie muss diese Zeile heissen damit ich reinspringe wenn der Port2 einen 
Interrupt auslöst? Wo würde ich das selber finden?

Gruss reflection

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Womit programmierst du denn? GCC? IAR? Sieht nach GCC aus. Dann schau 
einfach mal in die msp430x16x.h oder was du auch immer hast, da stehn 
alle Vektoren drin.

Aus der msp430x16x.h:
#define DACDMA_VECTOR       0   /* 0xFFE0 DAC12/DMA */
#define PORT2_VECTOR        2   /* 0xFFE2 Port 2 */
#define USART1TX_VECTOR     4   /* 0xFFF4 USART 1 Transmit */
#define USART1RX_VECTOR     6   /* 0xFFF6 USART 1 Receive */
#define PORT1_VECTOR        8   /* 0xFFE8 Port 1 */
#define TIMERA1_VECTOR      10  /* 0xFFEA Timer A CC1-2, TA */
#define TIMERA0_VECTOR      12  /* 0xFFEC Timer A CC0 */
#define ADC12_VECTOR        14  /* 0xFFEE ADC */
#define USART0TX_VECTOR     16  /* 0xFFF0 USART 0 Transmit */
#define USART0RX_VECTOR     18  /* 0xFFF2 USART 0 Receive, I2C tx/rx */
#define WDT_VECTOR          20  /* 0xFFF4 Watchdog Timer */
#define COMPARATORA_VECTOR  22  /* 0xFFF6 Comparator A */
#define TIMERB1_VECTOR      24  /* 0xFFF8 Timer B CC1-2, TB */
#define TIMERB0_VECTOR      26  /* 0xFFFA Timer B CC0 */
#define NMI_VECTOR          28  /* 0xFFFC Non-maskable */ 

Autor: reflection (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank für die Antwort. Ich progge mit mspgcc. Habs jetzt auch 
gefunden!

Gruss reflection

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.