COM - Port Daten empfangen und senden und in AutoIT anzeigen lassen...

  • Hey Leute,

    ich hoffe einer von euch kann mir helfen.

    Ich bin bischen mit Microcontrollern am rumprogrammieren und der übermittelt per RS232 Schnittstelle an den PC Daten (zumindest wenn ich es will). In AutoIT sollen die Daten dann in Ausgabefelder ausgegeben werden. Sowie Daten per Knopfdruck über die Schnittstelle weg gesendet werden.

    Es würde mir reichen, wenn mir jemand hilft wie ich die übermittelten Daten in ein Array rein bekomme bzw. Daten an den RS232 senden kann.

    Also normal per einfachen Client Programm wie Putty kann man die Daten auch auslesen, aber ist eher für Test Zwecke und nicht sonderlich übersichtlich, Von daher will ich es bischen ordentlicher haben. Es sollen Messwerte übermittelt werden. Temperaturen genauer gesagt.


    Ich hoffe man kann mir helfen. Muss wie gesagt keine high and Lösung sein. Danke aber schon mal im vorraus.


    Michael

  • http://www.autoitscript.com/forum/topic/12…t-com-port-udf/. Google, 30sek. Ich darf auf meine Signatur verweisen... :rolleyes:

    Gruss Shadowigor

  • Gibt es dort vielleicht auch was auf Deutsch? Weil an sich mein Englisch ist nicht super gut.

    Sry :)

    Michael

  • Ich glaube nicht, habe jedenfalls gerade nichts gefunden. Aber die Funktionen sind ja ziemlich selbsterklärend und sonst darf ich wiederum auf meine Signatur verweisen ...Google ist auch dein Freund... Und sonst gibts halt nichts anderes als Englisch lernen oder meinen ebefalls guten Freund Google Übersetzer zu nutzen. ;)

  • soweit ich weis, brauchst du nur das ..

    [autoit]

    $MsComm = ObjCreate("MSCOMMLib.MsComm.1")
    $MsComm.CommPort =1
    $MsComm.Settings = "57600,N,8,1"
    $MsComm.Handshaking = 0
    $MsComm.InBufferSize = 1024
    $MsComm.InputLen = 1

    [/autoit][autoit][/autoit][autoit]

    $MsComm.PortOpen = 1

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    $nTimeCtr = 0
    $sBuffer = ""

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    while 1
    ;$nTimeCtr += 1
    If $MsComm.InBufferCount > 0 Then
    $sBuffer = $sBuffer & $MsComm.Input
    tooltip($sbuffer,0,0)
    EndIf
    sleep(10)

    [/autoit][autoit][/autoit][autoit]

    WEnd

    [/autoit]

    must dir nur die "MSCOMM32.OCX" irgend wo saugen ..

  • Ich verwende für meinen Arduino die CommMG.au3
    und es klappt alles einwandfrei.
    Ich weiß nicht, ob du das für deine Schnittstelle auch verwenden kannst, aber du kannst es ja versuchen.

    Bsp:

    [autoit]

    #include 'CommMG.au3'

    [/autoit][autoit][/autoit][autoit]

    _CommSetport(3) ;3 - Steht für den Port 3

    [/autoit][autoit][/autoit][autoit]

    While 1
    $instr = _CommGetString()
    ConsoleWrite($instr)
    WEnd

    [/autoit]
    [autoit]


    Func Ulam($n)
    Return 1
    EndFunc

    [/autoit]


    Rekursion FTW :D