2013-05-05 57 views
0

我正在编写一个python程序来测试硬件。该硬件在串口上打印日志消息。这工作正常。将stdout输出重定向到其中一个串口

现在他们有一个emultor这个硬件作为一个Windows应用程序运行,并在Windows终端上打印相同的日志。

想知道有没有什么办法可以将日志从Windows终端重定向到串行端口,以便任何程序我已经写了适用于Windows模拟器太

预先感谢自动工作

+0

你可以在执行模拟器'whatever> COM1'或类似的模拟器时重定向吗? – 2013-05-05 07:55:51

+0

谢谢jon快速回复。我使用com0com创建了一个虚拟comport。 COM20和COM21是虚拟COM端口。无论我输入COM20的什么输入都会被重定向到COM21。现在,当我执行emul.exe> COM20时,在COM21上看到任何输出时都看不到任何输出。如果我做emul.exe> file.txt我得到一个文件中的所有输出。你知道可能是什么问题吗? – 2013-05-05 18:34:21

回答

0

您可以重定向python标准输出到句柄。我已经使用下面的内容将其放入一个文件中。

我希望你可以将sys.stdout设置为serial.Serial对象,以便将打印写入句柄。

sys.stdout= open(file, 'w') 

# script here 
print "test" 

# Flush 
sys.stdout=sys.__stdout__ 
相关问题