串口操作——COM

串口通讯可以使用MFC控件,但是vs2010里边默认不带串口控件。
串口通讯也可以通过文件来操作,用的是Win32的API函数。
下边主要讲通过文件操作。
步骤:
一、打开串口

HANDLE hCom;  //串口句柄  
hCom = CreateFile(	s,//COM口  
					GENERIC_READ|GENERIC_WRITE, //允许读和写  
					0, //独占方式,不能共享  
					NULL,//安全属性  
					OPEN_EXISTING, //串口通讯必须为OPEN_EXISTING  
					0, //同步方式,FILE_FLAG_OVERLAPPED异步方式 
					NULL//串口通讯必须为NULL
					);  	
if( hCom==INVALID_HANDLE_VALUE )  
{  
	pDlg->MessageBox("打开串口失败!");     	
	return 0;  
} 

参数:
s:是个字符串,“COM1”,“COM2”,“COM3”,“COM4”,“COM5”等等,大小写均可。
串口操作必须用同步方式打开文件。

二、配置串口

//设置波特率
DCB dcb;
GetCommState(hCom, &dcb);	//先获取
((CComboBox*)pDlg->GetDlgItem(IDC_COMBO_BAUDRATE))->GetWindowText(s);
dcb.BaudRate = atoi(s);
dcb.Parity = 0;//校验方式为无校验
dcb.ByteSize = 8;//数据位为8位
dcb.StopBits = ONESTOPBIT;//停止位为1位
dcb.DCBlength = sizeof(DCB);//必须重新计算长度
SetCommState(hCom, &dcb);	//在设置
//设置接收间隔超时
COMMTIMEOUTS timeouts;
GetCommTimeouts(hCom, &timeouts);//先获取
tim
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值