【发布时间】:2012-01-16 09:22:05
【问题描述】:
所以我被困住了,我需要再次求助于你们的专家,让我摆脱困境。
我有一个 c# 表单项目,它将通过串行端口 (rs232) 移动相机。 (视觉工作室 2010)
当我使用超级终端时,相机会做出应有的反应。
设备使用 ASCII 进行通信。我认为 serialPort 类在发送字节时会将字符串转换为 ASCII。如果我对此有误,请纠正我。 当我加载表单项目时,设备没有反应。我尝试过两种方式构建表单,
我用过
SerialPort com = new SerialPort("COM1", 9600, Parity.None, 8, StopBits.One);
com.Open();
private void button1_Click(object sender, EventArgs e)
{
com.Write("move left" + "/r/n")
}
我还使用了串行端口工具,方法是将其放入我的表单并使用
调用该函数serialPort1.Write("move left" + "/r/n");
我尝试了不同的握手和不同的波特率。我已确保设置也与相机上的设置相匹配。
我需要你的帮助。有人可以向我解释为什么设备没有响应吗?它就像未连接一样。
串行链接在开始之前是否需要某种协商(例如通过 telnet 连接)?那么你能指点我吗?
我也试过
serialPort1.write("move left"+serialPort1.newline)
//and
serialPort1. write("move left"+"/n")
【问题讨论】:
-
您只发布了写入的代码,而不是读取的代码。最好发布您实际遇到问题的代码。
-
在您提供的代码中,您的斜杠是向后的“/n”应该是“\n”
-
@eatumup 你能用示波器看到信号变化吗?或者您是否尝试过使用零调制解调器电缆连接另一台 PC 以确保软件正在传输?
-
我希望我有这些设备之一进行检查。然而我没有。但我认为它应该可以工作,因为如果我打开超级终端它可以正常工作。 VS 也确实成功打开了 com 端口。
标签: c# visual-studio-2010 serial-port hyperterminal