突破MsComm控件RThreshold限制 全部数据统统收!

2016-01-29 13:09 10 1 收藏

突破MsComm控件RThreshold限制 全部数据统统收!,突破MsComm控件RThreshold限制,全部数据统统收!

【 tulaoshi.com - ASP.NET 】


全局参数:Private Rv_data() As Byte '存放接收的数据Private tmpRV() As Byte '存放暂存的数据Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Form_Load ()中先初始化控件参数With MSComm1.Settings = "9600,N,8,1".InputMode = 1 '设置接受数据的类型是二进制类型数据.InputLen = 8 '一次性从接收缓冲区中读取所有数据(8个字节为一组).InBufferCount = 0 '清空接收缓冲区.OutBufferCount = 0 '清空发送缓冲区.SThreshold = 0 '一旦发送数据就触发OnComm()事件来检测是否返回数据.RThreshold = 1 '接收到1个字节数据就立即触发OnComm()事件.CommPort = 1 '使用第一个串口.PortOpen = True '打开串口End With
思路是这样的:按8个为一组然后一组一组地进行取出,直到缓冲区数据全部取完为止Private Sub MSComm1_OnComm()Dim UB1%, UB2%, TM As Integer, i As IntegerSelect Case MSComm1.CommEventCase comEvReceive Sleep (20) '相隔20ms就可以正确接收到24个字节的数据 Do While MSComm1.InBufferCount > 0 TM = TM + 1 If TM = 1 Then Rv_data = MSComm1.Input Else tmpRV = MSComm1.Input UB1 = UBound(Rv_data) UB2 = UBound(tmpRV) + 1 '元素比下标大1 ReDim Preserve Rv_data(UB1 + UB2) For i = UB1 + 1 To UB1 + UB2 Rv_data(i) = tmpRV(i - UB1 - 1) Next i End If LoopIf Check_RvData Then Call Response_OK() '这里用来进行正确的处理Else Call Response_Bad() '这里用来进行错误处理End IfErase tmpRVErase Rv_dataEnd SelectEnd Sub

来源:http://www.tulaoshi.com/n/20160129/1489116.html

延伸阅读
标签: 电脑入门
买过QQ号的都知道,刚买到的新号在修改密码的时候都会碰到诸于由于QQ不在经常上网的IP段内,不能修改密码的提示.如果买的号是别人盗来的QQ,上了号不能改密码就很可能有飞号的危险,那怎样才能突破IP限制顺利的修改qq密码呢? 教你下面11飞方法,总有你合适的。 1.挂兩天,每天兩个小时,第二天下午基本能改 2.改自己电脑的时间,每次往后改一...
标签: 聊天软件
  大家都知道非会员QQ的网络硬盘的共享人数是不能超过5个的。 要想突破这个限制,你可以升级为QQ会员。 不想出钱??可以!其实很简单—— 首先,在任意一个你要共享给别人的文件夹里面(比如“我的文档”)建个叫“ABC”(其实叫什么都无所谓)的文件夹。 然后,把你要和别人共享的文件上传到“ABC”文件夹下。 ...
通过限制焦点验证控件数据 Validate事件和CausesValidation属性是在允许用户将焦点移开控件之前,串联使用以确认对控件的输入的。例如:假设有几个文本框和一个Help按钮的应用程序,当每个文本框接收焦点时,您想在文本框的特殊验证准则被满足之前阻止用户移动焦点;然而,您也想允许用户在任何时候都能单击Help按钮。要做到这点,...
近日,一位Discuz!老用户的论坛在发表回复时出现“The table is full”的提示,字面意义上是数据表已满的意思。因为很少有开发者遭遇单一表超过4G的情况,因此朋友间的讨论只能提供一些外围的信息。为解决此问题,我翻阅了很多资料,本文将以我此次问题的解决过程,介绍问题发生的原因及对策。 根据经验,The table is full提示往往出...
标签: 微信转账
教你微信转账突破20万/年限制 首先给大家分享一下,怎么进行微信转账,主要有两种方法: 1.在微信最新版本中,点击右上角菜单栏中“我的钱包”,然后再找这里面可以看到“转账”的标签,点击“转账”,出现一个好友通讯录,你就可以选择自己想转账的人。输入转账金额。点击“转账”就能成功,但是注意,如果对方不是最新版本,那么可...

经验教程

802

收藏

99
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部