我们这段时间作了一个基于arm开发板和开源linux的3G模块,给大家作个参考。3G选用的是华为的EC1261,USB接口,现在市面上的基本都是USB口,据说可以直接去掉在USB modem的USB转串口等模块,直接通过GPIO口来控制3G模块,但是由于我们这资源有限,实现不了那么复杂的工作,所以就直接用了华为的产品了,而没有去找更加基础的芯片。

USB网卡内部结构比较复杂,它们大部分都包括modem,USB转串口模块,存储模块,读卡器模块,所以linux内核需要添加的东西也比较多。USB主机控制器有3种规格:OHCI(Open Host Controller Interface)、UHCI(Universal Host Controller Interface)和EHCI(Enhanced Host Controller Interface),OHCI驱动程序用来为非PC系统上以及带有SiS和ALi芯片组的PC主板上的USB芯片提供支持。UHCI驱动程序多用来为大多数其他PC主板(包括Intel和Via)上的USB芯片提供支持。EHCI由USB 2.0规范所提出,它兼容OHCI和UHCI。UHCI的硬件线路比OHCI简单,所以成本较低,但需要较复杂的驱动程序,CPU负荷稍重。我们这里使用的是OHCI。

言归正传,我们来介绍第一步。重新编译Linux内核,我们需要在内核里添加如下模块:

Device Drivers=>

USB support=>

[*] Suppon for Host-side USB

[*] USB device filesystem

[*] USB device class-devices

[*] OHCI HCDsupport

[*] USB Mass Storage Support

USB Serial Convelter suppor -->

[*] USB driver for GSM and CDMA modems

SCSI device support=>

[*]SCSI device support

[*] SCSI disk support

[*] Probe all LUNs on each SCSI device

HDI Devices=>

[*] USB Human Interface Devices support

[*] /dev/hiddev raw HID device support

Network device support=>

PPP(point—to—point protoco1)support

PPP support for async serial ports

PPP suppo rt for sync tty ports

PPP Deflate compression

PPP BSD —Compress compression

PPP MPPE compress compression(encryp—tion)

PPP over Ethernet

PPP over 12TP

内核配置就这样了,但是别急,还没完呢。当你碰到一个内核并不支持的新设备后,只需要把该Dongle 3G接口的Vendor ID和Product ID添加到linux-2.6.x/drivers/usb/serial/optionc中的option_ids[]数组即可。顺便说下,每个USB设备都有Vendor ID和Product ID,但不一定唯一哦,Vendor ID是设备商ID,比如华为和中兴都有各自的Vendor ID。Product ID是他们旗下产品的ID,这个就不一定唯一了。

然后开始编译内核,编译好了之后把内核下载进去,插上USB网卡,还要进行如下操作:

mount -t usbfs usbfs /proc/bus/usb/

然后运行命令cat /proc/bus/usb/devices 可以获得设备信息。如果没有devices文件的话说明你的配置有问题。呵呵。另外在dev下应该出现sr0文件。

下面是第二步,把3G网卡由存储模式转为 modem模式

部分网卡可以直接通过eject命令弹出,转换成modem模式,但是大部分都不行。 大家不用担心,有一个叫usb-modeswitch的软件可以帮我们解决这个问题。

不知大家第二步进行的怎么样,下面就是第三步了,也就是最后一步 PPP拨号

下载PPP套件。本文选用其版本PPP-2.4.1。在终端中执行#tar zxvf PPP-2.4.4.tar.gz命令,将PPP-2.4.4.tar3gz解压至/opt目录,进入此目录后执行./configure命令,再执make CC=arm-linux-gcc命令编译char、PPpd、pppdump、pppstats,将生成的可执行文件拷贝到开发板的/bin目录下。

下面这一步比较难,也就是配置文件问题。不详述了,直接引用。

我要补充的一点是最好在

/etc/resolv.conf 里直接加上一句 nameserver 8.8.8.8

如果要用的话最好严格按照我说的作哦。

linux 3g 程序,ARM板和Linux上的3G配置详解相关推荐

  1. linux 微信告警消息secret,Zabbix3.0.4微信告警配置详解

    一.准备工作 申请微信公众号,并且是可以有发送消息的接口.添加有个脚本去调用微信的api. 之后可以参考下zabbix 的搭建,然后了解下脚本报警,之后再考虑报警方式的多样化. 个人微信一个 个人邮箱 ...

  2. uniapp微信小程序系列(2)pages.json实用配置详解

    本篇主要介绍其中几个实用的配置: 1. 配置应用级别样式.tabBar样式 2. 配置前端页面路由.分包路由 3. 配置easycom全局组件(组件无需import引入直接使用) 一. 配置应用级别样 ...

  3. Linux上的free命令详解

    Linux上的free命令详解 转自: http://www.cnblogs.com/coldplayerest/archive/2010/02/20/1669949.html 解释一下Linux上f ...

  4. mac linux win三系统安装教程,macbookpro上安装三系统详解教程(macosxwindowslinuxubuntu).doc...

    macbookpro上安装三系统详解教程(macosxwindowslinuxubuntu) macbook pro上安装三系统详解教程(mac os x+windows+linux ubuntu) ...

  5. linux mysql 确认命令_LINUX启动/重启/停上MYSQL的命令(详解)

    如何启动/停止/重启MySQL 一.启动方式 1.使用 service 启动:service mysqld start 2.使用 mysqld 脚本启动:/etc/inint.d/mysqld sta ...

  6. linux启动mysql命令_LINUX启动/重启/停上MYSQL的命令(详解)

    如何启动/停止/重启MySQL 一.启动方式 1.使用 service 启动:service mysqld start 2.使用 mysqld 脚本启动:/etc/inint.d/mysqld sta ...

  7. Linux系统上hdparm工具参数详解,硬盘检查、测速、设定和优化

    Linux系统上hdparm工具参数详解,硬盘检查.测速.设定和优化 2012/07/25 hdparm, 硬盘 Linux命令相关 1 6,757 hdparm的功能:显示与设定硬盘的参数.hdpa ...

  8. linux上安装Openssl步骤详解

    linux上安装Openssl步骤详解     1,查看原有系统是否已安装Openssl openssl version -a 系统已经安装了openssl,我们先安装新的版本,然后将环境配置成最新的 ...

  9. linux shell 字符串操作(长度,查找,替换)详解 BASH

    linux shell 字符串操作(长度,查找,替换)详解 在做shell批处理程序时候,经常会涉及到字符串相关操作.有很多命令语句,如:awk,sed都可以做字符串各种操作. 其实shell内置一系 ...

最新文章

  1. splunk的bucket组织目录——时间序列,按照时间来组织目录
  2. KubeMeet 直播 | 现场直击大规模集群、混合环境下的云原生应用交付难题
  3. 【深度学习】这千层transformer让我目瞪口呆
  4. 转载---SQL Server XML基础学习之5--XQuery(query)
  5. android按钮点击toast,关于button点击事件中setOnClick等元素的解读以及方法?以及toast的位置以及作用?...
  6. Git 克隆远程项目到本地_01
  7. bs4爬取的时候有两个标签相同_10分钟用Python爬取最近很火的复联4影评
  8. 出差在外,无法随时随地查看报表?那是因为你还不知道移动端报表
  9. 金立旗下18辆车产被司法拍卖 成交额近500万元
  10. Codeforces Round #518 (Div. 2): E. Multihedgehog(模拟)
  11. 纯CSS实现鼠标滑过缩略图放大显示代码
  12. Mac投屏软件推荐duet
  13. sqlmap使用 mysql_求sqlmap使用教程?
  14. 绘本“深阅读’’的教学探索
  15. 昆明理工大学计算机考研分数线,昆明理工大学2015考研分数线已公布
  16. UVA12304 2D Geometry 110 in 1!
  17. Jquery锚点缓慢移动到目标位置
  18. Sort Sort Sort
  19. ksql整合debezium创建连接器出现500
  20. 进程、线程等操作系统基础知识

热门文章

  1. C# 计算IP段之间的IP列表
  2. 页面某一个元素跟随输入框输入内容动态变化
  3. win7 安装好redis 如何安装扩展
  4. centos7 php7 httpd
  5. ios 图片 相册 存储方式
  6. Socket网络编程--小小网盘程序(4)
  7. 使用Jsonp(JQ+C#)
  8. asp.net core MVC 过滤器之ExceptionFilter过滤器(一)
  9. @WebInitParam注解
  10. 端口报错listen eaddrinuse:::xxx