我现在用pc 和rs232 通讯
发送代码给rs232 ,然后rs232发回一串字符,接收串口发回数据的部分程序如下
if(m_Comm.GetCommEvent()==2)
{
variant_inp=m_Comm.GetInput(); //读缓冲区
safearray_inp=variant_inp; //VARIANT型变量转换为ColeSafeArray型变量
len=safearray_inp.GetOneDimSize(); //得到有效数据长度
for(k=0;k<len;k++)
safearray_inp.GetElement(&k,rxdata+k);//转换为BYTE型数组 接下去转为字符,字符串
本来应该是收到一串字符,可是调试时发现len=1,只接收到一个字符。估计是由于串口发送的时候有延迟?
现在有一个想法,就是
当rs232 每发送一个字符就对它进行处理,把它一个个转换类型再叠加起来,这就需要一个事件处理函数,vc有这样的函数吗?
这个想法可行吗?