ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 17175|回复: 32

[原创] 几种可以基于VBA实现串口通讯RS232的方法和实例

[复制链接]

TA的精华主题

TA的得分主题

发表于 2019-9-15 22:48 | 显示全部楼层 |阅读模式
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
在论坛混了一段时间,因工作需要求助论坛,学到不少东西。发点成果感谢一下。VBA实现串口通讯基本情况(仅基于个人工作经验,不足请补充)1,明确下位机接收是ASCII还是Hex还是别的格式的文本,设备Spci文档有的话一定要准备好。(VBA可以直接发ASCII和Binary两种方式,别的文本格式需要转码)
2,通讯参数一定要设置对。(推荐先串口助手调试好所有命令,再在VBA实现功能)
3,串口线一般分直通线,2-3交叉线,2-3,7-8 全交叉线。一定要对,不对不行。

4,实现方法
(1)基于MS Comm控件  '网上实例很多,本人Win10控件问题一直解决不了,无奈放弃
(2)基于系统API  '基于论坛帖子
(3)基于NI-VISA  '基于论文
(4)基于Aglient IO Suite ’油管教程

评分

2

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-9-16 09:09 | 显示全部楼层
串口通讯实例

Desktop.rar

922.31 KB, 下载次数: 1257

串口通讯实例

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-12-2 14:54 | 显示全部楼层
补充一下,当做学习笔记,弄成函数式的,缺点1,不能实现多线程,2,轮询式。实现不了事件触发。优点。1,运行速度快,用完即关串口,不长期占用,2,采集多设备信息方便,直接EXCEl生成报告,生成图表。

串口通讯最简单模块.rar

27.08 KB, 下载次数: 894

TA的精华主题

TA的得分主题

发表于 2020-3-26 12:00 | 显示全部楼层
帮顶,还是控件最简单,Win10 x64可以正常使用呀,注意ocx路径不要放到system32 要放到syswow64

mscomm控件.zip

120.23 KB, 下载次数: 724

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-4-10 16:53 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
感谢楼上老哥提供的控件注册操作。基于你的控件写了一下DEMO。希望能帮到有需要的人。《VBA下基于MSCOMM串口通讯实例》实例在附件中。控件注册后添加方法

1

1

2

2

VBA下基于MSCOMM串口通讯实例.rar

21.52 KB, 下载次数: 671

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2020-4-12 00:40 | 显示全部楼层
本帖最后由 1531585571 于 2020-4-12 07:53 编辑
松叶落 发表于 2020-3-26 12:00
帮顶,还是控件最简单,Win10 x64可以正常使用呀,注意ocx路径不要放到system32 要放到syswow64

请问注册好mscomm控件后,office中找不到是怎么回事呢?
系统是win10 1909 64位,office 2019 64位
注册好mscomm控件后,打开office,插入控件,没有mscomm
Snipaste_2020-04-12_07-53-06.jpg

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-4-13 08:21 | 显示全部楼层
1531585571 发表于 2020-4-12 00:40
请问注册好mscomm控件后,office中找不到是怎么回事呢?
系统是win10 1909 64位,office 2019 64位
注 ...

本人在WIn7 64 +Office2007 环境下详细方法。首先注册好了,Mscomm32放到对应的文件夹了。VBA IDE状态下,第一步-工具-引用,找Microsoft Comm Control 6.0 (SP6)-找到就打钩,如果没找到,电击浏览,文件类型选择找OCX控件,找到刚才注册好的Mscomm控件。点击添加。第二步-工具-附加控件 找-Microsoft Communication control,Version6.0。添加。至此工具箱出现打电话图标即成功。

TA的精华主题

TA的得分主题

发表于 2020-4-13 18:25 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 1531585571 于 2020-4-15 16:52 编辑
geniux 发表于 2020-4-13 08:21
本人在WIn7 64 +Office2007 环境下详细方法。首先注册好了,Mscomm32放到对应的文件夹了。VBA IDE状态下 ...

谢谢指点,
我按你的步骤,第一步成功了,
到了第二步,在附加控件里面还是找不到Microsoft Communication control,Version6.0
然后,我把office 2019 64位版 重装成了 office 365 32位版 以windows 7兼容模式运行
然后就成功了
多谢多谢

TA的精华主题

TA的得分主题

发表于 2020-11-11 17:22 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
太好了,谢谢

TA的精华主题

TA的得分主题

发表于 2021-4-6 15:30 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
调试成功~感谢感谢~
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-24 12:34 , Processed in 0.036418 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表