下载首页 | 资讯中心 | 下载分类 | 最近更新 | 排 行 榜 | 国产软件 | 国外软件 | 汉化补丁 |
文章搜索: 分类 关键字 收藏本站设为首页
您的位置:首页网页设计ASP程序 → JustinIO的vb.NET版本!(串口操作类)__教程
JustinIO的vb.NET版本!(串口操作类)__教程
日期:2007-5-20 1:23:19 人气:94     [ ]
上一页 [1] [2] [3] [4] 下一页

Private Shared Function SetCommTimeouts(ByVal hfile As Integer, ByRef lpCommTimeouts As COMMTIMEOUTS) As Boolean
End Function
'参数说明
'hFile 通信设备句柄 handle to comm device
'lpCommTimeouts 超时时间 time-out values
<DllImport("kernel32.dll")> _
Private Shared Function ReadFile(ByVal hFile As Integer, ByVal lpBuffer() As Byte, _
ByVal nNumberOfBytesToRead As Integer, ByRef lpNumberOfBytesRead As Integer, _
ByRef lpOverlapped As OVERLAPPED) As Boolean
End Function
'参数说明
'hFile 通信设备句柄 handle to file
'lpBuffer 数据缓冲区 data buffer
'nNumberOfBytesToRead 多少字节等待读取 number of bytes to read
'lpNumberOfBytesRead 读取多少字节 number of bytes read
'lpOverlapped 溢出缓冲区 overlapped buffer
<DllImport("kernel32.dll")> _
Private Shared Function WriteFile(ByVal hFile As Integer, ByVal lpBuffer() As Byte, _
ByVal nNumberOfBytesToRead As Integer, ByRef lpNumberOfBytesWritten As Integer, _
ByRef lpOverlapped As OVERLAPPED) As Boolean
End Function
'参数介绍
'hFile 通信设备句柄 handle to file
'lpBuffer 数据缓冲区 data buffer
'nNumberOfBytesToWrite 多少字节等待写入 number of bytes to write
'lpNumberOfBytesWritten 已经写入多少字节 number of bytes written
'lpOverlapped 溢出缓冲区 overlapped buffer
<DllImport("kernel32.dll")> _
Private Shared Function CloseHandle(ByVal hObject As Integer) As Boolean
End Function
'参数hObject 要被关闭的句柄 handle to object
<DllImport("kernel32.dll")> _
Private Shared Function GetLastError() As UInt32
End Function
#End Region
Public Sub open()
Dim dcbCommPort As New DCB
Dim ctoCommPort As New COMMTIMEOUTS
'// 打开串口 OPEN THE COMM PORT.
hComm = CreateFile(PortNum, UInt32.Parse(GENERIC_READ Or GENERIC_WRITE), 0, 0, OPEN_EXISTING, 0, 0)
'// 如果串口没有打开,就打开 IF THE PORT CANNOT BE OPENED, BAIL OUT.
If hComm = INVALID_HANDLE_VALUE Then
Throw (New ApplicationException("非法操作,不能打开串口!"))
End If
'// 设置通信超时时间 SET THE COMM TIMEOUTS.
GetCommTimeouts(hComm, ctoCommPort) 'ref
ctoCommPort.ReadTotalTimeoutConstant = ReadTimeout
ctoCommPort.ReadTotalTimeoutMultiplier = 0
ctoCommPort.WriteTotalTimeoutMultiplier = 0
ctoCommPort.WriteTotalTimeoutConstant = 0
SetCommTimeouts(hComm, ctoCommPort) 'ref
'// 设置串口 SET BAUD RATE, PARITY, WORD SIZE, AND STOP BITS.
GetCommState(hComm, dcbCommPort) 'ref
dcbCommPort.BaudRate = BaudRate
dcbCommPort.flags = 0
'//dcb.fBinary=1;
dcbCommPort.flags = dcbCommPort.flags Or (1)
If Parity > 0 Then
'//dcb.fParity=1
dcbCommPort.flags = dcbCommPort.flags Or (2)
End If
dcbCommPort.Parity = Parity
dcbCommPort.ByteSize = ByteSize
dcbCommPort.StopBits = StopBits
If SetCommState(hComm, dcbCommPort) = False Then
'//uint ErrorNum=GetLastError();
Throw (New ApplicationException("非法操作,不能打开串口!"))
End If
'//unremark to see if setting took correctly
'//DCB dcbCommPort2 = new DCB();
'//GetCommState(hComm, ref dcbCommPort2);
出处:本站原创 作者:佚名
 阅读排行
01.精美qq空间横幅代码
02.最酷qq个性女生网名
03.最新又有免费QQ秀啦《..
04.巧用透明FlaSh扮靓你的..
05.花之神匠代码(最新代码..
06.最新QQ空间免费导航
07.最新免费个人形象设置..
08.最新qq空间flash代码m..
09.CSS技术结合图像实现动..
10.Photoshop光影魔术师:..
11.QQ音速种子狂刷
12.最新QQ空间透明代码
13.PS实例教程:教你制作结..
14.Photoshop光影魔术师:..
15.制作背景图__教程
16.用Photoshop制作漂亮的..
17.如何获得QQ音速种子
18.≤QQ空间代码≥在日志..
19.网页浮动广告的制作代..
20.用Photoshop制作大红灯..
21.常用CSS
22.Photoshop给靓丽美女打..
 推荐文章
·Photoshop 表现技法之..
·快速将你的相片矢量化..
·PHOTOSHOP制作炽热的太..
·用Photoshop制作美丽的..
·流行杀手的娃娃工厂__..
·打造8号台球__教程
·PHOTOSHOP制作待机MM图..
·用Photoshop帮MM做纹身..
·PHOTOSHOP美眉着色绝招..
·PHOTOSHOP花露的制作_..
·PHOTOSHOP渐变工具的巧..
·PHOTOSHOP手绘奥兰多-..
·高难度抠图两种方法__..
·Photoshop高尔夫球的制..
·Photoshop打造精美玉佩..
Eqxia_COM下载站 版权所有 Copyright© 2001-2005 Www.eqxia.COM, All Rights Reserved.