zoukankan      html  css  js  c++  java
  • 3G模块(U6300)linux下拨号上网

    U6300支持linux、Android系列嵌入式系统。作为linux内核系统,系统均会自带驱动usbserial,就没有提供专门的U6300V的USB驱动,都是加载系统的usbserial以实现对U6300V模块USB的加载,关键是找到usbserial.ko这个驱动文件在系统中的目录,将PID和VID加载系统。

    U6300V模块默认的VID和PID是:VID_1C9E&PID_9603。

    1. Linux系统加载U6300V的USB驱动过程

    首先需要确认usbserial.ko这个驱动文件在当前应用端的Linux操作系统中。Linux 2.4.x和linux2.6.x系统均有usbserial.ko,Ubuntu部分版本没有usbserial.ko驱动文件,需要重新编译生成usbserial.ko驱动。

    以PC下linux2.6.x加载过程为例,加载驱动步骤:

    1)  硬件连接正常,模块可开机;

    2)  加载系统的USB文件系统,使用如下指令:

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

    3)  查看系统当前USB设备状态,使用如下指令:

    #cat /proc/bus/us/devices

     

     

             如果U6300V已经开机,USB准备好,将会看到Vendor=1c90 ProdID=9603 Rev=0.00这个返回,表明已识别了U6300V的USB端口。

             U6300V的3个串口也已经识别,如蓝色字体标识(顺序按端口号升序为Diag,AT,Modem)。

    4)  安装U6300V的USB驱动

    #modprobe usbserial vendor=0x1c93 product=0x9603

    5)  再查看系统当前USB设备状态

    #cat /proc/bus/usb/devices

    返回如下结果:

     

    表明U6300V的USB驱动已经安装成功,请留意每个串口usbserial_generic状态,不同于未加载(none)。

    6)  查看USB的端口,使用的指令是:

    #cd /dev

    #ls ttyUSB*

    如果端口已经识别,将会返回显示ttyUSB0~ttyUSB2三个设备。

    注:U6300V三个串口中AT(ttyUSB1),Modem(ttyUSB2)可以发AT命令,Diag(ttyUSB0)不能发AT指令。

    Diag:Diagnostic interface诊断、诊断程序。

    AT:Application interface

    2. Linux系统下AT交互

    Minicom配置端口/dev/ttyUSB1.

    输入AT指令(打开回显):

    ATE

    系统正常,返回结果:

    OK

    输入指令(查询版本信息):

    AT+LCTSW

    返回U6300V的Firmware版本信息:

    SoftwareVersion:LWA0003.2.3_MG31

    InnerVersion:LWA003_240085_6.0.4W1011_EFS1.0

    OK

    输入如下指令(查询信号):

    AT+CSQ

    将会得到如下信号强度和误码率信息:

    +CSQ:20,74

    OK

    输入如下指令(注册状态):

    AT+CREG?

    将会得到如下注册信息:

    +CREG:0,1

    OK

    输入如下指令(网络运营商信息):

    AT+COPS?

    将会得到如下运营商信息(不同运营商返回字段不同。以中国联通USIMka为例):

    +COPS:0,0”CHN-CUGSM”,2

    OK

    3. Linux系统U6300V拨号上网过程

    1)  重复USB加载过程和AT交互流程。确保U6300V正确注册到网络,信号强度CSQ返回的第一个参数在13以上;

    2)  确保linux系统带有pppd应用程序,如果系统没有pppd,请安装kppp,里面带有pppd应用程序;

    3)  建立拨号配置文件/etc/ppp/chat/gprs-connect-chat----脚本内容可不同

    在其中加入如下配置:

    TIMEOUT            15

    ABORT                 “DELAYED”

    ABORT                 “BUSY”

    ABORT                 “ERROR”

    ABORT                “NO DIALTONE”

    TIMEOUT            40

    “                             AT

    OK                         ATS0=0

    OK                         ATE0V1

    OK                         AT+CGDCONT=1,”IP”,”3GNET”

    OK                         ATDT*99***1#

    CONNECT            “

    注:插入不同运营商的卡,AT+CGDCONT=1,”IP”,”3GNET”最后一个参数不同,请咨询当地的运营商获取APN。

    4)  修改pppd的配置文件/etc/ppp/options   (可省略)

    找到auth字样的行然后将其改成#auth,这样在拨号过程中就不会提示需要身份验证;

    5)  建立拨号配置文件/etc/ppp/peer/gprs-----脚本内容可不同

    在其中加入配置如下(必须指定Modem口是ttyUSB2):

    #Usage:root>pppd call gprs

    /dev/ttyUSB2

    9600

    crtscts

    modem

    #noauth

    debug

    nodetach

    #hide-password

    usepeerdns

    noipdefault

    defaultroute

    user “3gnet”

    0.0.0.0:0.0.0.0

    ipcp-accept-local

    ipcp-accept-remote

    #lcp-echo-failure 12

    #lcp-echo-interval 3

    #noccp

    #novj

    #novjccomp

    #persist

    connect ‘/usr/sbin/chat –s –v –f /etc/ppp/chat/gprs-connect-chat’

    6)  拨号上网,使用如下指令:

    #pppd call gprs

    #ifconfig

    如果出现如下回显,多出一个ppp0网口,说明拨号已经成功:

     

    7)  测试连接Internet

    #ping 119.75.217.56

    测试是否ping通baidu的IP地址。如果ping不通,需要给本机加条路由,使用如下指令:

    #route add default gw 10.64.64.64

    注:10.64.64.64:运营商的ip地址,即上述红色字体部分。

    或如下命令,从而不用知道IP地址:

    #route del default

    #route add -net 0.0.0.0 ppp0

    如果IP地址能ping通,而ping域名不通,需要添加DNS到/etc/resolv.conf。

    8)  linux断开网路(必须kill当前的pppd,才能进行下一次pppd),需要kill pppd进程(这个过程需要一段时间,中间可能无响应),使用如下指令:

    #killall pppd

    注:切换波特率的指令是:

    AT+IPR=<value>

    <value>:

    300,600,1200,2400,4800,9600,19200,38400,57600,115200,230400

    注意:默认的波特率是115200,且Data Bits=8,Parity=None,Stop Bits=1,Flow Control=None.

  • 相关阅读:
    HDU 3460 Ancient Printer(字典树)
    HDU 1671 Phone List (字典树)
    HDU 1251 统计难题(字典树,map)
    英语学习的几个误区
    数据结构学习(一)逻辑结构和存储结构
    开始学习git
    Flex4学习笔记2--代码保存在单独的文件中
    Flex4学习笔记1---基本语法
    修改Tomcat的网页端口和指向路径
    JSP创建用户验证的实例
  • 原文地址:https://www.cnblogs.com/embedded-linux/p/5258388.html
Copyright © 2011-2022 走看看