Hallo Leute!
Ich habe ein kleines Problem mit meinem GUI. Die Kommunikation zwischen
den PC und mein Modul ist über den RS232 Protokoll und über das GUI
möchte ich die Anschlusseinstellung(Baudrate, Stopp-Bit, Parität-Bit)
bei jeder Verbindung ändern. Ich benutze schon µC-MSP430F1612
Hat jemand eine Idee woran das liegen könnte?? Wie kann ich automatische
Anschlusseinstellung ändern.
bin echt ratlos
LG Delil
>bin echt ratlos
Geht mir genauso ;)
Vielleicht könntest du das ganze noch mal etwas ausführlicher
beschreiben, so das man versteht worum es genau geht und um welches
Problem es sich genau handelt.
Der MSP430 soll sich automatisch an andere Baudraten, Parity und
Stopp-Bit Anzahl anpassen? Das wird nicht klappen. Die neuesten MSP430
Dinger haben eine Art Auto-Baudrate-Detection für LIN drin, aber die hat
auch Grenzen.
Wozu soll das ganze gut sein?
Wenn das tatsächlich gewünscht wird, dann sollte sich der Threadstarter
mal den Algorithmus ansehen, der in Modems mit dem Hayes-Befehlssatz
dafür verwendet wird - dazu dienen die Zeichen AT, mit denen jedes
Kommando anfängt.
Nur: Was soll das? Wozu soll das gut sein?
Hallo!
Danke schon mal für die Antwort.
Ich möchte mein Problem nochmal erläutern.
Ich beschäftige mich gerade mit dem MSP430F1612 und möchte ich eine
Kommunikation zwischen den PC und Controller herstellen und habe schon
auf dem PC eine GUI-Software (es gibt über das GUI ein Menü für
Anschlusseinstellung, die den User gewünschte Werte, -Baudrate,
Stopp-Bit und Parität-Bit,- ausgewählt werden kann.)damit kann den User
mit gewünschten Werte mit µC kommunizieren. Ziel ist es, bei jedem
Verbindung den User Anschlusseinstellung beliebiger auswählen kann.
Das Problem ist bei mir, wie kann der µC automatische Baudrate
anpassen.
viele Grüße
Delil
Das lässt man einfach bleiben. Wozu soll das auch gut sein?
Der Controller arbeitet mit fest vorgegebener Baudrate und restlichen
Parametern, die GUI-Software bietet dem Benutzer dann eben auch nicht
an, irgendetwas anderes zu konfigurieren.
Wenn die GUI-Software eine allgemein gehaltene ist (wie z.B. HyperTerm),
dann muss der Benutzer die richtigen Parameter einstellen, bevor die
Kommunikation funktioniert.
So ist das, so macht man das, so funktioniert das.
Nun, wie ich bereits schrieb, gibt es eine jahrzehntealte
Herangehensweise, nämlich die im Hayes-Modembefehlssatz verwendete
Erkennung anhand der definierten Zeichenfolge "AT".
Daß es keinen nachvollziehbaren Grund dafür gibt, so etwas
implementieren zu wollen, das steht auf einem ganz anderen Blatt.
Naja, dann hat man immer noch das Problem mit Parity, Anzahl der
StoppBits, 7 oder 8 Bit Zeichen.....also lass es bleiben. Nahezu jedes
normale RS232 Gerät hat eine feste Schnittstelleneinstellung. Sachen,
die größtmögliche Flexibelität ermöglichen, enden meist im Desaster...
OK.
Bei der Texas Instruments, sondern auf die Baudrate, gibt es ein
Dokument Slaa215 (APN).
Ich habe diese Anwendung ist nicht vollständig verstanden. Wie kann das
Flußdiagramm als C-Code zu konvertieren.
http://microblog.routed.net/wp-content/uploads/2006/09/slaa215.pdf
Wie beschrieben: Normalerweise setzt man die Baudrate des Controllers
fest. Punkt. Dann ist für die serielle Kommunikation via EIA232 noch der
zweite Teilnehmer einzustellen.
es kann sein, dass deine GUI defaultwerte hat. Wahrscheinlich ist es das
Standardprotokoll 8N1! Dann könntest du den Controller auch auf 8N1
laufen lassen, ohne dass du jedes mal was umstellen musst bei deiner
GUI(welche auch immer es sein mag....)
zur Baudrate und zu denen, die es nicht verstanden haben und auch nicht
wollen:
http://mspgcc.sourceforge.net/baudrate.htmlhttp://msp430.info/modules.php?name=Gadgets&op=uartc
>es kann sein, dass deine GUI defaultwerte hat
der User kann beliebiger Werte Auswählen. z.B. 7E1,8N1(12 Möglichkeit.)
ich möchte mit mein GUI mit flexibel Einstellung arbeiten. wie
beschreibt,nur
User kann geändert werden.
Liest Du eigentlich, was man Dir schreibt?
Es ist sinnlos. Auch wenn Deine GUI eine Möglichkeit bietet,
irgendwelche Einstellungen vorzunehmen, ist es sinnlos und bleibt
sinnlos.
Nachtrag:
Um Fehleinstellungen bei Parity Bits und Wortlänge erkennen zu können,
müssen die verschiedenen Fehlerbits der UART ausgewertet werden.
Dazu dienen in UxRCTL die Bits FE, PE und OE (Framing-, Parity- und
Overrun-Error).
Und wie ich bereits ad nauseam wiederholte: Sieh Dir die Dokumentation
des Hayes-Modem-Protkolles in Bezug auf die Verwendung der Zeichenfolge
"AT" an.
Und wie auch schon andere ad nauseam wiederholt haben:
Es ist und bleibt sinnlos.
Delil schrieb:
>>es kann sein, dass deine GUI defaultwerte hat> der User kann beliebiger Werte Auswählen. z.B. 7E1,8N1(12 Möglichkeit.)>> ich möchte mit mein GUI mit flexibel Einstellung arbeiten. wie> beschreibt,nur> User kann geändert werden.
Hast du das bei irgendeinem Programm schon mal gesehen? Sowas wird
nirgends gemacht, das ist völlig sinnlos.
Völlig beratungsresistent...wirst mal ein guter Chef.
Völlig beratungsresistent...wirst mal ein guter Chef.
Pardon, bitte Respekt!!!Aber sie haben falsch verstanden.
Die Idee ist von meinem Berater
Meine Absicht hier ist nur eine Verhandlung. rufus hat schon meine Frage
beanwortet