2012-10-08 9 views
9

Czy istnieje komenda DOS do otwierania portów szeregowych, powiedzmy COM3 za pośrednictwem wiersza poleceń DOS w Windows 7. Na przykład:Polecenie otwarcia portu szeregowego w systemie Windows 7

OPEN "COM6" AS #1 

nie mogę użyć narzędzia pyserial lub jakiekolwiek inne które nie są dystrybuowane z Windows 7.

preferowanym rozwiązaniem Opening a COM port in QBasic on Windows 7

+0

'echo> COM3'? nie można go przetestować, ponieważ urządzenie nie jest bez licencji. –

+0

Otwórz, a następnie co? Otrzymywać dane? Przesłać dane? Ustaw konfigurację portu? – Brad

+0

@Brad Otwórz i wpisz polecenie, które zostanie zinterpretowane przez podłączone urządzenie. – Olumide

Odpowiedz

19

może można użyć PowerShell? Jest to zawarte w Win7 ...

kod wzięty stąd http://blogs.msdn.com/b/powershell/archive/2006/08/31/writing-and-reading-info-from-serial-ports.aspx

Zapis do portu szeregowego

PS> [System.IO.Ports.SerialPort]::getportnames() 
COM3 
PS> $port= new-Object System.IO.Ports.SerialPort COM3,9600,None,8,one 
PS> $port.open() 
PS> $port.WriteLine("Hello world") 
PS> $port.Close() 

odczytu z portu szeregowego

PS> $port= new-Object System.IO.Ports.SerialPort COM3,9600,None,8,one 
PS> $port.Open() 
PS> $port.ReadLine() 
+0

Dzięki. Miałem nadzieję, że zrobię to, używając zwykłego starego języka BASIC. – Olumide

+1

Używam tego polecenia z PHP i funkcją shell_exec(). Mam podłączony Arduino, którego używam ze szkicem Blink (jeśli jesteś zaznajomiony), który zmieniłem i zamiast migać, drukuje "Led On" i "Led Off". Ale czasami po odświeżeniu mojego skryptu php otrzymuję nieczytelne ciągi , jak puste lub "?? On" lub po prostu "Led", niekompletne. Czy istnieje sposób rozwiązania tego problemu? Czy potrzebuje bufora lub czegoś takiego? – petsoukos

+0

@Petsoukos Przykro mi, ale nic nie wiem o PHP lub Arduino. tak czy inaczej, jeśli wynik jest zniekształcony, może coś przeszkadza ... może to jakieś inne pisanie oprogramowania/procesu do tego samego portu COM? a może coś kończącego skrypt (w powłoce shell) zanim dotrze do naturalnego zakończenia? Być może możesz dodać kod debugowania/kod śledzenia/wiadomość do początku/końca skryptu PHP, a skrypt shell_exec do śledzenia, czy dotrą do końca poprawnie, lub jeśli zostaną przerwane przez coś – Max

Powiązane problemy