龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > VC开发 >

VC学习:Windows CE下的串口通讯类(4)

时间:2009-12-30 15:42来源:未知 作者:admin 点击:
分享到:
//写入数据 fWriteState=WriteFile(hPort,buf,dwCharToWrite*sizeof (TCHAR),dwBytesWritten,NULL); if(!fWriteState) { //不能写数据 MessageBox(NULL,TEXT("Cant Write String to Comm"),TEXT("Error"),M
  //写入数据
  
  fWriteState=WriteFile(hPort,buf,dwCharToWrite*sizeof  (TCHAR),&dwBytesWritten,NULL);
  
  if(!fWriteState)
  
  {
  
  //不能写数据
  
  MessageBox(NULL,TEXT("Can't Write String to Comm"),TEXT("Error"),MB_OK);
  
  dwBytesWritten=0;
  
  }

  return dwBytesWritten;
  
  }
  
  DWORD WINAPI ReadPortThread(LPVOID lpvoid)
  
  {
  
  BOOL fReadState;
  
  DWORD dwCommModemStatus;
  
  DWORD dwLength;
  
  COMSTAT ComStat;
  
  DWORD dwErrorFlags;
  
  while (hPort != INVALID_HANDLE_VALUE)
  
  {
  
  //等待串口的事件发生
  
  WaitCommEvent (hPort, &dwCommModemStatus, 0);
  
  if (dwCommModemStatus & EV_RXCHAR)
  
  {

  ClearCommError(hPort,&dwErrorFlags,&ComStat);

  //cbInQue返回在串行驱动程序输入队列中的字符数
  
  dwLength=ComStat.cbInQue;
  
  if(dwLength>0)
  
  {
  
  //从串口读取数据
  
  TCHAR* buf=new TCHAR[256];
  
  fReadState=ReadFile(hPort,buf,dwLength,&dwLength,NULL);
  
  if(!fReadState)
  
  {
  
  //不能从串口读取数据
  
  MessageBox(NULL,TEXT("Error in read from serial port"),TEXT("Read Error"),MB_OK);
  
  }
  
  else
  
  {

收藏文章
表情删除后不可恢复,是否删除
取消
确定
图片正在上传,请稍后...
评论内容为空!
还没有评论,快来抢沙发吧!
按钮 内容不能为空!
立刻说两句吧! 查看0条评论
精彩图集

赞助商链接