怎么实现用C#编写程序利用电脑COM串口接收传感器信号,再向继电器、电磁阀发送信号最好再举一个简单的例

怎么实现用C#编写程序利用电脑COM串口接收传感器信号,再向继电器、电磁阀发送信号最好再举一个简单的例,第1张

c#的例子如下(我朋友调试和下面的电路板通信的,协议是自定义的,你只看过程就行了),下面计算机串口和单片机设备连接还有通用的电路,不过你用什么MCU都不知道真的不好给你例子,只能有局部电路图

private void OpenSmode_Click(object sender, EventArgs e)

{

string S;

S = "";

int Sum = 0;

byte[] RxArray = new byte[25];

byte[] TxArray = new byte[2];

bool Flag = false;

TxArray[0] = 0x53;

for (int i = 0; i < 25; i++)

{

RxArray[i] = 0x00;

}

if (serialPort1IsOpen)

{

serialPort1Write(TxArray, 0, 1);

ThreadSleep(200);

serialPort1Read(RxArray, 0, 21);

serialPort1Write(RxArray, 20, 1);

ThreadSleep(200);

serialPort1Read(RxArray, 21, 2);

for (int i = 1; i < 23; i++)

{

Sum += RxArray[i];

}

if (Sum == 0)

{

Flag = true;

}

if (Flag == true)

{

S += ConvertToString(RxArray[0],16);

}

else

{

for (int i = 0; i < 23; i++)

{

S += ConvertToString(RxArray[i],16) + " ";

}

}

textBox2Text = S;

if (RxArray[20] == RxArray[21])

{

if (Flag == true)

{

textBox5Text = " 处于S模式中";

}

else

{

if (RxArray[22] == 0x4F)

{

textBox5Text = " 成功打开S模式";

}

else

{

textBox5Text = " 打开S模式失败";

}

}

}

else

{

textBox5Text = " 打开S模式失败";

}

}

}

在初始化里面最好把SCON写上

你上位机发送的是数据格式是什么 字符型是还是16进制形式发送

如果是上位机是以16进制发送,则接收时不该是RECEIVR_buffer =='0' 而是RECEIVR_buffer ==0

以上就是关于怎么实现用C#编写程序利用电脑COM串口接收传感器信号,再向继电器、电磁阀发送信号最好再举一个简单的例全部的内容,包括:怎么实现用C#编写程序利用电脑COM串口接收传感器信号,再向继电器、电磁阀发送信号最好再举一个简单的例、单片机串口接收命令‘1’打开继电器,‘0’断开继电器,大侠指导谢谢、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9481228.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-28
下一篇2023-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存