AHK & Arduino (Serielle Kommunikation)

Stelle Fragen zur Programmierung mit Autohotkey

Moderator: jNizM

User avatar
Gucky_87
Posts: 344
Joined: 03 Jul 2014, 05:09

AHK & Arduino (Serielle Kommunikation)

28 Feb 2020, 15:59

Huhu zusammen,

ich such mir jetzt schon den ganzen Tag den Wolf gesucht, bin aber nicht fündig geworden.
Ich möchte über USB/Seriell mit meinen Arduino per AHK Script kommunizieren, aber alle (z.T. sehr alten)
Libraries und Scripte werfen Fehlereldungen.

Hier ein recht aktueller Link, was ich versucht habe:
https://www.autohotkey.com/boards/viewtopic.php?t=26592

Hinweis: Mein Arduino wird unter COM14 angesprochen und ich denke auch dass genau da der Fehler liegt,
da die virtuellen COM Ports > 10 Probleme machen.

Vielleicht hat ja von Euch jemand ein Codeschnipsel, der mir zumindest den entscheidenden Tipp gibt.

Wie immer lieben Dank im Voraus,

Gucky.
digidings
Posts: 13
Joined: 22 Jan 2018, 17:04

Re: AHK & Arduino (Serielle Kommunikation)

02 Mar 2020, 13:11

Hallo Gucky_87,
der indirekt verlinkte Beitrag https forums.adafruit.com /viewtopic.php?f=25&t=20177&p=112840&hilit=autohotkey#p105118 (Broken Link for safety)
enthält eine auch für höhere COMPorts (>=10) lauffähige Version durch folgenes Code-Fragment:

Code: Select all

SERIAL_Port_Temp1_Len := StrLen(SERIAL_Port_Temp1)  ;For COM Ports > 9 \\.\ needs to prepended to the COM Port name.
  If (SERIAL_Port_Temp1_Len > 4)                   ;So the valid names are
    SERIAL_Port = \\.\%SERIAL_Port_Temp1%             ; ... COM8  COM9   \\.\COM10  \\.\COM11  \\.\COM12 and so on...
  Else                                          ;
    SERIAL_Port = %SERIAL_Port_Temp1%
Ich habe im Code lediglich 2 Zeilen in der Routine arduino_poll_serial hinzugefügt, damit es auch mit höheren Baud-Raten (115200) funktioniert:

Code: Select all

arduino_poll_serial:
    SetBatchLines, -1
    ListLines, Off
	if IsFunc(f:="OnSerialData"){
	....
Zu beachten ist jedoch, dass ein Script, das die Arduino.ahk /Serial.ahk verwendet mit der Ansi-Version des Interpreters (AutoHotkeyA32.exe) ausgeführt werden muss.

Return to “Ich brauche Hilfe”

Who is online

Users browsing this forum: effel and 3 guests