0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何在Visual Studio 2015中使用VisualBasic作为主要编程语言来管理串行连接

454398 来源:网络整理 作者:网络整理 2019-11-18 11:31 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

步骤1:创建一个新的VisualStudio项目。

如何在Visual Studio 2015中使用VisualBasic作为主要编程语言来管理串行连接

选择 新项目。.. 》》 Visual Basic 》 Windows窗体应用程序。

键入一些名称,然后单击 确定。

步骤2:调整表单大小。

抓住一个角并调整大小,例如,在图片里。

步骤3:更改背景色。

要使所有内容美观,请在属性中菜单,将 BackColor 更改为 Window 。

步骤4:添加4个组件。

添加:

1x GroupBox

1x ComboBox

2x按钮

在这些组件中键入任何名称和文本,但是在编程时请小心!

步骤5:添加SerialPort-Module

在工具窗口中,添加一个名为 SerialPort 的组件。

步骤6:双击表单。

您将看到,将打开一个新选项卡。

第7步:添加一些代码。

将以下代码添加到项目中像上面的图片一样。

For Each AvailableSerialPorts As String In SerialPort1.GetPortNames()

ComboBox_AvailableSerialPorts.Items.Add(AvailableSerialPorts)

SerialPort1.ReadTimeout = 2000

Button_Connect.Visible = True

Button_Disconnect.Visible = False

Next

请确保将其放入我们通过双击窗体创建的Private Sub-Loop中。

确保为组件选择正确的名称。

步骤8:双击连接按钮

双击在连接按钮上。您会看到,您将在代码中添加一个新的 Private Sub -循环。

在上图中,我们添加的每个新代码都将标记为蓝色。

第9步:添加两行代码。

在您的 Private Sub 中添加以下两行代码-您的 Connect -Button循环。

SerialPort1.BaudRate = “9600”

SerialPort1.PortName = ComboBox_AvailableSerialPorts.SelectedItem

并且像往常一样,不要忘记为组件选择正确的名称。

步骤10:添加另一行代码。

在表单的Private Sub-Loop内,添加以下代码:

ComboBox_AvailableSerialPorts.Text = AvailableSerialPorts

这可以防止用户在未选择端口的情况下连接到串行端口。它总是选择最后一个可用的串行端口,但是当我们完成操作后,您将在以后看到它。

步骤11:添加2行。

为连接-按钮指示您专用子,添加以下代码行:

Button_Connect.Visible = False

Button_Disconnect.Visible = True

第12步:添加IF语句。

在您的私有子内部-再次循环显示连接按钮 》,添加 if语句。

If SerialPort1.IsOpen = False Then

SerialPort1.Open()

End If

此语句将打开串行端口。但是,仅当尚未连接时。

步骤13:双击“断开连接”按钮。

VisualBasic将自动添加这些新的代码行。

第14步:设置“断开连接”按钮。

在您的私人子区域-为 Disconnect-Button 循环,添加以下代码:

If SerialPort1.IsOpen = True Then

SerialPort1.Close()

End If

Button_Connect.Visible = True

Button_Disconnect.Visible = False

这只会关闭SerialPort(如果已打开)。

此外,它启用了“连接按钮”并再次禁用了“断开按钮”,以便您可以再次连接到另一个或相同的串行端口。

第15步:添加文本框。

添加文本框,然后在属性菜单下,更改多行更改为 True 。

步骤16:添加计时器

工具-菜单,添加一个名为 Timer 的模块。

步骤17:更改计时器间隔。

在属性》》间隔下,将间隔更改为 100 ,因此它每100毫秒滴答一次。

步骤18:添加另一行代码。

让我们进入 Private Sub (内部)-为您的 Form循环,并添加一行代码:

TextBox_ReceivedMessage.ScrollBars = ScrollBars.Vertical

在这一行中,我们向您的TextBox添加了一个滚动条,以便您查看全部

步骤19:启用和禁用计时器

在私有下Sub -循环显示 Connect -按钮,启用计时器:

Timer1.Enabled = True

并在 Private Sub 下-循环对于断开连接-按钮,禁用计时器:

Timer1.Enabled = False

步骤20:双击计时器并添加一些代码。

双击 计时器,并将以下代码添加到您的私人子中-循环计时器:

If SerialPort1.IsOpen = True Then

Dim ReceivedMessage As String

ReceivedMessage = SerialPort1.ReadLine

TextBox_ReceivedMessage.Text = TextBox_ReceivedMessage.Text + ReceivedMessage + Environment.NewLine

TextBox_ReceivedMessage.SelectionStart = TextBox_ReceivedMessage.Length

TextBox_ReceivedMessage.ScrollToCaret()

End If

首先,我们检查SerialPort是否打开。如果是这样,我们将创建一个名为ReceivedMessage的新字符串,其中包含来自串行端口的消息。

然后,将文本添加到TextBox。来自TextBox的旧文本应保留在此处,添加来自String的内容,并将创建新行。

最后,TextBox将自动滚动最新的输入,因此我们将始终

步骤21:打开您的杰作。

打开在VisualStudio的右上角,单击开始 [或绿色的播放按钮] 以启动程序。

但是请不要

步骤22:给串行设备做点事情。

我使用Arduino UNO。

像上面的图片一样对它进行编程。

我在codebender.cc中做到了,但是您也可以在Arduino IDE或任何其他IDE中做到这一点。

!! 小心!请勿将延迟更改为大于100毫秒的任何数字。如果这样做,则必须在中更改计时器的 Interval 当然,VisualStudio !

但是,在Arduino内部,您可以键入任何小于100的数字,而无需更改VisualStudio中的间隔。

表示: Visual Studio中的计时器的时间间隔不得低于Arduino的延迟。但是允许更高。

而且:除以下端口外,请勿连接到任何其他串行端口到您的Arduino,或完全删除或取消计时器的私有子。但是,如果这样做,您将无法再接收任何SerialData。

因为如果SerialPort-Module无法从SerialPort读取任何数据,则程序将进入运行时异常。

p》

如果这样做,只需关闭程序,然后再次打开它,然后连接到正确的串行端口。

当然,如果愿意,可以防止此错误(例如

几天后,我将为VisualStudio和Arduino之间的高级串行通信创建另一个教程。

第23步:继续并测试您的程序。

对其进行测试,并在必要时添加一些代码行或删除一些代码

责任编辑:wv

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 软件
    +关注

    关注

    69

    文章

    5298

    浏览量

    90888
  • VisualBasic
    +关注

    关注

    0

    文章

    6

    浏览量

    6807
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    改造小萝卜机器人第二天——Visual Studio Code 解决ESP-IDF报错问题

    重新安装, 2025年10月23日 星期四 Visual Studio Code Version: 1.93.1 搭建spikewhite.blockly-vscode Name
    发表于 10-24 04:23

    微软Visual Studio 2026 发布!AI 深度融合、性能提升

    “  微软发布 Visual Studio 2026 预览版,新版本以深度融合的 AI Copilot 为核心,结合全新的 Fluent Design 界面与显著的性能提升,旨在打造前所未有的智能
    的头像 发表于 09-16 11:17 1298次阅读
    微软<b class='flag-5'>Visual</b> <b class='flag-5'>Studio</b> 2026 发布!AI 深度融合、性能提升

    何在Visual Studio 2022运行FX3吞吐量基准测试工具?

    Visual Studio 2022 运行此工具的步骤吗? 此外,是否有我可能错过的可执行文件(例如在 GitHub 上)? 预先感谢您的帮助!
    发表于 05-13 08:05

    如何成为一名合格的KaihongOS北向应用开发工程师

    基础知识 编程语言:学习至少一种编程语言,如 JavaScript和TypeScript,这些语言是北向应用开发
    发表于 04-23 06:46

    何在VS Code中使用瑞萨RA系列MCU

    VS Code(Visual Studio Code)是微软公司出品,它是一个免费且多功能的代码编辑器,几乎支持所有主要编程语言和框架。特
    的头像 发表于 04-16 14:02 3301次阅读
    如<b class='flag-5'>何在</b>VS Code<b class='flag-5'>中使</b>用瑞萨RA系列MCU

    何在 树莓派 上编写和运行 C 语言程序?

    在本教程,我将讨论C编程语言是什么,C编程的用途,以及如何在RaspberryPi上编写和运行C程序。本文的目的是为您介绍在Raspber
    的头像 发表于 03-25 09:28 942次阅读
    如<b class='flag-5'>何在</b> 树莓派 上编写和运行 C <b class='flag-5'>语言</b>程序?

    HarmonyOS NEXT开发实战:DevEco StudioDeepSeek的使用

    随着HarmonyOS Next的持续发布,鸿蒙系统对AI能力的支持显著增强。本文将深入探讨如何在鸿蒙应用中集成AI模型,结合接入DeepSeek,一起探索开发鸿蒙原生应用的更多可能吧! 第一步
    发表于 03-07 14:56

    Visual Studio运行Hello分类样本 ,仅在Visual Studio输出收到错误消息,怎么解决?

    Visual Studio* 运行 Hello 分类样本 ,仅在 Visual Studio* 输出
    发表于 03-05 08:16

    何在DevEco Studio利用CodeGPT接入DeepSeek

    近期DeepSeek火爆全球,那一样很火的开发鸿蒙原生应用的DevEco Studio如果把它接入,会发生什么“化学反应”呢?下面我们将详细分享如何在DevEco Studio利用C
    的头像 发表于 02-19 13:52 1782次阅读
    如<b class='flag-5'>何在</b>DevEco <b class='flag-5'>Studio</b><b class='flag-5'>中</b>利用CodeGPT接入DeepSeek

    数字电路编程语言介绍

    文本形式描述电路的行为和结构。 并行性和并发性 :数字电路编程语言支持并行和并发操作的描述,这是数字电路设计的基本特性。 模块化 :这些语言支持模块化设计,允许设计师将复杂的电路分解
    的头像 发表于 01-24 09:39 1392次阅读

    瑞萨e2 studioReality AI组件的使用方法

    本实验将为您介绍如何在e2 studio中使用Reality AI相关组件进行AI开发,主要涉及如何使用Reality AI Data s
    的头像 发表于 01-21 13:48 1701次阅读
    瑞萨e2 <b class='flag-5'>studio</b><b class='flag-5'>中</b>Reality AI组件的使用方法

    如何成为一名合格的北向应用开发工程师

    语言,如 JavaScript和TypeScript,这些语言是北向应用开发必备的基础语言。 掌握开发工具 : 熟悉 DevEco Studio
    发表于 01-10 10:00

    何在Windows中使用MTP协议

    在Windows操作系统中使用MTP(Media Transfer Protocol)协议主要涉及到与移动设备(如智能手机、平板电脑等)的连接和数据传输。MTP是一种用于交换媒体文件(如音乐、视频
    的头像 发表于 01-03 10:26 4420次阅读

    Looker Studio连接器:一个连接器从多个数据库和云应用获取数据

    使用 SQL 查询,在报表获取预处理数据。 连接器的工作原理 适用于 Looker Studio 的 Skyvia 连接器使用 Skyvia Connect SQL 端点
    的头像 发表于 01-03 09:07 942次阅读
    Looker <b class='flag-5'>Studio</b><b class='flag-5'>连接</b>器:一个<b class='flag-5'>连接</b>器从多个数据库和云应用获取数据

    Triton编译器支持的编程语言

    Triton编译器支持的编程语言主要包括以下几种: 一、主要编程语言 Python :Trito
    的头像 发表于 12-24 17:33 1469次阅读