微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > 嵌入式系统设计讨论 > iTOP-4412开发板移植华为E261上网卡

iTOP-4412开发板移植华为E261上网卡

时间:10-02 整理:3721RD 点击:

转自迅为论坛:http://www.topeetboard.com

1环境及软件版本:

电脑:Ubuntu 12.04系统

开发平台:iTop-4412开发板


3G 模块:华为 E261 WCDMA 12d1:1446

Linux 内核版本:3.0版本

usblib: libusb-0.1.12

usbmodeswitch:usb-modeswitch-1.2.6

usb-modeswitch-data:usb-modeswitch-data-20140327

pppd:ppp-2.4.4

2. 内核

2.1 大容量存储驱动

Device Drivers > USB support

<*> USB Mass Storage support

  • USB Mass Storage verbose debug

    <*> Realtek Card Reader support

    <*> Datafab Compact Flash Reader support

    2.2USB 驱动

    DeviceDrivers-->

  • USBsupport-->

    <*>USB SerialConverter support-->

  • USBGeneric Serial Driver

    <*>USBdriver for GSM and CDMA modems

    2.3 内核添加支持 PPP 协议

    Device Drivers > Network device support

    <*> PPP***全选

    3编译工具

    3.1 编译 usblib

    (1)mkdir install

    (2)./configure --host=arm-none-linux-gnueabi --prefix=/home/topeet/android4.0/work/install(使用的编译器和安装的路径)

    (3)make

    (4)make install

    之后在/home/topeet/android4.0/work/install 文件下生成 include 和 lib 文件夹

    3.2 编译 usb_modeswitch

    (1)vim Makefile

    (2)修改 CC = /usr/local/arm/arm-2009q3/bin/arm-none-linux-gnueabi-gcc

    CFLAGS += -Wall -I/home/topeet/android4.0/work/install/include/(需要的头

    文件路径)

    LIBS = -L/home/topeet/android4.0/work/install/lib -l usb(需要的库文件路

    径)

    $(PROG): $(OBJS) usb_modeswitch.h

    $(CC) -o $(PROG) $(OBJS) $(CFLAGS) $(LIBS) $(LDFLAGS) -static

    (3)make

    3.3 usbmodeswitch data

    (1)cd .../usb_modeswitch.d/

    (2)vim 12d1:1446 修改为:

    DefaultVendor= 0x12d1

    DefaultProduct= 0x1446

    TargetVendor= 0x12d1

    TargetProductList="1001,1406,140b,140c,1412,141b,1432,1433,1436,14ac"

    CheckSuccess=20

    MessageContent="555342431234567800000000000000110620000001010001000000

    00000000"

    DisableSwitching=0

    EnableLogging=0

    3.4 编译 PPP(拨号工具)

    (1)cd .../ppp-2.4.4

    (2)./configure

    (3)make CC=arm-none-linux-gnueabi-gcc

    (4)在 pppd文件夹和 chat 文件夹中使用命令 arm-linux-strip-S pppd 和 arm-linux-strip-S chat 这样会较大地减小这两个文件的大小

    4 拷贝并拨号

    (1)将 install/lib 下的 libusb.so,libusb-0.1.so.4,libusb-0.1.so.4.4.4 拷贝到开发板的/lib

    文件下

    (2)将 usb_modeswitch 文件下载到开发板的/usr/sbin/下

    (3)将 12d1:1446 文件拷贝到/etc/usb_modeswitch.d/文件夹下

    (4)将 pppd和 chat 下载到开发板/usr/sbin/目录下

    (5)在/etc/ppp/peers/新建 chat-wcdma-connect chat-wcdma-disconnect wcdma 三个

    文件,内容查看当前目录“需拷贝到开发板文件”

    (6)

    usb_modeswitch -W -c /etc/usb_modeswitch.d/12d1:1446(转换 USB设备连接模式)

    (注意把文件 12d1_1446 名改成 12d1:1446)


    执行完上条命令后


    pppd call wcdma&(拨号上网)

    (替换网关,DNS 具体内容依据上条命令的打印信息决定)

    echo "nameserver 202.99.160.68" >> /etc/resolv.conf (DNS)

    route add default gw 10.14.165.1 (IP)

    测试是否成功

    ping www.baidu.com

    PING www.baidu.com (61.135.169.121): 56 data bytes

    64 bytes from 61.135.169.121: seq=0 ttl=52 time=68.409 ms

    64 bytes from 61.135.169.121: seq=1 ttl=52 time=68.564 ms

    完成。


    就是这个好文章,赞

    好帖子,学习了,带走;

    多谢分享呐,好贴,顶~

  • Copyright © 2017-2020 微波EDA网 版权所有

    网站地图

    Top