请问那位有vc串口通信的比较完整的代码?

kill000000 2005-11-23 10:51:41
如题:)
采用异步通信,事件驱动,有专门的线程控制读写。
能不能共享一下,或者发到邮箱 kill000000@tom.com
谢谢了
...全文
315 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
powerbamboo 2006-07-06
  • 打赏
  • 举报
回复
up
AIRFLYNET 2005-11-25
  • 打赏
  • 举报
回复
#include <windows.h>
#include <assert.h>

void main( )
{
HANDLE hCom;
OVERLAPPED o;
BOOL fSuccess;
DWORD dwEvtMask;

hCom = CreateFile( "COM1",
GENERIC_READ | GENERIC_WRITE,
0, // exclusive access
NULL, // default security attributes
OPEN_EXISTING,
FILE_FLAG_OVERLAPPED,
NULL
);

if (hCom == INVALID_HANDLE_VALUE)
{
// Handle the error.
return;
}

// Set the event mask.

fSuccess = SetCommMask(hCom, EV_CTS | EV_DSR);

if (!fSuccess)
{
// Handle the error.
return;
}

// Create an event object for use by WaitCommEvent.

o.hEvent = CreateEvent(
NULL, // default security attributes
FALSE, // auto reset event
FALSE, // not signaled
NULL // no name
);


// Intialize the rest of the OVERLAPPED structure to zero.
o.Internal = 0;
o.InternalHigh = 0;
o.Offset = 0;
o.OffsetHigh = 0;

assert(o.hEvent);

if (WaitCommEvent(hCom, &dwEvtMask, &o))
{
if (dwEvtMask & EV_DSR)
{
// To do.
}

if (dwEvtMask & EV_CTS)
{
// To do.
}
}
}

kill000000 2005-11-24
  • 打赏
  • 举报
回复
谢谢goodboyws(深夜不眠者)
duyhui 2005-11-24
  • 打赏
  • 举报
回复
楼主好好看看这篇文章,我当年做串口的时候,多亏了它,很有帮助的
http://www.impcas.ac.cn/usr/yuanyj/vcpptutorial/chap12_4.htm
oyljerry 2005-11-24
  • 打赏
  • 举报
回复
www.vckbase.com/document/viewdoc/?id=1213
goodboyws 2005-11-23
  • 打赏
  • 举报
回复
http://www.vchelp.net/itbookreview/view_paper.asp?paper_id=1290
http://www.newebug.com/article/cpp/2070.shtml

2,643

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 硬件/系统
社区管理员
  • 硬件/系统社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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