.NET调用window串口读取电子秤的数据
Private serialPort As SerialPort '定义
Public Function CreateSerialPort() As String
Dim strWeights As String = ""
Dim strData As String = ""
Dim bSetPointNum As Double = 0.0
If serialPort IsNot Nothing Then
If serialPort.IsOpen Then
Me.serialPort.Close()
End If
Me.serialPort.Dispose()
End If
Try
serialPort = New SerialPort("COM" + clXML.Read("Login", "bserialPortNames", ""), Integer.Parse(clXML.Read("Login", "bBaudRate", "")), CType([Enum].Parse(GetType(Parity), clXML.Read("Login", "bParity", "")), Parity), Integer.Parse(clXML.Read("Login", "bDataBits", "")), CType([Enum].Parse(GetType(StopBits), clXML.Read("Login", "bStopBits", "")), StopBits))
serialPort.WriteTimeout = 20000
serialPort.ReadTimeout = 20000
serialPort.ReadBufferSize = 20480
serialPort.WriteBufferSize = 20480
serialPort.Open()
Dim portName As String = "COM" + clXML.Read("Login", "bserialPortNames", "")
If serialPort.IsOpen Then
Dim readLength As Integer = 8
Dim offset As Integer = 0
Dim data As Byte() = New Byte(readLength - 1) {}
Do
Dim byteLenght As Integer = serialPort.Read(data, offset, readLength)
offset += byteLenght
readLength -= byteLenght
Loop While serialPort.BytesToRead > 0
strData = Encoding.[Default].GetString(data)
bSetPointNum = clXML.Read("Login", "bSetPoint", "")
SetPoint()
If IsNumeric(strData) = True Then
strWeights = IIf(strData / bSetPointNum < "0", bSetPoint, Val(strData / bSetPointNum))
Application.DoEvents()
Else
strWeights = bSetPoint
End If
If strWeights = "" Then
Return CreateSerialPort()
End If
End If
Catch ex As Exception
c.MsgInfro(c.GetResource("MyResource", "public_serialPortError"), "Notices", True)
End Try
Return strWeights
End Function
.NET调用window串口读取电子秤的数据的更多相关文章
- C#调用NPOI组件读取excel表格数据转为datatable写入word表格中并向word中插入图片/文字/书签 获得书签列表
调用word的com组件将400条数据导入word表格中耗时10分钟简直不能忍受,使用NPOI组件耗时4秒钟.但是NPOI中替换书签内容的功能不知道是不支持还是没找到. 辅助类 Excel表格数据与D ...
- OneNET麒麟座应用开发之二:串口读取PM25传感器数据
作为环境数据监测站首先要获取大气中可吸入颗粒物的数据.为了检测PM25数据,我们采用北京海联信为的HLPM025K3型号传感器,该传感器使用激光法测量PM25和PM10的数据. 该型传感器的检测对象如 ...
- VS编程,C#串口通讯,通过串口读取数据的一种方法
一.可能需要的软件:1.虚拟串口vspd(Virtual Serial Port Driver,用来在电脑上虚拟出一对串口,模拟通讯. 2.友善串口调试助手,用来发送.读取数据. 二.思路1.查询本机 ...
- C# 从串口读取数据
最近要做系统集成,需要从串口读取数据,随学习一下相关知识: 以下是从串口读取数据 public static void Main() { SerialPort mySerialPort = new S ...
- C#利用控件mscomm32.ocx读取串口datalogic扫描枪数据
1).开发环境VS12,语言C# 2).扫描枪品牌:datalogic 4470 3).通讯协议:串口 1.首先,第一步创建一个新工程,windows窗体应用程序,命名为TestScanner,如下: ...
- VS2010中使用Jquery调用Wcf服务读取数据库记录
VS2010中使用Jquery调用Wcf服务读取数据库记录 开发环境:Window Servere 2008 +SQL SERVE 2008 R2+ IIS7 +VS2010+Jquery1.3.2 ...
- 一篇提及如何通过串口读取并提取GPS信号的论文
一篇提及如何通过串口读取并提取GPS信号的论文 作者:崔杰 梁计春 王国军 目前,在用计算机进行数据传输时,常用的是串行通信方式.在Visual C++的编程中,既可以用Windows API函数进行 ...
- 项目一:第四天 1、快递员的条件分页查询-noSession,条件查询 2、快递员删除(逻辑删除) 3、基于Apache POI实现批量导入区域数据 a)Jquery OCUpload上传文件插件使用 b)Apache POI读取excel文件数据
1. 快递员的条件分页查询-noSession,条件查询 2. 快递员删除(逻辑删除) 3. 基于Apache POI实现批量导入区域数据 a) Jquery OCUpload上传文件插件使用 b) ...
- 串口实现FIFO接受数据
基本原理:静态队列 /* * 串口的FIFO简单读取实现 * 功能,实现串口的FIFO实现 * 使用方法: * 版本:v1.0.0 * */ #include "sys.h" #i ...
随机推荐
- 直接解压msi文件
msiexec /a "F:\TDDownload\subversion-1.5.5.msi" /qb TARGETDIR="F:\TDDownload\subversi ...
- South - 在 Django 中 Migrate Database
Web 开发避免不了经常修改表结构,手工修改表结构不仅容易出错,而且涉及到多人协作开发时,这么土的做法很不经济. Django 的第三方 app South 就是专门做数据库表结构自动迁移的.Jaco ...
- Consuming a Web Service in AX 2012
Consuming a Web Service in AX 2012 在AX2012版本中如果想调用外部的Web Service变得非常容易. 第一步,在VS中创建一个Web Service并发布 第 ...
- No.015 3Sum
15. 3Sum Total Accepted: 131800 Total Submissions: 675028 Difficulty: Medium Given an array S of n i ...
- Asp.net 怎样去除表单多行文本框滚动条
<textarea style="overflow:hidden;border-width:0px;">永远没有滚动条</textarea><text ...
- Ms sql将首字母大写
--辅助表 create table a ( a int ) declare @b int begin insert into a values(@b) end; go --表数据 ),id int) ...
- teamviewer现在无法捕捉屏幕,这可能是由于快速的用户切换或远程桌面会话已经断开
解决方法: 不用远程连接过去开启teamview,直接在在电脑本机上手动开启teamview就可以了 即:如果是mstsc远程过去开启,则会有这个错误提示,需要让服务器连接显示器,手动去登录 ...
- 用shell脚本切分task_list,并分别执行的脚本
#/bin/sh TASK_LIST=$ len=`wc -l $TASK_LIST | awk '{print $1}'` #noExce(){ ) ))'p' $TASK_LIST > $T ...
- Orcle常用语句
在SQLPlus界面的操作语句: 查看\设置每行内显示的字符数:show\set linesize [linesize] 查看\设置一次显示的行数:show\set pagesize [pagesiz ...
- Maven实战(四)生命周期
1. 三套生命周期 Maven拥有三套相互独立的生命周期,它们分别为clean,default和site. 每个生命周期包含一些阶段,这些阶段是有顺序的,并且后面的阶段依赖于前面的阶段,用户和 ...