Car-PC.info

Kommunikation - Zugriff auf RS232 funzt ned

tomham - Di 09 Mai, 2006 21:07
Titel: Zugriff auf RS232 funzt ned
Hi!

Hab mit Hilfe von Microsoft Visual C# Express Edition (verwendet .NET 2.0) ein Progamm erstellt, das mir 16 Werte an einen Mikrocontroller überträgt, jedoch habe ich einen Fehler in der Kommunikation, den ich nicht beheben kann.

Wollte uch daher fragen, ob sich hiermit irgendwer auskennt:

IOCTL_SERIAL_SET_WAIT_MASK Mask: RXCHAR RXFLAG CTS DSR RLSD BRK ERR RING

Bin draufgekommen, dass da nur ein RLSD und ein ERR sein darf, damit mein Controller das versteht ...
Hab das schon in diverse andere Foren gepostet, aber es kam nie eine Antwort, daher hoffe ich hier eine zu finden.
Auch meine Lehrer in der Schule stehen am Rande ihres Wissens ...

Würd mich daher ganz besonders über eine Antwort freuen.
Maxx1278 - Di 09 Mai, 2006 23:21
Titel:
Was passiert, wenn du die Mask auf 0 setzt?
tomham - Mi 10 Mai, 2006 11:34
Titel:
kA, weiß leider ned wie das geht ...
Hab das Prog in C#, aber keine Ahnung wie ich da die Waitmask umändern kann ...
ein Professor meinte, ich solle ein kleines C-Script schreiben, das mir über GetCommMask und GetCommTimeout die serielle parametriert ... aber auch keine Ahnung wie das gehen soll, da ichs nicht so mit C habe ...
Maxx1278 - Mi 10 Mai, 2006 12:12
Titel:
Warum willst du überhaupt die WaitMask ändern?
Probier folgenden Code aus, um auf die Serielle zu schreiben.

Code:

SerialPort sp = new SerialPort ("COM1", 9600, Parity.None, 8, StopBit.One);
sp.Write("StringToWrite");
sp.Close();


Wenn du wissen willst, wann Daten ankommen, registrier dich am Event "DataReceived"
tomham - Do 11 Mai, 2006 09:00
Titel:
hab das jetzt ausprobiert, aber es funzt auch ned.
hab allerdings im internet ein C#-Programm entdeckt, welches die Umgebung der seriellen Schnittstelle einzeln konfiguriert. Nur stehe ich da im Moment auch an, da mir nicht klar ersichtlich ist, wo genau das geschieht ... aber hier kann ich einen Lehrer von mir fragen, ist kein Problem ...

trotzdem würde ich mich freuen wenn einer eine andere Lösung hätte.
Maxx1278 - Do 11 Mai, 2006 09:30
Titel:
Wenn du schreiben würdest, welchen Code du da heruntergeladen hast, könnte sich den jemand ansehen.
tomham - Do 11 Mai, 2006 13:01
Titel:
Es trägt den Titel:
Serial Comm: Use P/Invoke to Develop a .NET Base Class Library
for Serial Device Communications
und ist von John Hind (vom MSDN Magazine)

downloadbarer quelltext unter:
http://msdn.microsoft.com/msdnmag/issues/02/10/netserialcomm/
Maxx1278 - Do 11 Mai, 2006 14:59
Titel:
Der Beitrag ist nur interessant, wenn du das Framework 1.1 verwendest.
Beim 2.0er ist eben die SerialPort Klasse dabei, die man verwenden kann.
Wenn eben diese SerialPort Klasse nicht funzt, weiß ich so jetzt auch keine Lösung für dich.
tomham - Do 11 Mai, 2006 15:17
Titel:
Tja, die serialport-klasse funktioniert aber leider nciht, von daher häte ich es eben mit der anderen probiert, da ich ja das 1.1er Framework auch noch habAber trotzdem danke für deine HIlfe.
Alle Zeiten sind GMT + 1 Stunde
Powered by phpBB2 Plus and Kostenloses Forum based on phpBB