社区
API
帖子详情
VB6.0下如何用API实现串口通讯??
ZW_LM
2007-12-11 08:59:14
我能打开串口,但不能实现通信,,不知爪子了,请高人指点。
...全文
1207
23
打赏
收藏
VB6.0下如何用API实现串口通讯??
我能打开串口,但不能实现通信,,不知爪子了,请高人指点。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
23 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wd201001010
2010-10-06
打赏
举报
回复
学习了 呵呵
ZW_LM
2007-12-24
打赏
举报
回复
关键是我的设备上有干扰源,有可能导致CPU占用率很高。
kuhe
2007-12-23
打赏
举报
回复
用Delphi也好。
偶以前写的工控软件,包括用串口和下位机通信,采集并控制百来个点的温度,用的就是ActiveX exe。当时工控机也就P3级,程序运行时整个系统资源的消耗并不大。如果现在再重做,估计可以把CPU的使用率下降到5%以下。
jwh2004
2007-12-21
打赏
举报
回复
楼主为何非要用api来实现串口呀?mscomm控件内部本身就已经创建了线程了(用windows任务管理器就可看到有和无mscomm控件的exe程序其线程数相差1),就算你用api或activex就能做的比mscomm好?
ZW_LM
2007-12-20
打赏
举报
回复
VB6.0不支持多线程,看来是它的致命缺点啊!
ZW_LM
2007-12-20
打赏
举报
回复
kuhe兄一言中的,我正是做工控的,正是想用辅助线程来实现通信功能,也正是因为VB6.0多线程是控件不稳定的,想用纯API来实现串口通讯。唉。。。。看来只能用Delphi7.0了。。。。代码都得重写,,,太痛苦了!!!
kuhe
2007-12-20
打赏
举报
回复
估计你想写个串口通信程序,后来觉得应该把串口通讯这类干等的事放在辅助线程里。用CreateThread一试,辅助线程里不能用VB自带的函数和控件等资源,然后就想法子用Windows API实现串口通信。
这些弯路偶以前全走过,你重复走走也好,会增加你的挫折经验。当然如果你能好好学学《VB高级编程》,也许能从我当时失败的地方闯出一条新路,偶当时可不知道有这样一本牛书。
如果你编的程序只涉及串口通信,建议你尽快转到VB2005.当然如果还涉及什么数据采集卡之类的工控编程,可能还得用VB6这些非.net开发工具。
ZW_LM
2007-12-20
打赏
举报
回复
就是不想用控件才讨论用API的,,,
tssing
2007-12-20
打赏
举报
回复
用控件吧,,
ZW_LM
2007-12-19
打赏
举报
回复
我试试看,,
kuhe
2007-12-18
打赏
举报
回复
不行的话把你的手机通过站内短消息发给我。
kuhe
2007-12-18
打赏
举报
回复
你在窗体上放个Command,在
里放上这些代码试试吧。
ZW_LM
2007-12-17
打赏
举报
回复
哦?那你有没有线程的代码?能否给我借鉴一下?
ZW_LM
2007-12-17
打赏
举报
回复
kuhe兄,我还是不太明白,能不能说的更明白一点。
是不是我先新建一个ActiveX EXE工程,然后在里面添加上面的代码?
kuhe
2007-12-17
打赏
举报
回复
VB6中,点“工程->引用->浏览”,选文件类型为ActiveX控件(*.OCX)。找到MSCOMM32.OCX,选中后点“打开”。
Dim MyComm As New MSComm
MyComm.CommPort = 1
MyComm.Settings = "9600,N,8,1"
MyComm.PortOpen = True
MyComm.Output = "12345678"
MyComm.PortOpen = False
上述的方法是为了让你可以在ActiveX EXE中使用MSCOMM控件。在一般的程序中直接把MSCOMM控件放到窗体上就OK了。
kuhe
2007-12-16
打赏
举报
回复
上次看你发帖问VB6如何实现多线程,我就想你是不是要写串口或是工控一类的软件。这个帖子果然证实啦偶的猜测。这些事情4年前我全部经历过。我也试过用API进行串口通信或写多线程,但经过近一年的摸索后,我终于明白,在VB中,串口就用MSCOMM,多线程就用ActiveX EXE。
ZW_LM
2007-12-16
打赏
举报
回复
我用的也是这几个API函数,在百度了很多关于他们用法的代码,但就是不能成功,不知道是不是我的函数声明的问题。
awperpvip
2007-12-14
打赏
举报
回复
API用这几个
CreateFile
ReadFile
WriteFile
还可以用用
SetCommTimeouts
GetCommState
SetCommState
SetupComm
PurgeComm
SetCommMask
WaitCommEvent
zhh0086
2007-12-13
打赏
举报
回复
我最近也要写一个232和vb的通信程序,学习中。
ZW_LM
2007-12-13
打赏
举报
回复
救命啊!!!诚心求救
加载更多回复(3)
VB6
使用
API
实现
串口通信
因客户产品波特率非常规,MScomm无法
实现
通讯,且原有软件框架不能转用VC开发底层,故用
VB6
调用
API
实现
通讯功能。该程序虽为单进程,但
实现
了异步非阻塞通信,性能稳定,文中给出了测试程序代码,包含打开串口、设置参数、发送和接收数据等操作。
Win10下
VB6
.0开发之串口通信基础(一)控件属性篇
本文介绍Win10下
VB6
.0通过MSComm控件进行串口通信的基础内容。先推荐两本VB学习书籍,后讲解MSComm控件开发,包括添加控件的方法,还详细介绍了该控件的常用属性,如CommPort、Settings、PortOpen等属性的作用及使用示例。
labview
串口通讯
的深入分析
本文深入分析了LabVIEW
串口通讯
。LabVIEW在数据采集和仪器通讯领域表现出色,对
串口通讯
提供支持。介绍了多种串口控制方法,如基本IN OUT控制、利用
API
、VB的MSComm控件和LABVIEW特有的VISA通讯,重点讲解了MSComm控件的事件驱动和查询方式,以及VISA
串口通讯
的基本流程和注意事项。
探索
串口通讯
的入门宝典:VB串口调试助手
本文介绍了VB串口调试助手这一开源项目,它面向VB编程初学者和
串口通讯
开发者,以源代码形式呈现,
实现
了串口开启、关闭、数据收发等功能。该项目基于
VB6
.0,兼容性好,UI直观,适用于多种场景,具有入门友好、可扩展性强等亮点。
基于VB的
串口通讯
及其软件
实现
本文深入探讨了串口通信的基本原理,包括PC串行通信的机制和RS-232接口标准。同时介绍了三种
实现
串口通信的方式:利用Mscomm控件简化编程、直接调用Win32
API
通信函数
实现
更灵活的配置以及调用第三方函数库提高通信可靠性。此外,文章还讨论了串口通信中常见的错误及其处理方法。
API
1,488
社区成员
23,270
社区内容
发帖
与我相关
我的任务
API
VB API
复制链接
扫一扫
分享
社区描述
VB API
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章