mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik MSP430-413STK2 Tutorials Probleme


Autor: Jacob (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich habe heute angefangen etwas mit dem Development Board von olimex 
rumzuprobieren um mir Hardwarenahe Programmierung nach und nach 
beizubringen.

Dazu wollte ich zuallererst die Tutorials abarbeiten, und habe auf der 
Seite vom Olimex ein Tutorial gefunden, welches Quasi alle Funktionen 
des Boards anspricht, also LEDs, Beeps, LCD usw.

Mein Problem ist allerdings, das dieses Tutorial genauso wie ähnliche 
Tutorials von TI auf meinem Board nicht zum erfolg führen. Zwar wird das 
Programm auf den MSP geschrieben, nur scheint die Zuweisung vorne und 
hinten nicht zu funktionieren, also anstelle eines LCD Ziffern Segmentes 
blinkt eine andere Stelle usw. In den Tutorials steht auch, das die LED 
an P5.1 angeschlossen ist, in meinem fall hängt sie aber an P6.2.

Mir ist auch die Zuweisung nicht wirklich klar. Mir würde es sehr 
helfen, wenn mir jemand den angehängen Tutorial Code (quasi Hello World) 
halbwegs erklären würde.

  P5DIR |= 0x01;
Was an dieser Stelle passiert, ist mir nicht ganz klar P5Dir ist ein 
Objekt oder eine Variable nehme ich an, |= heißt eigentlich sowas wie 
Odergleich?!

Mir würde ein gutes Tutorial hier wirklich weiterhelfen, ich 
programmiere sonst Java oder eher in Richtung Webgeschichten, habe auch 
vor kurzem ein kleines Projekt mit einem Java Mikrokontroller umgesetzt, 
allerdings lief dieses deutlich Hardwareferner ab, und hier an diesem 
Teil bin ich zur Zeit noch überforder, vor allem deswegen, weil ich mir 
die Programmiersyntax nicht anhand des Tutorials herleiten kann, da 
dieses nicht funktioniert. Ich versuche hierbei nicht in Assembler zu 
schreiben, sondern in C, allerdings habe ich hier keine wirklichen 
Erfahrungen, wobei C ansich nicht mein Problem ist, sondern eher diese 
Hardwarenahe Syntax.
#include "msp430.h"

int main(void)
{
  WDTCTL = WDTPW + WDTHOLD;             // Stop watchdog timer
  P5DIR |= 0x01;                        // Set P5.1 to output direction

  for (;;)
  {
    volatile unsigned int i;            // volatile to prevent optimization

    P5OUT ^= 0x01;                      // Toggle P5.1 using exclusive-OR

    i = 15000;                          // SW Delay
    do i--;
    while (i != 0);
  }
}

Autor: Jacob (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Delay und so im Code ist klar, while und do sowieso, aber ich werde 
nicht ganz schlau, wie ich aus dem Datenblatt nun die Adresse meiner LED 
lese
http://www.olimex.com/dev/pdf/msp430-413stk2.pdf

Autor: Jörg S. (joerg-s)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Für den Anfang schau mal hier:
http://www.mathar.com/msp430.html
und das hier an:
http://www.mikrocontroller.net/attachment/63080/MS...


>  P5DIR |= 0x01;
>Was an dieser Stelle passiert, ist mir nicht ganz klar P5Dir ist ein
>Objekt oder eine Variable nehme ich an, |= heißt eigentlich sowas wie
>Odergleich?!
Dazu z.B.:
http://www.cle-mens.de/docu/stream/5-ref/4-op/binary.html

>In den Tutorials steht auch, das die LED an P5.1 angeschlossen ist, in
>meinem fall hängt sie aber an P6.2.
Dann scheint das nicht der Code für dein Board zu sein.

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jacob schrieb:
> P5DIR |= 0x01;
> Was an dieser Stelle passiert, ist mir nicht ganz klar
In diesem Fall empfehle ich Kernighan&Ritchie "Programmieren in C"  ;-)

> Was an dieser Stelle passiert, ist mir nicht ganz klar
Das ist eine der allereinfachsten Zuweisungen, die findest du im 
angesprochenen Buch ziemlich auf den ersten Seiten.
P5DIR ist ein Register, das die Richtung vom Port 5 einstellt.
Egal was da drin steht, es wird das erste Bit dazuverodert.
Die genaue Funktion des Registers P5DIR ist im Datenblatt beschrieben.

Autor: Jacob (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für eure Geduld, ich denke solche Fragen werden hier des öfteren 
gestellt(gerade mit der Zuweisung). Danke auch für die Tutorials und 
Buchtipps, die werde ich mir nun erstmal zu Gemüte ziehen :)

Eine letzte Sache noch:
Ich bin mir ziemlich sicher, dass ich das richtige Tutorial, zumindest 
laut Hersteller ausgewählt habe:
http://olimex.com/dev/msp-413stk2.html Das ist der Link, unter dem das 
Tutorium "msp430-413stk.asm test software for RS232 Tx/Rx, button scan, 
LED, buzzer, Dallas iButton check present " zu finden ist. Nachdem ich 
in meinem Workspace die beiden benötigten Libarys kopiert habe, lässt 
sich dieses Tutorial auch debuggen, allerdings seht ihr auf dem Bild im 
ersten Post, wie meine Ausgabe auf dem STK ist. Ich habe doch eigentlich 
alles richtig gemacht?

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielleicht liegt es daran, dass das verlinkte Tutorial für das 413STK 
ist, Du aber das 430STK2-Board hast?
Wie dem auch sei... die erste Anlaufstelle für Dich ist der User-Guide 
der entsprechenden F4xx-Familie bei TI!

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.