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

英创信息技术Linux工控主板支持3G网卡介绍

导读大家好,我是极客范的本期栏目编辑小友,现在为大家讲解英创信息技术Linux工控主板支持3G网卡介绍问题。Innolux提供的多种无线通信方案(包

大家好,我是极客范的本期栏目编辑小友,现在为大家讲解英创信息技术Linux工控主板支持3G网卡介绍问题。

Innolux提供的多种无线通信方案(包括基于GPRS网络的TCP/UDP通信、支持断点续传的短信、基于GPRS的FTP文件传输等。)已被许多客户成功应用到我们的项目中。随着3G(第三代,第三代移动通信技术)的普及,英创公司的工控主板也全面支持3G无线通信。本文以目前常用的华为3G网卡770W和E261为例,介绍了使用EM335x嵌入式Linux工控主板登录中国联通WCDMA网络的具体方法。

华为的770W和E261网卡通过USB接口连接到主板。Innolux主板的Linux内核增加了3G模块驱动(USB转串口驱动)和ppp协议支持。内核中的3G模块驱动是以模块(usbserial.ko)的形式提供的。usbserial.ko是一款通用驱动,集成了一些常见的网卡驱动,比如华为的770W网卡驱动。还有一些网卡的驱动没有集成在内核模块中,需要加载辅助工具,比如华为E261。内核集成驱动的网卡只需要加载驱动模块,然后拨号连接互联网。用于拨号的文件位于目录/etc/ppp/peers/。Innolux为GPRS网络、WCDMA网络和CDMA网络准备了拨号文件。在Innolux的GPRS模块中,很多客户都使用了GPRS拨号。使用3G网络时,客户只需选择相应的拨号文件。本文使用的是中国联通WCDMA网络,因此使用的是/etc/ppp/peers/directory中的wcdma-connect-script文件。如果客户有其他特殊要求,可以根据Innolux提供的三个拨号文件进行修改,满足自己的需求。

华为770W网卡的使用方法如下:

1.开机启动Innolux的Linux主板,插入3G网卡。当驱动程序未加载时,将被识别为光驱或USB移动存储设备。

2.加载驱动模块:

insmod/lib/modules/3 . 12 . 0/us bserial . ko供应商=0x12d1产品=0x1404

当网卡在调制解调器模式下工作时,供应商和产品是id。在这里输入华为770W网卡的ID,其中厂商=0x12d1代表华为,产品=0x1404代表产品。加载成功后,终端将打印转换信息,网卡将转换为Modem模式,节点ttyUSB0、ttyUSB1、ttyUSB2、ttyUSB3和ttyUSB4将显示在/dev下。

3.拨号:

pppd呼叫WCDMA-连接-脚本

使用wcdma网络的拨号文件wcdma-connect-script进行拨号,完成后可以使用ifconfig命令进行查询。如果网络连接成功,会有ppp0的网络信息。如图所示:

但是有些比较新的网卡驱动没有集成在usbserial.ko中,这是因为加载了usbserial.ko模块,无法识别网卡。需要使用另一个辅助工具usb_modeswitch。Innolux已经将该工具移植到嵌入式环境中,所以华为E261网卡需要使用usb_modeswitch,因为usberial.ko中没有驱动程序,操作步骤如下:

1.开机启动Innolux的Linux主板,插入3G网卡。当驱动程序没有加载时,它也会被识别为光驱或USB移动存储设备。

2.加载驱动模块:

insmod/lib/modules/3 . 12 . 0/us bserial . ko供应商=0x12d1产品=0x1436

这是华为E261网卡的ID。同样,厂商=0x12d1代表华为,产品=0x1436代表产品。加载驱动程序后,系统无法识别网卡。

3.使用usb_modeswitch工具:

在nandflash中创建一个3g目录,将Innolux移植的usb_modeswitch工具和配置文件12d1_1446复制到3g目录中,执行命令:

cd /mnt/nandflash/3g。/usb_modeswitch -c 12d1_1446

12d1_1446是usb_modeswitch的配置文件,编辑如下:

#华为,更新的调制解调器

DefaultVendor=0x12d1

默认产品

t= 0x1446TargetVendor=0x12d1TargetProductList='1001,1406,140b,140c,1412,141b,1432,1433,1436,14ac,1506,150c,1511'MessageContent='55534243123456780000000000000011062000000101000100000000000000'

配置文件中DefaultVendor和DefaultProduc是没有加载驱动前,系统将网卡识别成CDROM或者USB移动存储设备时显示的ID,0x12d1是指华为公司,0x1446指的是USB移动存储设备,因为没有加载驱动时,系统将网卡识别为移动存储设备,所以DefaultProduc写上移动存储设备的ID。TargetVendor和TargetProductList是上网卡工作在Modem模式时的ID,同样0x12d1是指华为公司,0x1446指的是E261这款网卡。若客户需要使用不同公司,不同型号的3G网卡,需要将这个配置文件中的内容修改为对应3G网卡的配置。

通过使用usb_modeswitch工具,系统成功的将网卡转换为Modem模式,查看/dev目录下,会显示节点ttyUSB0、ttyUSB1、ttyUSB2、ttyUSB3、ttyUSB4。

4、拨号:

执行命令:pppd call wcdma-connect-script

使用WCDMA网络的拨号文件wcdma-connect-script进行拨号,完成以后,可以使用ifconfig命令查询,如果成功联网,会有ppp0的网络信息。如图所示:

至此,华为770W和E261网卡通过EM335x已经成功登录联通3G网络,可以通过ping外网网址来测试是否正确连接网络。

英创公司提供的众多无线通讯方案(包括基于GPRS网络的TCP/UDP通讯、SMS、基于GPRS的支持断点继传的FTP文件传输等)被我们的很多客户成功的运用到了自己的项目中。随着3G(3rd-generation,第三代移动通讯技术)运用的普及,英创公司的工控主板同样对3G无线通讯做了完备的支持。本文就以目前很常用的华为3G网卡770W和E261为例,介绍英创嵌入式Linux工控主板EM335x登录中国联通WCDMA网络的具体方法。

华为770W和E261网卡通过USB接口和主板连接,英创公司主板的Linux内核中已经添加了3G模块的驱动(USB转串口的驱动)和ppp协议的支持。内核中的3G模块的驱动是以模块(usbserial.ko)的形式提供,usbserial.ko是一个通用的驱动,已经集成了一部分常用网卡的驱动,比如华为770W的网卡驱动。还有一部分网卡,内核模块中并没有集成它的驱动,需要借助辅助工具来进行驱动加载,比如华为E261。在内核中已经集成驱动的网卡只需要加载驱动模块,然后拨号,即可连接上网,拨号使用的文件在/etc/ppp/peers/目录下,英创公司已经编写好了GPRS网络,WCDMA网络,CDMA网络的拨号文件,GPRS拨号在英创的GPRS模块中已经被很多客户使用,使用3G网络时客户只需要选用对应的拨号文件即可,本文使用的是联通WCDMA网络,所以使用/etc/ppp/peers/目录下的wcdma-connect-script文件。若客户有其他特殊的要求,可以根据英创公司提供的这三个拨号文件进行修改,满足自己的需要。

华为770W网卡使用步骤如下:

1、上电启动英创公司的Linux主板,插入3G网卡。在没有加载驱动的时候,会被识别成CDROM或者USB移动存储设备。

2、加载驱动模块:insmod /lib/modules/3.12.0/usbserial.ko vendor=0x12d1 product=0x1404

vendor和product是网卡工作在Modem模式时的ID。这里输入的是华为770W网卡的ID,vendor=0x12d1代表华为公司,product=0x1404代表产品。加载成功后,终端会打印出转换信息,网卡变转化为Modem模式,在/dev下显示节点ttyUSB0、ttyUSB1、ttyUSB2、ttyUSB3、ttyUSB4。

3、拨号:pppd call wcdma-connect-script

使用WCDMA网络的拨号文件wcdma-connect-script进行拨号,完成以后,可以使用ifconfig命令查询,如果成功联网,会有ppp0的网络信息。如图所示:

但是还有一部分比较新的网卡的驱动没有集成在usbserial.ko中,这是只是加载了usbserial.ko模块还不能够识别这个网卡,需要使用另一款辅助工具:usb_modeswitch,英创公司已经将这个工具移植到嵌入式环境中,华为E261网卡的使用就需要使用到usb_modeswitch,因为usberial.ko中并没有它的驱动,使用步骤如下:

1、上电启动英创公司的Linux主板,插入3G网卡。在没有加载驱动的时候,同样会被识别成CDROM或者USB移动存储设备。

2、加载驱动模块:insmod /lib/modules/3.12.0/usbserial.ko vendor=0x12d1 product=0x1436

这里输入的是华为E261网卡的ID,同样vendor=0x12d1代表华为公司,product=0x1436代表产品。加载驱动后,系统并没有识别出网卡。

3、使用usb_modeswitch工具:在nandflash中创建一个3g目录,将英创公司移植的usb_modeswitch工具和配置文件12d1_1446复制到3g目录下,执行命令:cd /mnt/nandflash/3g./usb_modeswitch -c 12d1_1446

12d1_1446是usb_modeswitch的配置文件,编辑如下:# Huawei, newer modemsDefaultVendor=0x12d1DefaultProduct= 0x1446TargetVendor=0x12d1TargetProductList='1001,1406,140b,140c,1412,141b,1432,1433,1436,14ac,1506,150c,1511'MessageContent='55534243123456780000000000000011062000000101000100000000000000'

配置文件中DefaultVendor和DefaultProduc是没有加载驱动前,系统将网卡识别成CDROM或者USB移动存储设备时显示的ID,0x12d1是指华为公司,0x1446指的是USB移动存储设备,因为没有加载驱动时,系统将网卡识别为移动存储设备,所以DefaultProduc写上移动存储设备的ID。TargetVendor和TargetProductList是上网卡工作在Modem模式时的ID,同样0x12d1是指华为公司,0x1446指的是E261这款网卡。若客户需要使用不同公司,不同型号的3G网卡,需要将这个配置文件中的内容修改为对应3G网卡的配置。

通过使用usb_modeswitch工具,系统成功的将网卡转换为Modem模式,查看/dev目录下,会显示节点ttyUSB0、ttyUSB1、ttyUSB2、ttyUSB3、ttyUSB4。

4、拨号:

执行命令:pppd call wcdma-connect-script

使用WCDMA网络的拨号文件wcdma-connect-script进行拨号,完成以后,可以使用ifconfig命令查询,如果成功联网,会有ppp0的网络信息。如图所示:

至此,华为770W和E261网卡通过EM335x已经成功登录联通3G网络,可以通过ping外网网址来测试是否正确连接网络。

.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; }
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。