您的位置首页>企业动态>

英利嵌入式Linux工控主板连接无线Wi-Fi的方法

导读大家好,我是极客范的本期栏目编辑小友,现在为大家讲解英利嵌入式Linux工控主板连接无线Wi-Fi的方法问题。Wi-Fi无线网络短距离数据传输因

大家好,我是极客范的本期栏目编辑小友,现在为大家讲解英利嵌入式Linux工控主板连接无线Wi-Fi的方法问题。

Wi-Fi无线网络短距离数据传输因其无需布线、数据传输速度快等优点,在工业应用中越来越普及。针对这类应用,我公司前段时间在EM9160、EM9260、EM9280等系列Linux嵌入式板上移植了基于RT73的无线网络驱动。

由于rt73芯片的诸多因素,目前市场上很难买到支持rt73的Wi-Fi无线模块。针对这种情况,我们选择了基于RT3070_RT5370芯片的无线上网模块,并移植了其Linux驱动。RT3070_RT5370的Linux驱动可以在http://www.mediatek.com/.直接下载最新下载的驱动文件如下:

DPO _ RT5572 _ LinUxStata _ 2 . 6 . 1 . 3 _ 20121022 . tar . bz2

解压缩后,获得驱动程序源代码。我们将RT3070_RT5370的驱动程序制作成可加载模块rt3070sta.ko,移植到工控主板上。EM9160和EM9260将驱动程序模块放在根文件系统的目录/lib/modules/2.6.30中,而EM9280将驱动程序模块放在目录/lib/modules/3.9.7中,因此客户只需要调用Linux标准命令insmod即可加载。

移植还是有一部分的,因为Linux内核中的wireless_tools工具不支持WPA认证,而且目前的无线Wi-Fi网络多为WPA加密,所以需要移植wpa _恳求器工具,通过在目标板上运行工具软件来激活无线网卡。

wpa _恳求者工具分为两部分。一个是可执行程序wpa _恳求者,大小约为2M。为了方便客户,文件直接放在根文件系统/usr/bin中。

wpa _恳求者工具还有一个非常重要的部分。WPA _恳求者运行时所需的配置文件WPA _恳求者. conf可以通过WPA _恳求者. conf配置文件修改一些基本属性。这里客户需要知道的是Wi-Fi连接的名称ssid和认证密码psk。我们在/etc目录下放一个设置好的样例配置文件,客户可以将样例配置文件复制到/mnt/nandflash中,修改自己需要的配置。

下面以目前市面上基于RT3070_RT5370芯片的B- LINK BL-LW05-H模块为例,介绍无线Wi-Fi接入英利嵌入式Linux工控主板的具体方法。客户也可以选择其他基于RT3070_RT5370芯片的无线上网模块进行开发。

1.首先,需要设置wpa _恳求者的配置文件wpa _恳求者. conf。示例配置文件位于目录/etc中。

建议客户在设置示例文件之前将其复制到/mnt/nandflash。如果出现问题,您也可以在/etc中找到示例配置文件:

[root @ EM9X 60/]# CP/etc/wpa _ piece nt . conf/mnt/NAND flash/。

复制成功后,进入VI模式编辑wpa _恳求者. conf:

[root @ EM9X 60/]# VI/mnt/NAND flash/wpa _ belient . conf

进入vi模式查看wpa _恳求者的配置. conf按“I”切换到插入模式进行编辑。客户只需要修改两个项目:

SSID="//填写要连接的Wi-Fi名称。

PSK="//填写无线连接的密码

修改完成后,按“ESC”进入命令行模式,在底线输入“:wq”(保存退出),设置完成。

2.加载无线模块的驱动程序:

[root @ em9x 60/]# insmod/lib/modules/2 . 6 . 30/rt 3070 sta . ko

成功加载后,通过USB接口访问无线模块的系统可以检测到无线模块。

3.启动无线网卡:

[root@EM9X60 /]#ifconfig ra0 up

4.呼叫wpa _恳求者以连接到无线网络:

[root @ em9x 60/]# wpa _恳求者-B- Dtext-IRA 0-c/mnt/NAND flash/wpa _恳求者. conf -d

参数说明: -B 指定以守护进程模式运行,即程序将以后台模式运行。连接Wi-Fi需要supplicant一直运行,所以采用后台模式,不会影响客户其他程序的运行。 -D 指定使用的驱动,这里是无线网,所以用wext。 -i 指定网卡。 -c 指定使用的配置文件,这里是我们之前设置好放在/mnt/nandflash中的配置文件。 -d 添加调试信息。

这条指令调用成功之后,工控主板将成功连接上在supplicant.conf中设置的Wi-Fi。

5、成功连接上Wi-Fi之后,可以输入指令自动获取动态IP: [root@EM9X60 /]#udhcpc –i ra0

至此已经成功使用英利嵌入式Linux工控主板连接无线Wi-Fi。

Wi-Fi无线网络短距离数据传输以其无需布线、数据传输速度快等优势,在工业应用中越来越普及。针对这类的应用我们公司前段时间在EM9160、EM9260、EM9280等系列Linux嵌入式板卡板卡上移植了基于RT73的无线网络驱动。

由于rt73芯片的诸多因素,目前市面上支持rt73的Wi-Fi无线模块很难购买,根据这种情况,我们选择了基于RT3070_RT5370芯片的无线上网模块,对其Linux驱动进行了移植。RT3070_RT5370的Linux驱动在http://www.mediatek.com/可以直接进行下载,下载的最新驱动文件:

DPO_RT5572_LinuxSTA_2.6.1.3_20121022.tar.bz2

解压之后获得驱动源代码,我们将RT3070_RT5370的驱动做成一个可加载的模块rt3070sta.ko移植到工控主板中。EM9160和EM9260将驱动模块放在根文件系统的目录/lib/modules/2.6.30下,EM9280将驱动模块放在/lib/modules/3.9.7下,客户使用时只需调用Linux标准命令insmod进行加载。

移植工作还有一部分,因为Linux内核中的wireless_tools工具不支持WPA认证,而现在的无线Wi-Fi网络大多是WPA加密,所以需要移植wpa_supplicant工具,目标板上通过运行该工具软件来激活无线网卡。

wpa_supplicant工具分为两个部分,一个是可执行程序wpa_supplicant,大小近2M左右,该文件直接放在根文件系统/usr/bin中,以方便客户操作。

wpa_supplicant工具还有一个很重要的部分,wpa_supplicant运行时所需要的配置文件wpa_supplicant.conf,通过wpa_supplicant.conf配置文件,可以修改一些基本属性,这里客户需要了解的是连接Wi-Fi的名称ssid和验证的密码psk。我们将设置好的一个示例配置文件放在目录/etc下,客户可将示例配置文件复制到/mnt/nandflash中修改成自己需要的配置。

下面就以目前市面上性价比较高基于RT3070_RT5370芯片的B-LINK公司的BL-LW05-H模块为例,介绍英利嵌入式Linux工控主板连接无线Wi-Fi的具体方法。客户也可自行选择基于RT3070_RT5370芯片的其他无线上网模块进行开发。

1、首先需要设置wpa_supplicant的配置文件wpa_supplicant.conf。该示例配置文件在目录/etc下。

建议客户先把示例文件复制到/mnt/nandflash中,再进行设置。如果出错还能在/etc中找到示例配置文件: [root@EM9X60 /]#cp /etc/wpa_supplicant.conf /mnt/nandflash/. 复制成功以后,进入VI模式编辑wpa_supplicant.conf: [root@EM9X60 /]#vi /mnt/nandflash/wpa_supplicant.conf

进入vi模式可以看见wpa_supplicant.conf的配置,按“i”切换到插入模式进行编辑,客户只需修改其中的两项: ssid=” ” //填入需要连接的Wi-Fi名称 psk=” ” //填入连接Wi-Fi的密码

修改完成以后,按“ESC”进入命令行模式,并在底行输入“:wq”(存盘退出),这样就设置完成。

2、加载无线模块的驱动: [root@EM9X60 /]#insmod /lib/modules/2.6.30/rt3070sta.ko 加载成功之后,通过USB接口接入无线模块系统能检测到无线模块。

3、启动无线网卡: [root@EM9X60 /]#ifconfig ra0 up

4、调用wpa_supplicant连接无线网: [root@EM9X60/]#wpa_supplicant -B -Dwext -ira0 -c /mnt/nandflash/wpa_supplicant.conf -d

参数说明: -B 指定以守护进程模式运行,即程序将以后台模式运行。连接Wi-Fi需要supplicant一直运行,所以采用后台模式,不会影响客户其他程序的运行。 -D 指定使用的驱动,这里是无线网,所以用wext。 -i 指定网卡。 -c 指定使用的配置文件,这里是我们之前设置好放在/mnt/nandflash中的配置文件。 -d 添加调试信息。

这条指令调用成功之后,工控主板将成功连接上在supplicant.conf中设置的Wi-Fi。

5、成功连接上Wi-Fi之后,可以输入指令自动获取动态IP: [root@EM9X60 /]#udhcpc –i ra0

至此已经成功使用英利嵌入式Linux工控主板连接无线Wi-Fi。

.dfma { position: relative; width: 1000px; margin: 0 auto; } .dfma a::after { position: absolute; left: 0; bottom: 0; width: 30px; line-height: 1.4; text-align: center; background-color: rgba(0, 0, 0, .5); color: #fff; font-size: 12px; content:"广告"; } .dfma img { display: block; }
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。