admin 管理员组文章数量: 1184232
2024年4月30日发(作者:照片框模板)
上位机和单片机串口编程---API函数编程
上位机和单片机串口编程
不用MSComm控件,那看起来只能是使用Windows API了,因为MFC貌似没有
什么类封装了串口API函数的。
用Windows API 编写串口程序本身是有巨大优点的,因为控制能力会更强,效率也
会更高,而且对于那些纯绿色软件追求者来说,没有ActiveX控件比什么都重要――呵呵,
我也是这么认为。
API编写串口,过程一般是这样的:
1、 创建串口句柄,用CreateFile;
2、 对串口的参数进行设置,其中比较重要的是波特率(BaudRate),数据宽度
(BytesBits),奇偶校验(Parity),停止位(StopBits),当然,重要的还有端口号(Port);
3、 然后对串口进行相应的读写操作,这时候用到ReadFile和WriteFile函数;
4、 读写结束后,要关闭串口句柄,用CloseFile;
下面依次大致讲讲个步骤的过程:
第一步,从字面上去理解,大家也可以发现CreateFile实际上表明Windows是把串
口当作一个文件来处理的,所以它也有文件那样的缓冲区、句柄、读写错误等,不同的是,
这个文件名字只有固定的几个(一般为四个),而且始终存在(__G),而且在调用CreateFile
的时候请注意它的参数。CreateFile函数原型如下:
HANDLE CreateFile(__ lpFileName,
DWORD dwDesiredAccess,
DWORD dwShareMode,
__ITY___TES lpSecurityAttributes,
DWORD dwCreationDisposition,
DWORD dwFlagsAndAttributes,
HANDLE hTemplateFile );
lpFileName是你需要创建的端口号,默认情况下是COM1;dwDesiredAccess是表
明你想让你创建的串口以何种方式存在于你的应用程序中,因为串口通常是可读可写的,
所以这里必须设置为___READ|___WRITE;dwShareMode是用来设置串口共享属性的,
因为串口属于临界资源,当然不能共享,所以这里也必须设置为0;lpSecurityAttributes
是设置安全模式,一般采用默认的安全模式就可以了,选择NULL;dwCreationDisposition
是设置是否打开新的“文件”(上面说过了,Windows是把串口等端口当作文件来处理
的),因为串口属于硬件端口,当然不能随便重复创建,所以这里必须告诉Windows,每
次创建的时候必须使用已经存在的串口,所以这里设置OPEN___G;
版权声明:本文标题:上位机和单片机串口编程---API函数编程 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/b/1714469036a681529.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论