关于 vb MSComm控件中断问题
关于 vb MSComm控件中断问题
我的问题:
如果我设定每接收128字节数据,即发生中断,此刻进入第一次中断,将此刻缓冲区数据全部另存在数组A中,并且立刻将缓冲区清零。接下来处理数组A中接收的所有数据,因为比较数据比较复杂,各种调用,各种循环处理 等等,有没有可能,数组A中数据还未处理完(即此刻还未跳出第一次的中断),缓冲区又缓冲到128字节了,再次中断发生。
这种情况是有可能发生吗?
以上情况,一是下位机一直在发数据,波特率38400,二是,下面发送的数据为不同的帧而且长短还不一样,分不同的case处理,各种调用,各种循环,还要显示在界面。是不是很费时?
谢谢各位了,一直纠结在这个问题上,崩溃啊,欲哭无泪
[解决办法]
直接操作内存都不行,写文件(操作硬盘)那就更不行了
你可以试试双缓存嘛,或者定义一个很大的缓存。反正现在内存够大。
还有一个办法,就是关闭串口,需要的时候再开启串口。
最好的办法还是修改通信协议。