01.09.2013, 13:57
Beitrag #2
|
Trinitatis
LVF-Guru
Beiträge: 1.694
Registriert seit: May 2008
7.1 / 8.0 /2014-1, 18
2002
DE
18055
Deutschland
|
RE: Serielle Kommunikation
Hallo liebes Leut ,
du müstest erstmal eine ser. SS initialisieren, wobei gemäß deiner Exceldatei die Baudrate auf 38400 zu setzen ist. Die anderen Einstellparameter entsprechen dem LabView-Standard (unverdrahtet)
Den TO sollte man allerdings auf 1-2 s setzen, anstatt auf 10, wie im Standard.
Dann kannst du gemäß deiner Befehlsliste in der Exceldatei entsprechende Kommandos zusammenbauen, im einfachsten Fall erstmal aus einem Stringelement, das auf hex. gestellt ist und solltest danach die im file angegebene Antwort zurückbekommen.
Gruß, Marko
|
|
|
01.09.2013, 16:28
Beitrag #3
|
jg
CLA & CLED
Beiträge: 15.864
Registriert seit: Jun 2005
20xx / 8.x
1999
EN
Franken...
Deutschland
|
RE: Serielle Kommunikation
An einer Stelle widerspreche ich Marko:
Bei "VISA Configure Serial Port" nicht alles auf Standard lassen. Entweder den Termination Char explizit deaktivieren (Anschluss von False statt True) oder den Standard Termination Char von 0xA auf 0x80 ändern. Ich persönlich würde Vorschlag 2 bevorzugen.
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
Einführende Links zu LabVIEW, s. GerdWs Signatur.
|
|
|
01.09.2013, 18:23
Beitrag #4
|
|
|
02.09.2013, 12:20
Beitrag #5
|
jg
CLA & CLED
Beiträge: 15.864
Registriert seit: Jun 2005
20xx / 8.x
1999
EN
Franken...
Deutschland
|
RE: Serielle Kommunikation
Als erstes würde ich das "TEST"-Kommando ausprobieren und einen String 0xAA5505 an den Mikrocontroller zu senden:
Nicht ganz eindeutig erklärt ist dir Formatierung der "Power".
Wahrscheinlich wird ein U8-Wert (also 0-255) auf die Werte 0-100% skaliert.
Aber sicher bin ich mir da nicht, es könnte auch sein, dass jedes Bit im U8 eine 12.5% Leistungsstufe ist.
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
Einführende Links zu LabVIEW, s. GerdWs Signatur.
|
|
|
03.09.2013, 14:57
Beitrag #6
|
Labviewnoob2000
LVF-Grünschnabel
Beiträge: 27
Registriert seit: Aug 2013
2012
-
DE
|
RE: Serielle Kommunikation
Hallo,
1000 Dank schonmal vor ab. Ihr habt mir schon sehr geholfen und ich kann via Beispielprogramm mit meiner Hardware kommunizieren.
Leider Funktioniert bis jetzt nur An/Aus und der testbefehl.
ich hab leider auch keine ahnung was der TO und terminationschar ist.
Bei der Formatierung der "Power" komm ich leider garnicht weiter. ich hab alle möglichen Werte zwischen 0-255 versucht. auch von 0-10 bzw 8 geht garnix.
wenn ich AA5501+irgendwas sende schalten sich alle Kanäle einfach ab.
wenn ich den kanälen dann über die software wieder werte zuweise kann ich sie immerhin mit AA5502 wieder anschalten. bzw mit 03 abschalten.
hat vielleicht noch jemand ne idee?
vielen dank schonmal
|
|
|
03.09.2013, 15:04
(Dieser Beitrag wurde zuletzt bearbeitet: 03.09.2013 15:06 von Trinitatis.)
Beitrag #7
|
Trinitatis
LVF-Guru
Beiträge: 1.694
Registriert seit: May 2008
7.1 / 8.0 /2014-1, 18
2002
DE
18055
Deutschland
|
RE: Serielle Kommunikation
Hallo,
TO ist der Timeout, also wie lange die Funktion wartet bis die von dir angegebene Anzahl von Zeichen gelesen werden. Wird die Anzahl gelesen, ist er irrelevant, im anderen Fall speingt die Funktion nach dieser Zeit ab.
Das terminations char ist das Abschlusszeichen. Du kannst vom Port dann immer bis zu diesem definierten Zeichen lesen.
Ich würde mir erstmal ein funktionierendes Terminal erstellen, dann kannst du den anderen Fragen auf den Grund gehen.
Gruß, Marko
Edit:
Außerdem würde ich alles über portmon o.ä. mitloggen, um auszuschließen, dass du etwas zu senden glaubst als das, was tatsächlich gesendet wird.
|
|
|
10.09.2013, 09:54
Beitrag #8
|
Labviewnoob2000
LVF-Grünschnabel
Beiträge: 27
Registriert seit: Aug 2013
2012
-
DE
|
RE: Serielle Kommunikation
Hallo,
vorab nochmals danke für die tipps bis hier her. es geht mühsam voran.
ich kann mittlerweile für jeden kanal werte vergeben.
mein problem ist jetzt dafür ein interface zu basteln.
ich sende AA5501 und die nächsten 26 byte bestimmen meinen Power value.
jjetzt würde ich gern jeweils ein byte via schieberegler definieren. also AA5501 XX XX XX usw
ich bräuchte also 26 schieberegler die jeweils einen hexwert liefern und das müsste dann in der richtigen reihenfolge zusammengesetzt werden und an den microcontroller gesendet werden.
leider komm ich damit kein stük weiter.
hat jemand n vorschlag?
|
|
|
10.09.2013, 11:51
(Dieser Beitrag wurde zuletzt bearbeitet: 10.09.2013 11:52 von GerdW.)
Beitrag #9
|
GerdW
______________
Beiträge: 17.467
Registriert seit: May 2009
LV2021
1995
DE_EN
10×××
Deutschland
|
RE: Serielle Kommunikation
Hallo noob,
wann immer du vorhast, irgendetwas x-mal zu erledigen: NIMM EIN ARRAY!
Hier also: Nimm ein Array mit 26 Schieberegler-Elementen - dann brauchst du hinterher auch nichts mehr selbst zusammenpfriemeln...
Aber:
Ist es wirklich sinnvoll, 26 Hex-Werte mittels Schieberegler einzustellen?
|
|
|
10.09.2013, 12:42
|
Labviewnoob2000
LVF-Grünschnabel
Beiträge: 27
Registriert seit: Aug 2013
2012
-
DE
|
RE: Serielle Kommunikation
hey,
jeder hexwert steht für einen konstanten strom der die dimmung einer bestimmten led regelt. die schieberegler steuern quasi die dimmung meiner einzellnen wellenlängen.
daher dachte ich schieberegler sind sinnvoll.
ich werd das mit den arrays mal versuchen und fürchte ich melde mich gleich mit fragen zurück
danke schonmal
gruß
|
|
|
| |