DCB dcb; //数据控制块结构的定义
GetCommState( hCom, & dcb); //串口原来的参数设置的读取
BuildCommDCB( "COM1:9600, N, 8,1", & dcb);//数据控制块DCB结构的创建
SetComm State( hCom, & dcb) ; //结构DCB的主要参数设置到COM1
(4)API函数用来读写串口
完成初始化工作之后,win32提供了WriteFile()与ReadFile()两个函数,它们可以帮助用来读取各种相关信息。可以采用WaitForSingleObject()来等待信号的结束并完成最长等待时间的设置,部分代码如下:
BOOL bReadStatus;
bReadStatus=ReadFile( m_hComm,buffer,dwBytesRead,&dwBytesRead,
&m_OverlappedRead );
if(!bReadStatus )
{
if( GetLastError()==ERROR_IO_PENDING )
{
WaitForSingleObject(m_OverlappedRead.hEvent,1000 );
return (int)dwBytesRead;
}
return 0;
}
return (int)dwBytesRead;
(5)API函数用来关闭串口
因为串口不可以同时共用,所以每次调用后需要关闭。CreateFile( )返回值不是0, 就表示调用成功。
调用CloseHandle()函数来关闭串口。例如:
……
CloseHandle ( m_hComm ); // 关闭串口,m_hComm是打开串口时返回的句柄
……[18]
2.4.2.2 MSComm 控件的运用来编程实现串口通信
通信控件MSComm(Microsoft Communication Control)是微软针对组件对象模型(COM)开发的事件驱动的全双工高级通信接口, 作为一个用于串行通信编程的Active控件, 它具有良好的稳定性以及运行效率。
- 上一篇:表面粗糙度的分形算法研究+文献综述
- 下一篇:MATLAB红外图像分割算法研究+文献综述
-
-
-
-
-
-
-
乳业同业并购式全产业链...
河岸冲刷和泥沙淤积的监测国内外研究现状
中考体育项目与体育教学合理结合的研究
酸性水汽提装置总汽提塔设计+CAD图纸
大众媒体对公共政策制定的影响
十二层带中心支撑钢结构...
电站锅炉暖风器设计任务书
杂拟谷盗体内共生菌沃尔...
java+mysql车辆管理系统的设计+源代码
当代大学生慈善意识研究+文献综述