www.mikrocontroller.net

Forum: PC-Programmierung MSP430 mit Tastatur ansteuern


Autor: Silvio Hartlaub (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich möchte gerne die Eingabe von einer Tastatur an den MSP430F149
übertragen. Jedoch Programm (angeschlossenes, funktionierendes LCD)
zeigt kein „I“ - Interrupt für eingehende Daten am USART an. Für jeden
Tipp wäre ich sehr dankbar.

Meine Annahmen:
-Takt von Tastatur (Tastatur= Master, MSP = Slave)
-Übertragung im SPI Mode
-Datenfluß von Tastatur zum MSP – nur 2 Anschlüsse:
 Taktleitung der Tastatur (5V) an Port P3.1/SIMO0 (2,63V)
 (High-level input voltage VIL min 0,8xVCC/gemesssen 2,63V = 0,81xVCC)
 Datenleitung der Tastatur (5V) an Port P3.3/UCLK0 (2,63V)
 (Es müssen ja nur Daten in Richtung MSP fließen, oder?)

-Bei gedrückter Tastatur fäll die Spannung (gemessen mit Dig.
Multimeter) beider Leitungen geringfügig auf 2,61V ab. Pulsierendes
Signal! - somit schein Tastatur zu senden.

Tastatur Datenformat:
1 Startbit.  (immer 0),  8 Databits, 1 Paritybit (odd parity),1 Stopbit
(immer 1); 5V (2,63V am MSP) = logic 1, 0V=logic 0

Software:
…
U0CTL |= SWRST;    //USART Software reset
U0CTL |= CHAR;    // 8 Data bits
U0CTL |= SYNC;    // USART Mode  (SPI)
U0TCTL |=CKPH;    // Clock Phase 1/1 Takt verschoben
U0TCTL |=CKPL;    //Clock Polarity/ Inactive Level is high ;
      //Data is output with falling edge of UCLK
U0TCTL |=STC;    // 3-pin SPI mode
ME1 |= USPIE0;           // USART SPI einschalten
U0CTL &= ~SWRST;         // USART freigeben
IE1 |= URXIE0;           // RX-interrupts anschalten
IFG1 &= ~URXIFG0;       // initales interrupt-flag loeschen
...
//Interrunpt Handler soll Eingang von Daten am USART anzeigen:
#pragma interrupt_handler usart0_rx:UART0RX_VECTOR
void usart0_rx (void)
{  LCDOuts("I");}  // Für USART Input Anzeige am LCD
...

Autor: Jens123 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo
ich mein mich zu erinenrn, dass die tastatur 2 startbits hat

nur wieso ueber SPI??
ich hab mir sowas ueber Software aufgebaut klappt Prima

nur ebend fuer den AVR

schau mal im Forum, da sind einige beispiele

Autor: Silvio Hartlaub (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich dachte SPI, weil die Tastaur den Takt vorgibt.

Autor: KoF (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
seh mal in die codesamples vom mspgcc da ist ein code für das auslesen
von keyboards.
ebenso kann man da codes für softwareuarts, glcd,... finden.

wenn du dir die samples ansiehßt, wirst du schon was passendes finden
;-)

mfg KoF

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.