我电脑里有一个通讯端口COM3 现在我用工具已经打开了这个串口,我想在aardio里在操作串口之前先检查一下这个COM端口的状态 想知道是否可用
By
admin
at 2017-12-10 • 0人收藏 • 1685人看过
如果先检测到了已经占用的话 那么先关闭这个串口 如果没有占用的话 那么再执行打开操作
我想问一下是否可以通过fsys来判断呢?如果不可以的话 是否就需要用
mscomm这样的控件 或者pcomm控件来判断?
import fsys.file; var file = fsys.file("\\.\COM3") if( file ){ //打开了COM3 file.close(); }
楼上的回答是正确答案 但是可能大家不知道为什么其中要按照给出代码中的格式去写COM3
具体我找了一下相关资料
大家可以看
以下的几个连接
http://www.baidu.com/s?bs=UNC%E8 ... 8%E5%AF%B9%E8%B1%A1
http://www.cnblogs.com/coderle ... .html
http://hi.baidu.com/haibin_gl/ ... 0b294
http://ar.newsmth.net/thread-b45bcc45bd6f25.html
又找了点文章
在百度搜索 CreateFile 串口
http://www.cnblogs.com/ezhong/ ... .html
然后实际测试
import fsys.file; import win var file = fsys.file("COM3") io.open() io.print(file) if( file ){ //打开了COM3 file.close(); }
是可以的.
import fsys.file; import win var file = fsys.file("COM3:") io.open() io.print(file) if( file ){ //打开了COM3 file.close(); }
这个也是可以的
import fsys.file; import win var file = fsys.file("////.//COM3") io.open() io.print(file) if( file ){ //打开了COM3 file.close(); }
也可以
也就是说,查询问题应该先从WINAPI入手。。
1 个回复 | 最后更新于 2018-01-02
登录后方可回帖
com如果是已经打开了的,那么就会返回null
如果没打开过,那么返回的就是一个table表....
如果com端口号不存在就返回null