欢迎访问:常州市武进区嘉泽中心小学网站 !今天是:
栏目列表
您现在的位置是:首页>>教师>>计算机技术>>程序设计>>杂项>>文章内容
vc6.0利用API实现串口通讯
发布时间:2008-11-20   点击:   来源:本站原创   录入者:佚名
 

int Init_Comm()
{
 CHAR port_name[10];
 DCB  dcb;
 BOOL status;
 DWORD error_number;
 
 status = OK;
 memset(port_name,0,sizeof(port_name));
 memcpy(port_name,"COM1",4);

 handle_com = CreateFile(port_name,
    GENERIC_READ | GENERIC_WRITE,
    0,
    NULL,
    OPEN_EXISTING,
    NULL,
    NULL);

 if(handle_com == INVALID_HANDLE_VALUE)
  return(COMM_ERROR);

 if(!GetCommState(handle_com,&dcb))
  return(COMM_ERROR);

 dcb.BaudRate = 9600;
 dcb.ByteSize = 8;
 dcb.Parity  = NOPARITY;
 dcb.StopBits = ONESTOPBIT;
 dcb.fOutxCtsFlow = 0;
 dcb.fRtsControl = RTS_CONTROL_ENABLE ;

 if( !SetCommState(handle_com, &dcb) )
 {
  error_number = GetLastError();
  status = COMM_ERROR;
 }
 
 if(status != OK)
  CloseHandle(handle_com);

 return(status);     
}

....................................................................................................................................................

if( WriteFile(handle_com,buffer,length,&dwBytesWrite,NULL) == TRUE)
 {
  if(dwBytesWrite != length)
  {
   strMsg.Format("发送失败",NULL,NULL);
   AfxMessageBox(strMsg,MB_OK);  
  }
 }

......................................................................................................................................................

if(!(status=ReadFile(handle_com,&Recv_Buffer[i],1,&dwBytesRead,NULL)))
  {
   PurgeComm(handle_com,PURGE_RXCLEAR);
   return(ABANDON);
  }


附件:
    关闭窗口
    打印文档
    账号登录
    保持登录 忘记密码?
    账号与武进教师培训平台同步