VC6.0利用API实现串口通讯

weixin_38052463 2019-09-19 05:56:23
原文见:http://www.chinaitlab.com/www/news/article_show.asp?id=31344  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,1,&dwBytesRead,NULL)))  {  PurgeComm(handle_com,PURGE_RXCLEAR);  return(ABANDON);  }
...全文
21 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

433

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧