用C#不能从串口读出数据或读出的数据是写入的命令?

supercsharp1 supercsharp1 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我用vs2005的c#写了一个SerialPort类应用的代码,但是从串行端口读出的数据是我写入的命令,而不是期望的写入“at”,返回“ok”,经理让我
先关闭指令回显,即先发送“at E0”命令,然后再发送“at”,但是这样做了以后读数据的时候程序就死在那个地方了,谁能说说怎么回事啊?帮我这个忙!!!

private void ConnectPortButton_Click(object sender, EventArgs e)
{
try
{
sp = new SerialPort("COM1");
sp.ReadTimeout = 10000;
sp.Open();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}

private void SendButton_Click(object sender, EventArgs e)
{
try
{
sp.Write(textBox1.Text);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}

private void ReceiveButton_Click(object sender, EventArgs e)
{
try
{
string text=null;
char[] buffer = new char[10];
sp.Read(buffer,0,6);---程序执行到这里就停了,卡住了
for (int i = 0; i < buffer.Length; i++)
{
text += buffer[i];
}

textBox2.Text = text;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
...全文

相关推荐

c# 读取串口写入数据库

用c#编写的winform程序,读取串口的数据,并写入本地的sqlite数据库,同时写入SQLServer网络数据库,这个过程都是多线程的。

Mark_sssss

掌握 C# 串口编程:如何高效读取与写入串口数据

本文介绍了使用C#进行串口通信编程的核心技术。主要内容包括:串口通信的基本概念(波特率、数据位等参数配置)、C#中SerialPort类的基础操作(打开/关闭串口、数据读写),以及高效通信的实现方法。重点讲解了通过DataReceived事件进行异步数据读取、使用Write/WriteLine方法写入数据,并推荐使用缓冲区队列处理机制来避免线程阻塞。文章还提供了多个代码示例,帮助开发者掌握C#串口编程的关键技术,适用于嵌入式系统、工业自动化等需要稳定高效串口通信的场景。

威哥说编程

C# 串口通信(彻底解决C#串口通信中的数据丢失问题)

以网上某位大虾的源码为版本,沿用了其可用的代码部分。对其余欠妥部分进行了改造。不要资源分,是大家不用为积分而烦恼。出来混都不容易,希望大家相互照应!

zxc9601

C#密码写入与读出加密狗

C#密码写入与读出加密狗,使用的是串口通讯技术,完成读写操作,对加密狗BUFFER的操作

hanqi0323

串口通信 实时解析或发送串口的数据包

通过C#实现串口通信,里面的代码展示了如何监听计算机中的串口,解析数据或者发送数据,做串口开发的可以参考

lyly714
评论 3
收藏 已收藏
分享
返回顶部
supercsharp1
C# 111,129 成员 642,539 内容