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

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

3天内不再提示

UnoArduSim的使用方法介绍

科技观察员 来源:Sharad Bhowmick 作者:Sharad Bhowmick 2022-06-14 17:23 次阅读

Arduino Uno 是由一个非常大的开发人员社区支持的最常用的微控制器之一。成本和易用性使 Arduino 板成为制作简单DIY 电子项目的有吸引力的选择。模拟器用于加速编写和调试代码的过程,因为您不需要任何硬件,也不必进行任何物理连接来测试您的程序。此外,模拟器简化了调试过程,尤其是在怀疑软件错误和硬件问题的情况下。在本教程中,我们将学习 UnoArduSim,这是一个具有Arduino Uno和 Mega 板的模拟器,并且可以选择最多 24 个 I/O 设备。

什么是 UnoArduSim?

UnoArduSim 由加拿大安大略省皇后大学的 Simmons 教授开发。他利用该平台为电气与计算机工程系二年级的学生授课。开发图形模拟器是为了让学生无需任何额外硬件即可测试他们的机器人代码。

UnoArduSim 是一个Arduino 模拟器,可让您在 Arduino Uno 和 Arduino Mega 板上进行实时代码调试。该模拟器用于编译和测试代码。它 支持除“goto”指令之外的所有原生 Arduino 语言元素。此外,它不支持的一些 C/C++ 语言元素包括 Bit-saving、union 和古怪的“逗号运算符”也不支持。

界面

这个模拟器有一个非常互动和易于理解的界面。Simulator 的界面大致分为三个部分。代码窗格、变量窗格和实验室工作台窗格。除了 3 个窗格之外,还有一个包含所有菜单选项的菜单栏和一个包含用于快速操作的图标的工具栏。下图显示了 UnoArduSim 的界面。

poYBAGKoUyiAR8dxAAcvYgm0qAc868.png

代码窗格

从名称本身,我们可以理解代码窗格包含代码或程序。代码窗格可用于跟踪程序运行时的执行情况,它还以红色突出显示代码中的任何错误。

双击代码窗格打开编辑/视图,您可以在其中修改代码。它有一个有用的功能,让您可以方便地从提供的列表中选择要包含在代码中的内置函数调用(或内置“#define”常量)。它还提供了自动添加分号或突出显示功能的选项。

pYYBAGKoUySAA1XQAAMFbEm7ctA076.png

变量窗格

它位于屏幕左下角的代码窗格下方。它包含每个用户的当前值。该窗口还显示执行期间的变量值。

pYYBAGKoUyGAbc9wAAK6nAJN0xI109.png

实验室工作台窗格

实验室工作台窗格显示选定的 Arduino 板,即 Uno 或 Mega。它还具有使用配置选项选择的不同外围设备。Lab Bench Pane 上的微控制器的行为与真正的电路板完全一样。所有 I/O 设备和微控制器,即“Uno”和“Mega”都非常准确。组件的电气模型有助于准确分析程序的行为,甚至会标记电气引脚。例如:复位板时,指示灯 LED 闪烁。实验室工作台窗格如下图所示:

poYBAGKoUx2ASWI_AAVF8Xfs8EQ616.png

该板还具有观察每个 I/O 引脚波形的选项。可以在执行程序时完成,您必须单击特定引脚才能看到数字波形。您最多可以选择 4 个波形显示在屏幕上。

pYYBAGKoUxiAdAgXAAIr1wCyZrU223.png

菜单栏

菜单栏包含操作和控制模拟的所有选项,它为我们提供了文件、查找、执行、选项、配置、VarRefresh、Windows 和帮助等选项。以下是所有功能的简要介绍:

文件:

Load INO / PDE Prog - 允许用户选择具有选定扩展名的程序文件。该程序立即得到一个 Parse。

编辑/查看 (ctrl-E ) - 它打开编辑器窗口。

保存 - 将编辑后的代码保存到现有文件中。

另存为 - 将编辑后的代码保存到新文件中。

Next ( ‘#include ’) - 用于在代码窗格中显示下一个‘#include’文件

上一个 - 用于在代码窗格中显示上一个文件

Exit - 用于退出模拟器。

执行:

Step-Into (F4) - 用于单条指令继续指令

Step-Over (F5) - 用于在一个完整的函数调用上通过单个指令继续执行指令。

Step-Out-Of (F6) - 将执行提前到足以离开当前函数。

Run-To (F7) - 仅运行程序直到所需的行。

运行 (F9) - 它执行并运行代码。

Halt (F10) - 它停止代码的执行。

重置 - 用于将程序重置为启动状态。

慢动作 - 用于将时间减慢 10 倍。

输入输出设备

I/O 设备分为两类,较小的“I/O”设备和大型“I/O”设备。隔离基于现实世界中设备的大小,较小的“I/O”设备包含按钮、开关电阻、压电扬声器、彩色 LED、4-LED 行、7 段 LED、引脚跳线和模拟滑块,而大“I/O”设备有伺服电机、直流电机等,它还有其他外围设备,如 MUX、显示器等。所有输入和输出外围设备如下图所示:

pYYBAGKoUxOAR3QYAARpkCwWOP0956.png

用户可以选择总共 16 个较小的“I/O”设备和 8 个大“I/O”设备。

UnoArduSim 限制!!

模拟器几乎没有限制。最大的限制是《Servo.h》、《Wire.h》、《OneWire.h》、《SPI.h》、《EEPROM.h》等库只能仿真。它们的功能直接内置在模拟器中,因此不会搜索实际文件。

支持的库很少

支持的库是‘SoftwareSerial.h’、‘SPI.h’、‘Wire.h’、‘OneWire.h’、‘Servo.h’ 、‘Stepper.h’、‘SD.h’、‘TFT.h ’和‘EEPROM.h’。因此,其他库将无法工作,因为它们将包含不受支持的指令和无法识别的文件。

实时仿真

Arduino 程序指令的执行时间不准确,因为它们没有准确建模,因此对于每个循环,都需要一个“延迟()”指令来运行与实时引脚电平变化同步的程序。

除了上述限制之外,模拟器不支持通过用户声明的函数指针进行函数调用。

Arduino 模拟器替代品

市场上有很多可供选择的 Arduino 模拟器,其中一些最常见的模拟器是:

Tinkercad 电路

虚拟面包板和头像硬件

PICSimLab

沃奎

IO 模拟器

变形虫

弗里茨

如何使用 UnoArduSim?

首先从 网站下载软件 并解压缩文件。

pYYBAGKoUw2AXNmEAASbRfLbL7U031.png

在文件夹中,找到 UnoArduSim.exe 文件并双击运行模拟器。

第一步是选择您的微控制器。为此,请单击菜单栏中的配置,然后从出现的下拉菜单中打开首选项。将出现一个新的弹出窗口,在这里您可以选择 Board、TWI Bytes,它具有自动缩进、自动插入关闭等功能。选择板并单击加载。

poYBAGKoUwmATL9CAAJwAm35Q8Y142.png

现在,为了选择输入和输出外围设备,再次单击菜单栏中的配置并从出现的下拉菜单中打开“I/O 设备” 。将出现一个新的弹出窗口,您可以在此处从给定菜单中选择所有需要的外围设备。

pYYBAGKoUwSAD6WSAAJ4S2cLR-0417.png

编程

如果您已经有一个 ‘.ino’ 或 ‘.pde’ 格式的 Arduino 代码,您可以通过单击文件》加载 INO 或 PDE 直接上传它。

要编写代码,请双击代码窗格以打开编辑器。或者,您可以单击文件,然后单击编辑/查看。您也可以同时按 Ctrl + E 打开编辑器。

编写程序后,单击编译按钮。

poYBAGKoUv-AbuuiAAMBCBNKaB4866.png

编译完成后,选择所需的 I/O,并根据程序中分配的管脚,通过在外设块中提供的空间上键入来分配 I/O 外设上的管脚。

pYYBAGKoUvuADP14AAB0Oh-Kt74612.png

现在,单击菜单栏中的执行并选择运行选项,它将开始执行程序。

pYYBAGKoUveASL2ZAAPugtWAeks078.png

现在,要通过更改输入来查看您的设置和代码将如何执行,请通过单击按钮更改输入外围设备的值或更改外围符号上的值以查看您的系统应该如何执行。

poYBAGKoUvOAWUyOAAQvaJom9Bs843.png

结论

UnoArduSim 是一个易于使用的模拟器。该模拟器具有许多功能,您可以通过使用该软件轻松使用这些功能。它通过突出显示错误使调试更容易。因此,即使您是微控制器世界的新手并尝试学习 Arduino 编程,或者想要调试您的代码或知道您的代码将如何执行而无需投入时间和资源以快速有效的方式组装组件,那么这软件对您非常有用。

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

    关注

    2

    文章

    875

    浏览量

    43208
  • Arduino
    +关注

    关注

    188

    文章

    6469

    浏览量

    186958
收藏 人收藏

    评论

    相关推荐

    英飞凌MEMTOOL软件介绍使用方法

    ,附件中详细介绍了这款软件支持的操作系统平台、支持烧录的英飞凌MCU系列和具体型号,并详细介绍了软件的使用方法。MEMTOOL软件介绍使用方法
    发表于 12-14 09:39

    Modelsim详细使用方法

    Modelsim 详细使用方法介绍。点击下载
    发表于 04-23 10:28

    全面介绍docker的使用方法

    docker使用方法
    发表于 07-25 14:22

    介绍示波器的特殊使用方法

    本文介绍了示波器的特殊使用方法
    发表于 05-06 10:36

    介绍独立按键基本的使用方法

    独立按键基本的使用方法——状态机(有人也喜欢用三行代码的方法。当然这都无所谓,萝卜白菜各有所爱,只要别用主时序给按键消抖就行!)1、要使用独立按键,那么开发板上的J5跳帽必须接到BTN(独立按键)。...
    发表于 01-06 06:30

    介绍SPI的使用方法

    写在最前使用RT-Thread Studio开发环境开发STM32单片机程序,与MDK使用env有一定的差别,对于刚开始使用的程序员来说,主要是找不到配置选项在哪里,上一篇介绍了TIM设备的使用方法
    发表于 02-17 06:32

    ipod touch使用方法/使用技巧

    ipod touch使用方法:此文档介绍的非常详细.
    发表于 11-23 09:03 16次下载

    示波器的使用方法

    示波器的使用方法 1 示波器使用        本节介绍示波器的使用方法。示波器种类、型号很多,功能也不同。
    发表于 01-14 13:06 1.8w次阅读

    Verilog HDL语言的文件调用问题:include使用方法介绍

    本文简单介绍在使用Verilog HDL语言时文件的调用问题之include使用方法介绍及举例说明,详见本文...
    发表于 01-24 14:40 6836次阅读
    Verilog HDL语言的文件调用问题:include<b class='flag-5'>使用方法</b><b class='flag-5'>介绍</b>

    固定流动电子狗使用方法介绍

    固定流动电子狗使用方法介绍,感兴趣的小伙伴可以看看。
    发表于 07-28 10:21 6次下载

    面包板的结构和使用方法详细介绍

    面包板是实验室中用于搭接电路的重要工具,熟练掌握面包板的使用方法是提高实验效率,减少实验故障出现几率的重要基础之一。下面就面包板的结构和使用方法做简单介绍
    发表于 10-31 08:00 0次下载
    面包板的结构和<b class='flag-5'>使用方法</b>详细<b class='flag-5'>介绍</b>

    STM32 ST-LINK Utility介绍、 下载、安装、使用方法

    STM32 ST-LINK Utility介绍、下载、安装、使用方法
    的头像 发表于 03-24 13:55 5.7w次阅读
    STM32 ST-LINK Utility<b class='flag-5'>介绍</b>、 下载、安装、<b class='flag-5'>使用方法</b>

    浅谈STM32CubeMX使用方法及功能介绍

    STM32CubeMX使用方法及功能介绍
    的头像 发表于 03-25 11:02 1.2w次阅读
    浅谈STM32CubeMX<b class='flag-5'>使用方法</b>及功能<b class='flag-5'>介绍</b>

    示波器的使用方法(三):示波器的使用方法详解

    示波器的使用方法并非很难,重点在于正确使用示波器的使用方法。往期文章中,小编对模拟示波器的使用方法和数字示波器的使用方法均有所介绍。为增进大
    的头像 发表于 12-24 20:37 3259次阅读

    WinCC中定时器使用方法介绍

    WinCC中定时器使用方法介绍说明。
    发表于 04-22 14:50 8次下载