gpio引脚介绍 树莓派3b_如何让LabVIEW程序运行在树莓派3B(此处有坑)
上次转载了LabVIEW部署树莓派的文章后,很多小伙伴很兴趣,一个个都说要把压箱底的树莓派拿出来清下灰尘,也不知道到底拿出来没有。
放个之前文章链接如下:
零基础上手树莓派+免费正版LabVIEW Community Edition
有小伙伴在留言区提问:
1,教程是4B的板子,那么能不能运行在3B板子上,毕竟4B刚出来,手里3B存货还想继续用。
2,程序能不能独立脱离PC运行?
还是先说答案:
1,能运行在3B。
2,程序是独立运行在树莓派上的。类似NI的的Crio和Myrio的RT系统。
正好,我手里有个3B+。如果经常关注我的文章,大家可以看到,很久以前我发过一个文章:
LabVIEW通过WIFI远程控制树莓派
上述文章中,我在树莓派端用python来写了个程序,控制LED的亮灭。PC端用LabVIEW的TCP网络连接树莓派进行远程控制。
那么,问题来了,学LabVIEW的人,还要单独学python语言给树莓派编程?
人生苦短,能用LabVIEW一种语言搞定的,就不要用2种语言。
但是,虽然有前人之路,但是果实也不是随便就能摘到自己手里,前进的道路是曲折的。
上次文章发布后,有小伙伴就留言了,说3B安装失败,过了一个星期后,才说留言说安装成功了。至于怎么安装成功的,他也说不明白,可能是网速问题,也可能是删除了啥文件后才成功。
总之,这个安装使用过程很玄。这种感觉,很多学LabVIEW的人估计都有:忽然不知道怎么的,程序就不好使了;忽然又不知道怎么的,程序又好使了?对于这种情况,建议运行程序前要烧柱香。
首先,参考之前的那篇文章,进入LINX这个配置界面,连接树莓派后,点击这个upgrade。这个是关键步骤,它会在树莓派里安装一个LabVIEW RT的软件,这个软件安装成功,才有后面的事,不然,会像前面那个小伙伴一样,折腾一星期或者更久。
我比较幸运,折腾了2天而已(就周末这两天),曾经也试图放弃。但是想想,这不是我的风格,我就是要实践出来。在LINX的Installation界面中,总是运行到install LabVIEW时候,提示failed,还提示让我到LINX论坛去查找原因,其实我去了论坛,然而并没有找到答案。
于是,通过查看树莓派的源,发现这个LINX软件,会在源里新增一个源地址。
http://feeds.labviewmakerhub.com/debian/ binary/
然后去这个地址去搜索,目录如下。
从这个目录可以看出,其实源里是自动下载了这个20.0.0-4。注意LINX那个Upgrade界面的版本,就是这个版本。
于是,我尝试把这个20.0.0-4版本,下载到树莓派中,使用命令行安装。
然而安装不上,提示我有个旧版本的lvrt14.1。忽然想起,在两年前,我尝试过LINX,然后失败了,但是这个lvrt14.1安装上了,虽然当时没运行成功。于是我用Remove命令删除了这个老版本,然后继续运行上述的命令,居然成功了。
回到Installation界面,点击Upgrade,等待了很久,提示Target rebooting,又等了2小时(其实我是睡了个午觉),依旧这个提示,并没有按照之前教程提示的,在Installation Version出现版本。
此时,我的心情是沮丧的,我又继续试了好多次,依旧是同样的情况?
难道这个树莓派的人生就这样了?
我感觉还是可以拯救下,不应该是这样的,所以我点了下这个Upgrade右边的按钮Launch Example。
程序自动打开了一个Project文件,和一个vi文件。这个Project的分类,相信用过NI的Crio或者MyRIO或者其他类似嵌入式硬件的人,会很熟悉。
一般的,对于NI嵌入式设备,运行在My Computer目录下的vi是运行在PC,运行在Raspberry Pi(或者Crio)目录下的程序是运行在对应硬件的RT(今天不提FPGA),连接NI的CRIO时候,也可以有个类似的部署,界面和这个树莓派的一模一样。
恩,看结果,居然连接部署成功了,恩恩,此处应有掌声。
于是我运行下范例。运行范例前,先按提示,在树莓派的Pin7上接一个LED,在界面上点击按钮,对应的LED会亮和灭。
大家可以通过电脑摄像头观察到,点击按钮时候,对应的LED亮灭了。恩恩,但是如何证明程序是单独运行在树莓派上的?大家不要着急,继续往后看。
我们把按钮触发LED亮灭换成程序自动的亮灭,很简单,用移位寄存器布尔取反,间隔500循环一次。编程步骤如下所示。
如下图所示,我的树莓派是有线网络连接的,我现在粗暴地拔掉网线。
拔掉网线后,led依旧闪烁。只是LabVIEW这边弹出提示,树莓派没响应,是否等待然后断开。
一般而言,当我们PC端程序关闭或者停止后,树莓派的程序也一样停止的。难道要用拔网线这种粗暴方式才能让树莓派程序一直运行?当然不是。
用过NI的RT设备的小伙伴都知道,RT设备可以设置上电自启动运行。也就是说,硬件一上电,程序就会自动运行。那么如何在树莓派实现对应操作?也就是一上电,LED就闪烁,不需要我们在PC端的LabVIEW在执行连接部署工作。
接下来,要对vi生成exe应用程序。
然后,和电脑端生成exe一样,配置Source File,例如,下图把范例的vi添加到启动vi中。
然后,build后,会弹出和PC生成exe一样的进度窗口。如下图。
在生成的exe上右键,点击Run as Startup,设置为上电就启动,这个操作和Crio等NI嵌入式设备等一样。
设置后,又有一堆下载的文字信息提示,然后提示重启。这样,我们给树莓派一上电,LED就会闪烁了。
这样,一个简单的、独立地运行在树莓派3B+的LabVIEW程序就完成了。另外,树莓派里也可以使用TCP编程,这样,就可以替代我以前Python编写的TCP服务端程序,全部用LabVIEW来编写了。
在折腾过树莓派后,如果后续大家有机会接触NI的RT设备,基本就轻车熟路,一模一样的操作。
最后,感谢常州的微信名叫小强的朋友,他给我发来一段用LabVIEW在树莓派部署网络服务器,并在手机端网页控制树莓派LED的视频。我这个3B+板子的摸索,也是他测试成功我,我才来折腾的,虽然我们遇到的坑不一样。
如今智能家居物联网是热门,使用LabVIEW在树莓派建立网络服务器,比使用网上其他方法简单多了。其他语言使用Python或者php的居多,然后下载各种软件,但是LabVIEW不用。具体的方法后续有时间再写,虽然文章篇幅不长,但是已经写了3个小时了...
总之,在树莓派3B+上运行LabVIEW,也是各种折腾了,终于可以使用了。
希望想玩树莓派的小伙伴,能少折腾吧,毕竟可能遇到的问题都不一样。这里只是分享我的折腾过程,感觉有帮助的,请点个赞。
gpio引脚介绍 树莓派3b_如何让LabVIEW程序运行在树莓派3B(此处有坑)相关推荐
- 树莓派3b写PHP代码可以吗,如何让LabVIEW程序运行在树莓派3B(此处有坑)
原标题:如何让LabVIEW程序运行在树莓派3B(此处有坑) 上次转载了LabVIEW部署树莓派的文章后,很多小伙伴很兴趣,一个个都说要把压箱底的树莓派拿出来清下灰尘,也不知道到底拿出来没有. 放个之 ...
- 树莓派Java程序运行_树莓派上Java程序作为linux服务并开机自动启动
http://www.iigrowing.cn/shu_mei_pai_shang_java_cheng_xu_zuo_wei_linux_fu_wu_bing_kai_ji_zi_dong_qi_d ...
- gpio引脚介绍 树莓派3b_树莓派3bgpio引脚介绍
第4章 GPIO接口 本章内容: ? GPIO接口时通用输入输出端口,通俗的说,就是 一些引脚,可以通过它们输出高低电平或者通过 它们读入引脚状态--是高电平还是低电平.... 更强的"盒子 ...
- gpio引脚介绍 树莓派3b_使用微创联合M5S空气检测仪、树莓派3b+、prometheus、grafana实现空气质量持续监控告警WEB可视化...
1.简介 使用微创联合M5S空气检测仪.树莓派3b+.prometheus.grafana实现空气质量持续监控告警WEB可视化 grafana dashboard效果: 2.背景 2.1 需求: 1. ...
- 树莓派开发笔记(五):GPIO引脚介绍和GPIO的输入输出使用(驱动LED灯、检测按键)
若该文为原创文章,未经允许不得转载 原博主博客地址:https://blog.csdn.net/qq21497936 原博主博客导航:https://blog.csdn.net/qq21497936/ ...
- gpio引脚介绍 树莓派3b_树莓派3B+ GPIO 入门
GPIO 编号方式 GPIO (General Purpose Input/Output) 的意思就是通用型输入输出,有三种方法可以对 Raspberry Pi 上的 IO 引脚进行编号: BOARD ...
- gpio引脚介绍 树莓派3b_gpio引脚介绍 树莓派3b
陈拓chentuo@ms.xab.ac.cn 2018.06.09/2018.06.10 从网上下载了几张精美的图片,感谢图片的制作者! 0. 概述 本文介绍树莓派 Zero W的GPIO控制,并用L ...
- 树莓派:GPIO/引脚/Pin 介绍
注:本文翻译自respberry官方介绍文档 GPIO和40针头 Raspberry Pi的一个强大功能是沿着板的顶部边缘有一排GPIO(通用输入/输出)引脚.所有当前的Raspberry Pi板上都 ...
- NVIDIA Jetson Nano GPIO口和通信协议简单介绍及点亮第一个程序LED灯闪烁
在前面的文章中,我已经想大家介绍了NVIDIA Jetson Nano这个板子.今天我将给大家介绍NVIDIA Jetson Nano最重要的一个接口–GPIO.Jetson Nano 和树莓派一样作 ...
最新文章
- python的函数的定义与调用
- python电路模型编程_14、python开发之路-并发编程之I/O模型
- 人大金仓数据库sql语句_人大金仓数据库总结(SQL和JDBC)
- Serverless 落地之痛怎么解?
- [渝粤教育] 中国地质大学 高层建筑施工 复习题
- 89. Gray Code - LeetCode
- 字段类型:mysql中int(3)与int(11)有什么区别吗?优化数据库字段占据磁盘的大小
- mssql mysql数据库大小_mssql查看数据库大小
- Redmi K30S更多细节曝光:骁龙865加持 提供多款配色
- Java 1.2.2 格式化输出
- 云栖大会上阿里巴巴没说的数字经济逻辑
- Leetcode106 由中序序列和后序序列构建二叉树
- warning C4996 sprintf This function or variable may be unsafe
- Java数据结构和算法---程序员常用10种算法
- 数据库连接_由浅入深搭建Mybatis框架
- 【实例间对比】ICE: Inter-instance Contrastive Encoding for Unsupervised Person Re-identification论文笔记
- 生物信息学:bedGraph文件、Bed文件转、BAM文件转化
- 配色网站第一期 50个配色网站随便挑
- mac 爱普生打印机驱动_epson lq630k mac驱动下载
- 数据集成的两种架构:ELT和ETL