C# ---- 串口数据 YSI 实例

如本文时间 23:05

由于实际设备使用网络传输转虚拟串口模式,现场安装之后还是出了问题。

从20:30研究到23:30才终于弄明白

                //打开新的串行端口连接
                sp.Open();
                //丢弃来自串行驱动程序的接受缓冲区的数据
                sp.DiscardInBuffer();
                //丢弃来自串行驱动程序的传输缓冲区的数据
                sp.DiscardOutBuffer();
                //使用缓冲区的数据将指定数量的字节写入串行端口
                sp.Write(wbb, 0, wbb.Length);
                //当前线程挂起500毫秒
                System.Threading.Thread.Sleep(20000);
                //读取数据超时
                sp.ReadTimeout = 10000;
                //读取接收数据
                sp.Read(rdb, 0, rdb.Length);
                //读取记录转换为字符串
                string[] rdstr = new string[rdb.Length];

这段线程挂起操作,绝不是当摆设的。。。。

如果传输数据需要时间,必须延长挂起时间。

C# ---- 串口数据 YSI 实例,布布扣,bubuko.com

时间: 2024-11-03 21:29:25

C# ---- 串口数据 YSI 实例的相关文章

C# ---- 串口数据YSI实例

原文:C# ---- 串口数据YSI实例 C#----串口数据接收发送中,发送接收数据已经可以模拟了. 本次YSI实例过程中 主要是:类型转换问题 .计算校验码 一.不同设备不同的规则,本次实例代码如下: string serialNumber = sn;//Packet Command Payload int i1 = 0x11;//Packet Length Byte int i2 = 0xA5;//Packet Sync Byt[] string[] strarr = new string

用普通IO接收串口数据

<pre name="code" class="cpp">//文件urece.h #ifndef _URECE_H_ #define _URECE_H_ #define V_BATOU 0x80 //电池充满 #define V_BATLV 0x40 //电池低电压 #define V_BATOI 0X20 //电池放电过流 #define V_BATOTP 0x10 //电池过温 #define V_BATOTIM 0x08 //电池充电超时 #def

Linux 程序设计学习笔记----终端及串口编程及实例应用

转载请注明出处,http://blog.csdn.net/suool/article/details/38385355. 部分内容类源于网络. 终端属性详解及设置 属性 为了控制终端正常工作,终端的属性包括输入属性.输出属性.控制属性.本地属性.线路规程属性以及控制字符. 其在系统源代码的termios.h中定义(具体的说明文档http://pubs.opengroup.org/onlinepubs/7908799/xsh/termios.h.html),其结构体成员主要是 Thetermios

Android(Linux)实时监测串口数据

之前在做WinCE车载方案时,曾做过一个小工具TraceMonitor,用于显示WinCE系统上应用程序的调试信息,特别是在实车调试时,用于显示CAN盒与主机之间的串口数据.因为需要抢占市场先机,经常在新车上市前,就得配合CAN解码盒厂商同步调试车机端软件.这时候,TraceMonitor就可能派上大用场.遇到说不清是哪一边的问题时,抓数据一看,就清清楚楚了.有时终端客户的机器出现了原车功能异常的问题,也可以直接运行该工具,实时抓取串口数据提供给我们以分析问题原因.不过该工具需要业务应用程序做特

Google Gson解析Json数据应用实例

转自:http://lixigao449778967.blog.163.com/blog/static/24985164201269105928783/ 1.需要的Jar包 1) Google Gson(gson-xxx.jar)下载地址:http://code.google.com/p/google-gson/downloads/list 2)JUnit4 2. 应用实例代码 下载地址:http://download.csdn.net/source/3499627 包括如下类: 1)普通Jav

原生ajax调用数据简单实例代码

原生ajax调用数据简单实例代码:由于jQuery的盛行,现在使用较多的是jQuery封装好了的ajax,因为解决了浏览器兼容性问题,这对程序员来说就等于去掉了一个心头大患,但并非原生ajax就销声匿迹,并且本人感觉还是对原生的ajax有所了解的好,下面就是一段ajax数据调用的实例代码,非常的简单,初学者可以参考一下.代码如下:一.兼容浏览器部分: function xmlHttpR() { var xmlhttp; if(window.XMLHttpRequest) { xmlhttp=ne

在VMware里的linux用minicom读取串口数据

在VMware里的linux装minicom读取串口数据: 软件环境:在win7上装VMwave,在VMware里装的Ubuntu,在Ubuntu 里装的串口工具minicom. 硬件:Z-Tek的usb转串口 (内部的IC:PL2303) 1,给电脑插上USB转串口的硬件,打开WMware,如果VMware检测到该硬件,则打开VMware时会出现对应的提示: 打开ubuntu后,同时在VMware软件的右下角也会有该设备的小图标,右键选择connect: 同时也要connect    Real

基础问题:在一个 Activity 中定义的串口接收程序,如果 Activity 切换到其它 Activity 后还能接收到串口数据吗?

============问题描述============ RT:基础问题:在一个 Activity 中定义的串口接收程序,如果 Activity 切换到其它 Activity 后还能接收到串口数据吗? 我的程序有两个 Activity,在启动后的 Activity 中已经验证了接收与发送数据. 后继做了第二个 Activity,此时从第二个 Activity 返回 第一个 Activity 时串口的接收线程会出错.调试了一下,串口再次被初始化了. 问题: (1)不想串口被反复初始化,应该如何做?

c# 串口数据接收

串口数据: 接收: public static string aa=""; private void serialPort_DataReceived(object sender, SerialDataReceivedEventArgs e) { string s100 = ""; System.Threading.Thread.Sleep(100); int bytes = serialPort.BytesToRead; byte[] buffer = new by