串口编程函数分析

串口编程函数分析
1.连接串口

串口是系统资源,也当作文件一样操作,所以也用CreateFile函数,如果调用成功返回串口句柄,如果失败返回INVALID_HANDLE_VALUE值.函数参数说明如下:

HANDLE WINAPI CreateFile(

 __in         LPCTSTR lpFileName,//串口名(逻辑端口名),如:”COM1”,”COM2”

 __in            DWORD dwDesiredAccess,//访问模式,对串口有读/写权限

 __in            DWORD dwShareMode,//共享模式,有读/写/删除共享,对串口通信只能独占模式

 __in_opt LPSECURITY_ATTRIBUTES lpSecurityAttributes,//文件安全属性,对串口设置为NULL

 __in            DWORD dwCreationDisposition,//创建方式,串口通信设置为OPEN_EXISTING

 __in            DWORD dwFlagsAndAttributes,//文件属性标记,是否异步方式,在些设置

 __in_opt HANDLE hTemplateFile);//文件句柄,如果不为NULL,新文件从该够本复制或扩展,如果函数执行成功,返回新的串口句柄.


参数分析:

lpFileName:逻辑串口号,用字符串”COMX”表示,”X”是串口序号,关于电脑中的逻辑串口号,在注册表HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP目录下,包含字符"Serial"或"VCom"项下面的值就是,可以有多个

dwDesiredAccess:是对对串口的访问权限,串口只有读/写(GENERIC_READ/GENERIC_WRITE)权限,可以同时设置成读/写权限,也可以单独只设置读或写权限.

dwShareMode:是共享模式,有读/写/删除共享,对串口通信只能独占模式,即是0.

lpSecurityAttributes:文件安全属性,对串口设置成NULL.

dwCreationDisposition:创建方式,有CREATE_ALWAYS/ CREATE_NEW/ OPEN_EXISTING等方式,但是对串口只能是OPEN_EXISTING,只能打开存在的串口,不像文件一样可创建之类

dwFlagsAndAttributes:文件属性与标志,详细信息查看MSDN,如果想把串口设置成异步方式,那么要设置成FILE_FLAG_OVERLAPPED.

hTemplateFile:文件句柄,新文件从该句柄复制或扩展,如果函数执行成功,返回新的句柄,对串口通信,设置成NULL

以下为代码示例:

HANDLE hCom = CreateFile("COM1", //打开串口1

             GENERIC_READ|GENERIC_WRITE, //允许读和写操作

             0, //独占方式

             NULL,

             OPEN_EXISTING, //打开存在的串口,必须是O

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值