当前位置: 首页 > 编程日记 > 正文

ArduinoYun教程之通过网络为Arduino Yun编程

ArduinoYun教程之通过网络为Arduino Yun编程

Arduino Yun的软件部分

通过第一章的介绍后读者就明白了Arduino Yun除了是一个类似其他Arduino的单片机之外,它的另一大组成部分就是运行着一个特殊Linux发行版的Atheros AR9331芯片。所以,本章将会介绍Atheros AR9331芯片上运行的这个Linux发行版以及与其交互、升级等方方面面。

通过网络为Arduino Yun编程

为其他没有互联网功能的Arduino板上传程序,就只能通过连接在PC上的USB线或者编程器来完成。而Arduino Yun不但可以这么用,而且可以通过有线网络以及无线网络为它编程。也就是说,你可以在家为远在千里之外的Arduino Yun更新程序。连接到OpenWrt-Yun的方式有三种,为了满足读者的各种要求,这里将三种方法统统道来。

使用WiFi连接

使用WiFi连接Arduino Yun可以说是最方便的方式。在Arduino Yun的初始状态下,它的板载WiFi是作为一个热点工作的。也就是说,它现在就和我们的无线路由器是类似的,你可以使用有WiFi功能的手机或者电脑连接它(虽然不一定能访问互联网)。这个热点的名称是以“Arduino Yun-MAC地址”这种方式命名的,如图3.1所示为在使用手机中发现的Arduino热点。同样,你可以在有WiFi功能的电脑中找到它,如图3.2所示。

图3.1  使用手机发现的WiFi热点                图3.2  在电脑中找到的WiFi热点

这个热点是开放的(即没有加密),所以任何人都可以连接它。无论以何种方式连接,你都可以在浏览器中输入IP地址192.168.240.1来连接到Arduino Yun。如果出现了如图3.3所示的页面,那么你现在就可以跳到3.2节进行设置了。

 

图3.3  连接Arduino Yun的初始界面

ArduinoYun使用有线连接

使用有线连接也就是将Arduino Yun和电脑接在同一个路由器上就可以了。这种方式的硬件方面就是需要一根普通的网线。接下来我们需要知道路由器为Arduino Yun分配的IP地址,这个地址可以供我们连接用。如果你的软硬件都没有问题,并且连接正确,那么Arduino IDE此时应该检测到了Arduino Yun,你可以在Arduino IDE的端口中查看,如图3.4所示。

 

图3.4  使用有线连接

从图3.4可以看到,Arduino IDE在IP地址192.168.0.110识别到了Arduino Yun。所以,我们就得到了路由器为Arduino Yun分配的地址,将这个地址输入到浏览器中,就可以访问到Arduino Yun的登录界面了(同图3.3)。此时,你就可以跳到3.2进行设置了。

ArduinoYun中使用交叉线直接连接

就笔者猜测来说,使用这种方式连接Arduino Yun的读者应该少之又少,因为现在各种路由器已经普及得不得了了,再者交叉线估计很多读者都没听说过。不过,这只是绝大部分的情况,不能决定所有读者都使用前面两种方式连接。所以,笔者现将最有挑战性的方法教给读者。最大的挑战性就是——先找到一根交叉线 。

这种连接方式是直接使用交叉线将Arduino Yun和电脑连接起来。在这种情况下电脑充当DHCP服务器,而Arduino Yun则是客户端。所以,在你拔出电脑的网线前,首先需要到http://www.dhcpserver.de/cms/download/下载DHCP Server这个软件。DHCP Server可以将你的电脑配置为一个DHCP服务器。DHCP Server是一个绿色软件,它不需要安装,你只需要将它解压缩就可以了,它含有如图3.5所示的几个文件。

 

图3.5  DHCP Server

其中,dhcpsrv.exe文件是DHCP Server的控制面板,它用来控制服务的启停以及显示运行状态。dhcpwiz.exe是DHCP Server的设置向导,它可以通过简单的步骤引导你来配置一个DHCP服务器。

1.为电脑设置固定IP

在运行这个向导之前,我们还需要做一点小的改动就是为本地连接设置一个固定IP。

(1)通过开始菜单中的“搜索程序和文件”命令来打开“网络和共享中心”窗口,如图3.6所示。

 

图3.6  网络和共享中心    图3.7  所有网络接口

*(2)单击左侧的“更改适配器设置”选项,出现如图3.7所示的窗口。

(3)我们需要设置的是“本地连接”接口。在其图标上右击,在弹出菜单中选择“属性”命令,打开如图3.8所示的属性对话框。

(4)选择项目中的“Internet协议版本4(TCP/IPv4)”,并单击右下角的“属性”按钮,弹出如图3.9所示的属性窗口。在这里我们就可以指定IP了,这里笔者将其指定为192.168.30.3,子网掩码使用默认的255.255.255.0,其他项目留空,如图3.9所示。当然读者也可以自行指定IP但是需要符合IP规范。

图3.8  本地连接属性    

然后单击“确定”按钮,完成设置。

2.配置DHCP服务

现在,我们就可以着手部署DHCP服务了。

(1)运行dhcpwiz.exe,出现如图3.10所示的欢迎界面。

(2)单击“下一步”按钮,出现网卡选择界面。我们选择“本地连接”选项,如图3.11所示。

图3.10  欢迎界面                             图3.11  网卡选择界面

(3)单击“下一步”按钮,出现协议选择界面。为了后面可以检测服务器状态,这里需要选择HTTP协议前的复选框,如图3.12所示。

(4)单击“下一步”按钮,这次出现的是确认信息以及设置可以分配的IP地址范围,如图3.13所示。这里使用默认配置即可。

图3.12  协议选择

(5)单击“下一步”按钮,进入配置文件写入界面。这里同样使用默认配置即可,并单击“Write INI file”按钮,如图3.14所示。

(6)单击“下一步”按钮,即完成了配置。同时,出现了DHCP Server的控制面板,我们需要单击“Install”按钮来安装服务,并单击“Configure”按钮,配置防火墙,如图3.15所示。

图3.14  写入配置文件                      图3.15  安装服务并配置防火墙

(7)此时,“Start”按钮已经可用,单击它启动服务,同时服务状态显示为正在运行(Runing),如图3.16所示。接着,单击“完成”按钮,退出向导。

 

图3.16  启动服务

现在,我们就可以使用交叉线将Arduino Yun与电脑连起来了。现在DHCP Server还不能检测到Arduino Yun。我们需要按下Arduino Yun上的“YUN RST”来重启系统。待系统重启完成后,我们就可以在浏览器中访问http://127.0.0.1/dhcpstatus.xml来查看DHCP Server的状态,如图3.17所示即为连接到服务器的客户端信息。

 

图3.17  DHCP Server服务器状态

从图3.17中可以看到,现在有一个MAC地址为90-A2-DA-FF-01-15的客户端,这正是我们的Arduino


本文选自:Arduino Yun快速入门教程大学霸内部资料,转载请注明出处,尊重技术尊重IT人!

相关文章:

WMI技术介绍和应用——查询正在运行的线程信息

本文使用了《WMI技术介绍和应用——使用VC编写一个半同步查询WMI服务的类》中代码做为基础。 一般来说,如果试图枚举系统中的线程。需要先枚举系统中的进程,然后再枚举每个进程中的线程。而WMI给我们提供了一种比较简便的枚举线程信息的方法。&#xff0…

开源生态也难逃“卡脖子”危机?中国AI开发者的警醒和突围

开源不是一个新名词,也不是一个新行动。软件时代,开源推动了全球范围的创新技术成果落地,从而促进全球信息技术发生了全局性、持续性的重大变革,这使它甚至成为一条非常关键且成功的技术路线。随着AI时代的来临,阿里、…

Linux下应用软件的安装

对于刚刚接触Linux的朋友来说,安装一些应用软件是一件头疼的事,因为在Linux下安装应用软件和Windows下截然不同的,下面介绍一下Linux下安装应用软件来解决刚刚接触Linux而不会安装软件朋友的困惑.Linux下软件包有两种比较常见的形式,一种是以 RPM、deb包为代表的智能…

Hibernate 的 session.load()使用方法

2019独角兽企业重金招聘Python工程师标准>>> protected Person getOne(int id){ Session session HibernateSessionFactory.getSession(); Person person new Person(); try{ session.load(person, id); }catch(Exception e){ e.printStackTrace(); }final…

WMI技术介绍和应用——查询桌面信息

本文使用了《WMI技术介绍和应用——使用VC编写一个半同步查询WMI服务的类》中代码做为基础。 在Windows操作系统中,存在很多Windows Station。而每一个Windows Station又存在一个或者多个Windows Desktop。我们一般所说的桌面只是这些众多桌面中的一个。以下内容将介…

联泰集群发布水晶系列工作站,用于深度学习场景

北京时间2019年12月26日,联泰集群在北京正式发布了水晶系列工作站产品 W722、W7224和W5232。 联泰集群硬件产品技术中心总监刘振锋、软件产品技术中心总监孙建军、硬件产品技术中心工程师肖学文分别从应用方向、水晶工作站一体化软件平台及水晶系列产品硬件方面对本…

航空黑客私人YY

坐飞机从从云南飞回老家广州~~~当然绝对支持深圳航空啦!嘎嘎!为啥?当然是服务好 MM太PL了!呵呵!而且在看杂志的同时还看到了一则新闻 内容如下 近日,深圳航空公司与瑞士OnAir公司在香港签约,合作推动在飞机上实现万米高空的自由通信。2008年奥运会前&am…

Redis安装整理(window平台) +php扩展redis

window平台Redis安装 redis windows安装文件下载地址:http://code.google.com/p/servicestack/wiki/RedisWindowsDownload#Download_32bit_Cygwin_builds_for_Windows我选择的redis为最新版的安装文件,见下图: Redis安装文件解压后,有以下…

WMI技术介绍和应用——查询环境变量

本文使用了《WMI技术介绍和应用——使用VC编写一个半同步查询WMI服务的类》中代码做为基础。 我们可以通过系统属性查看当前系统和当前用户的环境变量。(转载请指明出于breaksoftware的csdn博客) 如何使用WMI枚举所有环境变量的信息? CSynQue…

想学新的编程语言?考虑下Go吧

作者 | Lewis Fairweather译者 | 弯月,责编 | Elle来源 | CSDN(ID:CSDNnews)【导读】快速的运行时、高效的并发、简单易学的语法,这些都是Go语言最吸引人的特性。以下为译文:Go语言的入门门槛之低令我感到惊…

oracle学习总结三(bulk collect用法)

通过bulk collect减少loop处理的开销发表人:logzgh | 发表时间: 2006年五月19日, 10:56采用bulk collect可以将查询结果一次性地加载到collections中。而不是通过cursor一条一条地处理。可以在select into,fetch into,returning into语句使用bulk collect。注意在使用bulk coll…

MQTT的学习研究(五) MQTT moquette 的 Blocking API 发布消息服务端使用

参看官方文档: http://publib.boulder.ibm.com/infocenter/wmqv7/v7r0/index.jsp?topic/com.ibm.mq.amqtat.doc/tt00000_.htm * Java 为 MQ Telemetry Transport 创建异步发布程序 *在此任务中,您将遵循教程来修改第一个发布程序。通过修改&#xff0c…

WMI技术介绍和应用——查询驱动信息

本文使用了《WMI技术介绍和应用——使用VC编写一个半同步查询WMI服务的类》中代码做为基础。 如何使用WMI查询所有驱动信息?(转载请指明出于breaksoftware的csdn博客) CSynQueryData recvnotify(L"root\\CIMV2",L"SELECT * FR…

NumericUpDown

NumericUpDown控件主要功能是为一个TextBox控件添加上下按钮,当单击按钮时实现数字的加减,同时也可以提供静态数据,实现这些数据的上下选择。 属性列表: TargetControlID:该控件的目标作用控件。 Width&…

提高建模效率,改变手工作坊式生产,AutoML的技术研究与应用进展如何了?

整理 | 王银出品 | AI科技大本营(ID:rgznai100)【导读】12 月 5-7 日,由中国计算机学会主办,CCF 大数据专家委员会承办,CSDN、中科天玑协办的中国大数据技术大会(BDTC 2019)在北京长城饭店隆重举…

.net使用memcached

Windows中memached安装 -------------服务器端配置 1>开始>运行:CMD(确定) 2>cd C:\memcached(回车) 3>memcached -d install(回车 这步执行安装) 4>memcached -d start(回车 这步执行启动memcache服务器,默认分配64M内存&…

22张精炼图笔记,深度学习专项学习必备

作者 | DL&CV_study9编辑 | Elle来源 | CSDN 博客本文为人工智能学习笔记记录。【深度学习基础篇】一、深度学习基本概念监督学习:所有输入数据都有确定的对应输出数据,在各种网络架构中,输入数据和输出数据的节点层都位于网络的两端&…

WMI技术介绍和应用——查询文件夹信息

本文使用了《WMI技术介绍和应用——使用VC编写一个半同步查询WMI服务的类》中代码做为基础。本节只是列出了WQL语句,具体使用参看前面的例子。 本节主要介绍Win32_Directory类。通过该类我们将可以获得部分常用的文件夹信息。在该类中,有属性Name&#x…

CSLA .NET概述

CSLA是Component-based, Scalable, Logical Architecture的简写,CSLA .NET是Rockford Lhotka基于.Net设计的一套N-tier分布式框架。 CSLA .NET包含如下功能: l n-Level undo capability 译:n层撤销功能 l Tracking broke…

简短的几句js实现css压缩和反压缩功能

写在前面 最近一直在整理css,但因为现在Visual Studio 2013太智能了,它每每在我按ctrlED进行格式化代码的时候,就会将css进行层次格式化(如下图所示),而这个格式让我老大实在无法忍受,我老大认为…

迁移学习前沿研究亟需新鲜血液,深度学习理论不能掉链子

作者 | Frederico Guth,Tefilo Emidio de Campos编译 | 夕颜出品 | AI科技大本营(ID:rgznai100)【导读】人类可以从很少的样本中学习,显示出了人类卓越的泛化能力,而这一点学习算法仍远做不到。当前,最成功的模型需要大量标记好的…

WMI技术介绍和应用——查询磁盘分区和逻辑磁盘信息

本文使用了《WMI技术介绍和应用——使用VC编写一个半同步查询WMI服务的类》中代码做为基础。本节只是列出了WQL语句,具体使用参看前面的例子。(转载请指明出于breaksoftware的csdn博客) 本节主要介绍Win32_DiskPartition和Win32_LogicalDisk两…

用 jQuery 的 AJAX 功能发现的一个错误/注意点:HTTP Error 411

今天程序中有个地方需要 Ajax 方式 POST 数据,发现在 IE 6.0 下正常,而 FireFox 2.0.0.9 下则出错。通过 FireBug 抓取 ajax 回发后得到的页面信息如下:HTTP Error 411 - Length required 经过 google 搜索发现,这个 HTTP 状态码对…

jquery 取消 radio checked 属性,重新选中的问题解决

<input type"radio" name"test"/> <input type"radio" name"test" id "input2"/> (说明&#xff1a;使用的jquery 版本是 1.10.2。) 使用 jquery 的removeAttr(),清除掉 radio 的checked属性后。使用 attr(…

使用×××版软件中常见的一些错误代码

1、错误代码&#xff08;691&#xff09;&#xff1a;由于域上的用户名或密码无效而拒绝访问。如果是使用的易游提供的服务器&#xff0c;请在帐务系统确认使用的帐号是否状态正常&#xff0c;刚设置好的帐号需要等5分钟才能使用。如果是外部服务器请直接找服务器提供商。2、错…

程序员在地铁写代码遭疯狂吐槽!网友:装什么装

01作为了解程序员这个行业的人来说程序员的工作真的很累加班已经成为他们的标签有的时候网站出事或者需求比较紧急的时候可能路边也是他们的工作场地所以这个时候对于程序员们的工作来说也是不分场合的02之前看到网上有人拍到程序员在地铁上写代码的照片并将之发到网络上 图片一…

如何定制一款12306抢票浏览器——构架

快春节了&#xff0c;火车票一票难求。虽然黄牛市场冷淡了&#xff0c;但是互联网“娱乐界”却越来越闹腾了。先是猎豹等浏览器推出抢票专版&#xff08;插件&#xff09;&#xff0c;然后是铁道部约谈金山&#xff0c;之后流传工信部叫停抢票插件&#xff0c;之后再是工信部出…

一些链接, 关于不可变数据

这篇笔记介绍不可变数据, Persistent Data Structure 和 Immutable. 但是不深入数据结构实现, 函数式编程理论. 定义 https://en.wikipedia.org/wiki/Persistent_data_structure In computing, a persistent data structure is a data structure that always preserves the pre…

囚犯学会编程之后会发生什么?

作者 | Simone Stolzoff译者 | 苏本如&#xff0c;责编 | 郭芮出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09;【导读】Slack是硅谷一家多元化的公司&#xff0c;它雇佣了三名以前被监禁的程序员。但事实上&#xff0c;当一个人从监狱获释时&#xff0c;监禁的耻辱…

如何定制一款12306抢票浏览器——用户界面

用户界面 我不打算写个Windows界面。因为这个软件的全部就是个浏览器。我准备将”浏览器“进行到底&#xff0c;所以我选择使用html作为我们的用户界面。我也并不打算从头开始写一个浏览器&#xff0c;我使用了《内嵌IE网页窗口中消除IE默认脚本设置影响的方法》中基于WTL的浏览…