串口通讯,跪求高手来访!!!!很急的!!!
设置的属性都是默认的,怎么axMSComm1.Output=“O 00000029 1 29 1 31 431 41 331 5120101211215829 ”;发送不了数据,对方的设备接收不到我给的数据呢?我能接收设备发给我的数据try
{
if (this.axMSComm1.PortOpen == true)
{
this.axMSComm1.PortOpen = false;
}
axMSComm1.PortOpen = true; //打开端口
this.axMSComm1.InputMode = MSCommLib.InputModeConstants.comInputModeText;//接收数据的类型
axMSComm1.InputLen = 0;//读取所有数据
axMSComm1.RThreshold = 1;// 接受数据的长度(只要有字符就激发comm事件)
this.axMSComm1.Settings = "9600,n,8,1";//得到波特,停止位,校验方式
}
catch (Exception exp)
{
MessageBox.Show("打开串口失败!检查串口线是否连接。输入机器名称不正确或连接数据库出错!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
private void axMSComm1_OnComm(object sender, EventArgs e)
{
axMSComm1.InputMode = MSCommLib.InputModeConstants.comInputModeText; //以文本形式接收数据
axMSComm1.CommEvent = MSCommLib.OnCommConstants.comEvReceive;
Thread.Sleep(500);
dataAEROSET += axMSComm1.Input.ToString();
axMSComm1.Output = "O 00000029 1 29 1 31 431 41 331 5120101211215829 ";
} --------------------编程问答-------------------- --------------------编程问答-------------------- 可能是进制的问题吧,将要发送的字符串转换成十六的试试,
补充:.NET技术 , .NET Framework