如何利用cnComm的串口?
上一篇文章的案例,即有一个以'/x2'开头、一个以'/x3'结束的的数据报的接收,以下是另一种方案
源代码:(注未经测试,请注意看思路)
class MyComm : public cnComm
{ void OnReceive() { char buffer[1024]; static char data[1024];//数据报暂时存储 static data_index;//指针索引 static bool find_flag = false;//查找标志int len = Read(buffer, 1024);
for(int i=0; i<len; i++) { if(!flag)//没有找到标志头 { if(buffer[i] == '/x2')找到开始标志 { flag = true; data_index = 0; } }if(flag)
{ data[data_index++]= buffer[i];//拷贝相应的数据 if(buffer[i] == '/x3') { flag = false;//结束标志 } } }}
};