串口-CreateFile的使用

本文详细介绍了在32位Windows系统中使用CreateFile函数进行串口通信的方法。讲解了CreateFile函数的各个参数及其意义,并提供了打开COM1的具体示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  在32位的windows系统中,串口和其他通信设备是作为文件处理的。对串口的操作和对文件的操作是完全一样的。通信以调用CreateFile()开始。  

  函数原型如下:

 

HANDLE CreateFile
(
  LPCTSTR lpFileName, //指向文件名的指针:指定要打开的串口逻辑名,用字符串表示,如:COM1和COM2
   DWORD dwDesiredAccess, //访问模式(写/读):在串口中一般为读写,故一般连起来使用,既既可以读也可以写:参数为GENERIC_READ|GENERIC_WRITE
  DWORD dwShareMode, //共享模式:端口的共享属性。对于串口,他为0,这是与文件与通信设备最大的区别。一个程序打开了一个串口,另外一个程序在用CreateFile创建的时候就会出错。
  LPSECURITY_ATTRIBUTES lpSecurityAttributes, //指向安全属性的指针   
DWORD dwCreationDisposition,
//如何创建:在串口中必须设置为OPEN_EXISTING。表示不能创建新端口只能打开已有的端口。
  DWORD dwFlagsAndAttributes, //文件属性   HANDLE hTemplateFile //用于复制文件句柄 
);

 

如果用CreateFile()函数打开COM1,代码如下:

 

HANDLE hCom;
hCom=CreateFile
(
   "COM1"//  文件名,既是COM1,为逻辑名
   GENERIC_READ|GENERIC_WRITE,      //允许读和写
   0//独占方式
   NULL,
   OPEN_EXISTING,
   FILE_ATTRIBUTE_NORMAL|FILE_FLAG_OVERLAPPED,  //重叠方式
   NULL
);

 

 

 

 

 

 

posted on 2018-01-25 16:14 萌宝芒果 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/dongchong/p/8351791.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值