网站首页 > 编程文章 正文
本专栏使用的单片机为:Arduino(本系列专栏使用Arduino UNO控制器),主要原因在于,Arduino简单易上手,老少皆宜,受众面广泛,使用Arduino作为下位机,LabVIEW作为上位机,独立开发者可以快捷开发出一套软硬件联控的演示系统。
1、安装LabVIEW Interface for Arduino Toolkit工具包
LabVIEW中有专业的接口工具包实现和Arduino进行联控:LabVIEW Interface for Arduino Toolkit。
LabVIEW Interface for Arduino Toolkit是NI公司(美国国家仪器公司)为Arduino开发的接口工具包,借助于这个工具包,可以很方便地使用LabVIEW软件与Arduino控制器实现联合开发。把这个工具包和LabVIEW软件结合起来,通过LabVIEW软件就可以实现对Arduino控制器的控制或者与Arduino控制器交换数据。
LabVIEW Interface for Arduino Toolkit最大的优点在于内置有数十个NI公司开发的库,提供给开发者使用,当Arduino与LabVIEW连接之后,就可以使用LabVIEW中数十个内置的库来开发新的程序算法来控制Arduino硬件,而且构建UlI(人机交互界面)也非常容易,适合于新手使用。同时,LabVIEW Interface for Arduino支持Arduino控制器通过USB、串口、蓝牙或XBee等接口的形式与计算机的LabVIEW进行连接。
LabVIEW Interface for Arduino Toolkit工具包的安装非常简单,在VI Package Manager,搜索LabVIEW Interface for Arduino就可以进行安装,如下所示:
当LabVIEW安装LabVIEW Interface for Arduino工具包之后,在前面板和程序框图中的函数栏目中就会出现Arduino控件和操作函数库。
Arduino控件包含模拟IO、数字I/O、Pin Mode、Board Type和连接方式等,如下图所示:
操作函数库包含有Arduino INIT、Arduino CLOSE、Low Level、Sensors、Examples等,如下图所示。其中,Arduino INIT和Arduino CLOSE是每个程序必备的,即与Arduino控制器建立连接,完成对Arduino预先设定的操作之后,断开与Arduino控制器的连接,释放Arduino控制器的串口资源。
另外,Low Level为Arduino初级应用,Sensors为经过封装的传感器函数库,Examples包含有大量的应用示例。由于Sensors和Example是将Low Level函数封装构建成的函数库,所以使用较为方便,但是其兼容扩展性不如Low Level好。
2、LabVIEW Interface for Arduino Toolkit工具包的使用
本小节主要讲解Arduino lNIT、Arduino CLOSE、Low Level以及Sensors中部分函数库的使用。
2.1、Arduino INIT函数节点
Arduino INIT函数节点如下图所示:
输入参数有VISA resource、波特率、Arduino板的类型、连接方式(USB/Serial),输出参数为Arduino资源号,提供给后续函数对Arduino进行操作。它的功能是连接Arduino控制器,以使得Arduino板进入受LabVIEW控制的状态。除了VISA之外,其他的输入参数可以不给定,即使用默认参数,波特率115200,Arduino Uno板,USB/Serial连接方式,每个包15个字节。
2.2、Arduino CLOSE函数节点
Arduino CLOSE函数节点如下图所示:
输入参数为Arduino资源号,只有错误输出。其功能是断开Arduino与LabVIEW的连接,释放Arduino控制器的串口资源。
2.3、Low Level函数库
Low Level函数库包含:模拟输入、数字IO配置、数字输入、数字输出、PWM输出(模拟输出)、Tone、I2C、SPI、模拟采样功能,如下图所示:
其中,模拟输入、数字输出、数字输出和PWM输出分为管脚和端口两种,端口操作适用于需要多个IO管脚进行操作的情况。
2.4、Sensors函数库
Sensors函数库中包含:热敏电阻、光敏电阻、RGB、数码管、红外、舵机、步进电机和液晶显示等功能,如下图所示:
3、烧录Arduino固件
将Arduino作为下位机时,需要烧录LIFA_Base.ino,可在安装工具包路径下找到,例如该文件在我的电脑位于:
D:\National Instruments\LabVIEW 2020\vi.lib\LabVIEW Interface for Arduino\Firmware\LIFA_Base
使用Arduino IDE打开该文件,编译并下载到Arduino单片机中,完成固件烧录。
- 上一篇: LabVIEW编程基础:分割条控件的使用
- 下一篇: LabVIEW实现Modbus通信
猜你喜欢
- 2025-05-22 LabVIEW实现Modbus通信
- 2025-05-22 LabVIEW编程基础:分割条控件的使用
- 2025-05-22 在LabVIEW平台中,你会编程实现TCP数据通信么?
- 2025-05-22 LabVIEW中的数据结构
- 2025-05-22 LabVIEW串口通信
- 2025-05-22 探索 LabVIEW OpenG 函数:OpenG Array
- 2025-05-22 学习Labview的一些进阶路径
- 2025-05-22 labview存储16位数据的TDMS,如何正确读取电压值
- 2025-05-22 实测实例:labview中波形图X轴刻度任意刻度设置
- 2025-05-22 LabVIEW编程实例:一个简单通用的“关于”对话框实现
你 发表评论:
欢迎- 05-22LabVIEW实现Modbus通信
- 05-22LabVIEW和Arduino的巧妙结合(基础篇—1)
- 05-22LabVIEW编程基础:分割条控件的使用
- 05-22在LabVIEW平台中,你会编程实现TCP数据通信么?
- 05-22LabVIEW中的数据结构
- 05-22LabVIEW串口通信
- 05-22探索 LabVIEW OpenG 函数:OpenG Array
- 05-22学习Labview的一些进阶路径
- 最近发表
- 标签列表
-
- spire.doc (59)
- system.data.oracleclient (61)
- 按键小精灵源码提取 (66)
- pyqt5designer教程 (65)
- 联想刷bios工具 (66)
- c#源码 (64)
- graphics.h头文件 (62)
- mysqldump下载 (66)
- sqljdbc4.jar下载 (56)
- libmp3lame (60)
- maven3.3.9 (63)
- 二调符号库 (57)
- 苹果ios字体下载 (56)
- git.exe下载 (68)
- diskgenius_winpe (72)
- pythoncrc16 (57)
- solidworks宏文件下载 (59)
- qt帮助文档中文版 (73)
- satacontroller (66)
- hgcad (64)
- bootimg.exe (69)
- android-gif-drawable (62)
- axure9元件库免费下载 (57)
- libmysqlclient.so.18 (58)
- springbootdemo (64)
本文暂时没有评论,来添加一个吧(●'◡'●)