对于从串口读取的一串数据怎么先判断前几位是否正确再接受余下的数据呀
是不是用Sleep()进行延时呀
给个思路把
我用的是MSComm
谢谢
是不是用Sleep()进行延时呀
给个思路把
我用的是MSComm
谢谢
解决方案 »
- 请大家推荐2本学习VC.NET的好书,从入门到熟练掌握,谢谢
- ON_UPDATE_COMMAND_UI定义的界面更新函数,不能自动生效
- CWMPPlayer4 在线程里怎么不能正常运行呢?
- 登陆遇到88888,散分提问:谁知道ScrollWindow的详细用法呀?主要是参数。英语的看不懂!
- 这个问题怎么消除?
- 请问:当程序运行时,基于对话框的程序,怎样将一个位图加到一个静态文本中,最好给我源代码,谢谢了
- shockwave flash object控件
- 很菜的问题,怎样实现这个功能:按下键盘上的F键然后Edit1.setfocus,还问一下键盘上的键的代码是什么?
- 在Vc++6的MFC中,在主窗口中如何加入button并实现相应的功能?
- 我买了《windows程序设计》这本书,北大出的,大家觉得如何??
- 文档、视图有些晕,怎么添加不同类型的View啊?
- 线程同步问题
我用的是CSerialPort类模块
用Read方法读取,举例如下:....
//以上已经通过串口发送了指令
//现在接收数据
BYTE RecByte = 0;
pPort.Read(hCom,&RecByte,1);//hCom是你打开串口的句柄
pPort.Read(hCom,&RecByte,1);if(RecByte != 0x00) return false;
pPort.Read(hCom,&RecByte,1);if(RecByte != 0xB0) return false;
pPort.Read(hCom,&RecByte,1);
if(RecByte == 0x95) return false;
......
43 43 FF FF FF FF 0D 01
13 22 20 20 37 01 01 01
01 01 01 01 01 01 01 01
01 01 01 01 01 01 01 01
01 01 01 01 01 01 01 01
01 01 01 01 01 01 01 01
01 01 01 01 01 01 01 01
01 01 01 01 01 01 01 01
01 01 01 01 01 01 01 01
01 01 01 01 01 01 01 01
01 01 01 01 01 01 01 01
01 01 01 01 01 01 01 01
01 01 01 01 01 01 01 01
01 01 01 01 01 01 01 01
01 01 01 01 01 01 01 01
01 01 01 01 01 01 01 01
01 01 01 01 01 01 01 01
01 01 01 01 01 01 01 01
。
详见:http://www.gjwtech.com/serialcomm.htm
if(m_comm.GetCommEvent()==4 || m_comm.GetCommEvent()==2)
{
.... \\在这里进行处理,这是每接受到一个字节就会走到这个地方
}
{
这个条件就是每接收一个字节就响应这个事件,然后你再按字节比较处理就可以了
}