MicroWrt开发环境搭建

简介: 最近有幸接触到了microduino及其生产的microwrt,貌似也叫wrtnode。一个比较吸引人的地方在于:这么一块小小的板子上可以跑小型版的linux系统——openwrt,它又属于业界最近比较火的智能硬件的一种,于是就开始接触一点,期待令人惊喜的应用。 由于我用的是台式机,所以至少要有两块硬件,一个是WRTnode核心板,另一个就是串口转USB板FT232R(windows需要

最近有幸接触到了microduino及其生产的microwrt,貌似也叫wrtnode。一个比较吸引人的地方在于:这么一块小小的板子上可以跑小型版的linux系统——openwrt,它又属于业界最近比较火的智能硬件的一种,于是就开始接触一点,期待令人惊喜的应用。

由于我用的是台式机,所以至少要有两块硬件,一个是WRTnode核心板,另一个就是串口转USB板FT232R(windows需要安装它的驱动)。接线也简单,需要注意WRTnode上的TX,RX引脚要分别与FT232R上的TX,RX引脚要对应,用跳线连接即可。示意图如下:



串口工具有很多种,像putty,securecrt都行,我用的是xshell。设置好串口后,就开始连接。如果正常的话输入用户与密码就可进入了。


我的目录是希望WRTnode成为无线中继,即既是AP也是STA。那么就需要配置板子上的wifi模块,如果是笔记本,方便些,无线连接后用浏览器即可;台式机没办法配,所以我就用手机登陆了。详细过程可参考附录,目的很简单,就是让它再连接上一个已经接入公网的路由器。当我点击最终的"保存&应用"时,串口终端打印如下:






此时,再ping下百度就会发现可以连接公网了,这样,一块小板子就真正成了一个可以联网的linux主机了。此时再ifconfig:

apcli0    Link encap:Ethernet  HWaddr 02:0C:43:76:20:D0  (这是配好后新增的,显然连接上了192.168.13.1路由器)
          inet addr:192.168.13.101  Bcast:192.168.13.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:9 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

br-lan    Link encap:Ethernet  HWaddr 00:0C:43:76:20:77  
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:6945 errors:0 dropped:18 overruns:0 frame:0
          TX packets:4657 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:652041 (636.7 KiB)  TX bytes:1169944 (1.1 MiB)

eth2      Link encap:Ethernet  HWaddr 00:0C:43:76:20:77  
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1004 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:316458 (309.0 KiB)
          Interrupt:3 

eth2.1    Link encap:Ethernet  HWaddr 00:0C:43:76:20:77  
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:440 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 B)  TX bytes:94806 (92.5 KiB)

eth2.2    Link encap:Ethernet  HWaddr 00:0C:43:76:20:78  
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:564 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 B)  TX bytes:221652 (216.4 KiB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:12408 errors:0 dropped:0 overruns:0 frame:0
          TX packets:12408 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:847659 (827.7 KiB)  TX bytes:847659 (827.7 KiB)

ra0       Link encap:Ethernet  HWaddr 00:0C:43:76:20:D0  
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:992 errors:0 dropped:0 overruns:0 frame:0
          TX packets:654 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:173964 (169.8 KiB)  TX bytes:359565 (351.1 KiB)
          Interrupt:4


不过暂不太清楚为啥会有这么多接口,也许需要补充下openwrt的知识了。接下来,能有什么样的应用就看我们个人的发挥了。吐舌头


【11.4补充】

找了个无线上网卡,插在台式机上,恰好可以以telnet方式连入开发板,就不在用串口方式了

按照附录教程,我创建了一个helloworld程序,目录结构如下:



在SDK顶层目录上make,即在build_dir\target-mipsel_24kec+dsp_uClibc-0.9.33.2\helloworld下生成了可执行文件,用file命令检测时不能够执行,因为是交叉编译:



当然在bin\ramips\packages\base也有一个关于helloworld的ipk文件,但是安装时出现以下问题:



但是当用winscp把helloworld执行文件放上去时,它是可以执行的:



【11-17更新】

依照helloworld例子,我实现了自己的业务逻辑:即在openwrt系统上将模拟的传感器数据传至yeelink云平台,核心代码如下:


编译之后即可生成二进制文件,但似乎发生点错误,未能生成ipk文件。将执行文件放到板中,运行结果如下图,同时刷新yeelink页面即可发现曲线发生了变化。


不过还是有点问题,接口apcli0貌似时通时断,也会影响程序的执行,大致功能确是实现了。


附录

wifi配置:

https://www.microduino.cc/wiki/index.php?title=%E7%AC%AC%E5%85%AD%E8%AF%BE--OpenWRT_%E5%BC%80%E6%9C%BA%E6%95%99%E7%A8%8B

helloworld教程:

http://blog.chinaunix.net/uid-29418452-id-4071751.html

http://blog.csdn.net/hui523hui523hui523/article/details/38366427

目录
相关文章
|
6月前
|
IDE Java 开发工具
【C/C++】C/C++编程——C++ 开发环境搭建
【C/C++】C/C++编程——C++ 开发环境搭建
134 0
|
19天前
|
Java 开发工具
鸿蒙Flutter实战:02-Windows环境搭建踩坑指南
本指南介绍如何搭建鸿蒙Flutter开发环境,包括下载Flutter SDK、配置环境变量(如FLUTTER_STORAGE_BASE_URL、PUB_HOSTED_URL、DEVECO_SDK_HOME等)和检查工具版本。还提到避免项目路径过深、与SDK同盘存放等注意事项,以及解决VsCode无法识别设备的方法。
36 0
|
6天前
|
Java Linux 网络安全
树莓派的开发环境搭建教程
本教程详细介绍如何在树莓派上搭建开发环境,包括系统安装、配置网络、设置开发工具等步骤,适合初学者快速上手。
|
5月前
|
JavaScript
1.Electron开发环境搭建
1.Electron开发环境搭建
122 0
|
12月前
|
Java Maven
bukkit开发环境搭建 2
bukkit开发环境搭建
71 0
|
12月前
|
Java
bukkit开发环境搭建 1
bukkit开发环境搭建
70 0
|
Ubuntu Linux 虚拟化
嵌入式Linux系列第1篇:开发环境搭建
Ublox ZED-F9P 厘米级定位模组开箱评估
|
JavaScript 开发工具 开发者
openHarmony开发环境搭建
从今天开始正式写openHarmony相关的文章,经过一段时间的沉淀,学习之路漫漫,不断地学习才是王道,熟话说万事开头难,安装软件应该是学习的第一道坎,废话不多说了,看内容了~~
311 0
openHarmony开发环境搭建
|
Java 5G 开发工具
鸿蒙系统开发工具DevEco Studio 2.2下载/安装教程
鸿蒙开发包括鸿蒙应用开发(手机app)和鸿蒙设备开发(硬件开发)两大部分,其中设备开发又包括TV,音响,眼镜,手表,PC,平板,汽车,耳机以及未来的各种智能家居,手机作为一个超级终端,与各种设备实现互联,未来无论是在工作,学习,运动还是做家务,都会用到鸿蒙系统
483 1
鸿蒙系统开发工具DevEco Studio 2.2下载/安装教程
|
开发工具 C++ git
Q#开发环境搭建
Q#是微软新公开的一门语言,用于量子程序开发。Q是量子的英文Quantum 的第一个字母。   做为微软的语言,自然要用微软的IDE:VS。 如果电脑没有安装vs,先去下载安装:https://www.visualstudio.com/downloads/ 任意选择一款vs的版本,只要别选成vs code就行。
1379 0