SIM5360E模块ppp拨号上网

愿你有清风与烈酒,愿有人是你的归途。


主机操作系统:Centos 6.7
交叉编译器环境:arm-linux-gcc-4.5.4 (可通过命令/opt/buildroot-2012.08/arm920t/usr/bin/arm-linux-gcc -v查询)
开发板平台: fl2440
Linux内核版本: linux-3.0 .54
模块:sim5360e


该模块支持WCDMA/GSM,即联通2G/3G,移动2G。本文用的是联通卡,移动卡因为不支持3G,所以对于本模块来说,在信号较差的地方很难拨号成功。

  • 联通2G网络制式是GSM制式,GSM制式是目前全球范围内应用最广的2G制式,超过80%的运营商的2G网络选择GSM制式。
  • 联通3G网络制式为WCDMA,WCDMAM制式是目前全球范围内应用最广的3G制式,超过80%的运营商的3G网络选择WCDMA制式。
  • 移动的2G网络也是GSM,不过移动的3G网络制式是TD-SCDMA,TD-SCDMA制式的3G网络目前全世界就移动一家运营商在用。
  • 电信的2G制式是CDMA,在美洲和日韩地区比较受欢迎,电信的3G制式是CDMA2000,这个制式也是在美洲比较受欢迎。

一、配置内核:

添加USB支持:

Device Drivers  ---> 
     [*] USB support  --->
          <*>   USB Serial Converter support  ---> 
               <*>   USB driver for GSM and CDMA modems 

添加PPP相关支持:

Device Drivers  --->
     [*] Network device support  --->
         <*>   PPP (point-to-point protocol) support
        [*]PPP multilink support (EXPERIMENTAL)
        [*]PPP filtering
        <*>PPP support for async serial ports
        <*>PPP support for sync tty ports
        <*>PPP Deflate compression
        <*>PPP BSD-Compress compression

配置成功后,将内核下载到开发板,插上模块打印如下信息:
这里写图片描述


二、移植pppd以及chat

1、下载解压软件包,并生成Makefile

[yangni@yangni 3G]$ wget https://coding.net/u/sfantree/p/OSS2/git/raw/master/source/ppp-2.4.5.tar.gz
[yangni@yangni 3G]$ tar zxvf ppp-2.4.5.tar.gz
[yangni@yangni 3G]$ cd ppp-2.4.5
[yangni@yangni ppp-2.4.5]$ ./configure     //生成Makefile

2、配置chat:

(1)修改chat.c

[yangni@yangni ppp-2.4.5]$cd chat

[yangni@yangni chat]$ vim chat.c

添加如下两行:

(2)修改Makefile
Makefile的修改只需要添加自己交叉编译器路径就可以了。

[yangni@yangni chat]$ vim Makefile

这里写图片描述


3、配置PPP

(1)修改auth.c
找到相应的行,把它注释掉:

[yangni@yangni chat]$ cd ../pppd

[yangni@yangni pppd]$ vim auth.c

这里写图片描述

(2)修改Makefile
同样的只需要将gcc改为交叉编译器的gcc

[yangni@yangni pppd]$ vim Makefile

这里写图片描述

4、make生成pppd和chat工具:

[yangni@yangni pppd]$ cd ..

[yangni@yangni ppp-2.4.5]$ make

这里写图片描述

然后将pppd以及chat拷贝到开发板usr/sbin或者/bin目录下。


三、连接开发板并写拨号相关文件:

1、查看接口:

用ls命令可以看到/dev目录下多了五个串口设备分别为ttyUSB0,ttyUSB1,ttyUSB2,ttyUSB3,ttyUSB4。并且可以看到ttyUSB2作为AT命令的接口,所以接下来我们使用AT命令测试3G模块是否正常工作的时候只能监听ttyUSB2。

> ls dev/ttyUSB*
dev/ttyUSB0    dev/ttyUSB1   dev/ttyUSB2  dev/ttyUSB3  dev/ttyUSB4

这里写图片描述


2、用microcom测试:

首先我们需要先查看我们的卡是否装好以及是否有信号(ttyUSB2是AT命令接口)。

microcom -s 115200 ttyUSB2

这里写图片描述
信号为2,有点弱。可以试试拨号看看。

其他常用指令:

a       重复上次命令
ate0    关闭回显
ate1    开启回显
at+cgmm     可查看模块名
at+cgmr     可查看模块版本信息
at+cgmi     可查看模块制造商
at+csq      可查看信号强度
at+cpin?    查看SIM卡是否到位
at+creg?    查看SIM卡是否注册上,网络注册的情况。(注册上后才可以拨号)
at+cops?    查看SIM卡运营商

3、ppp拨号获取IP:

在开发板的/etc目录新建/ppp/peers目录并在peers目录下创建如下两个配置文件
(1)创建wcdma文件

>mkdir -p /etc/ppp/peers
>cd /etc/ppp/peers
>vi wcdma

#set debug ,send message to /var/log/messages
debug     #输出调试信息

#To keep pppd on the terminal
nodetach    #默认为后台运行,禁止后台运行
lock        #创建一个锁定文件,其他程序在发现存在这个文件后,就能得知相应的串口已经被使用

#set seriral
/dev/ttyUSB3

# set baudrate
115200
user "yangni"   #如果需要chap或pap认证,则输入该用户名和密码
password "qicheng777"

# set flowrate
crtscts     #接口带硬件流控
show-password
usepeerdns
noauth      #不设置认证
noipdefault     #禁用默认IP
novj    #禁用TCP压缩
novjccomp
noccp

# Accept the peer's idea of our local IP address
ipcp-accept-local    #选定该选项, pppd 将接受拨入方提供的ip地址

# 选定该选项, pppd 将接受拨入方自己的ip地址
ipcp-accept-remote

connect '/usr/sbin/chat -s -v -f /etc/ppp/peers/wcdma-chat-connect'
disconnect '/usr/sbin/chat -s -v -f /etc/ppp/peers/wcdma-chat-disconnect'

如果没有给定本地ip, pppd 将使用主机的第一个ip地址; 如果指定了”noipdefault” 选项, pppd将使用拨入方提供的ip地址

connect 加上参数-v 告诉 chat命令将其所有的输出/入拷贝到系统记录里(通常是 /var/log/messages)。
这里写图片描述

(2)创建wcdma-chat-connect 脚本:AT指令的发送和接收脚本

>cd /etc/ppp/peers
vi wcdma-chat-connect

ABORT 'NO CARRIER'
ABORT 'ERROR'
ABORT 'NO DIALTONE'
ABORT 'BUSY'
ABORT 'NO ANSWER'
'' \rAT #发送AT命令
OK \rATZ #等待接收OK,接收到OK发送ATZ命令
OK \rAT+CGDCONT=1,"IP","3gnet",,0,0#接收到OK,发送AT+CGDCONT=1...命令
#下面一行是联通的拨号设置,不同的运营商拨号方式有所不同
OK-AT-OK ATDT*99# #拨号
CONNECT \d\c

这里写图片描述

(3)出错处理wcdma-chat-disconnect 脚本

vi wcdma-chat-disconnect

ABORT "ERROR"
ABORT "NO DIALTONE"
SAY "\nSending break to the modem\n"
'' "\K"
'' "+++ATH"
SAY "\nGoodbay\n"

所以peers该目录下应该有三个文件:

>cd /etc/ppp/peers
>ls
- wcdma-chat-connect
- wcdma
- wcdma-chat-disconnect


四、拨号上网:

>pppd call wcdma&

这里写图片描述
出现上面原因是因为信号太弱了。然后插上GPRS天线后,信号加强了很多。因为实验室本身这里信号不好,移动卡更是GG,信号有了也不行,所以你要先保证你的卡在当前环境能上网,所以换了张联通的。

换了张联通卡,接上GPRS天线后:
这里写图片描述


再来一次:

>pppd call wcdma&

这里写图片描述
看到获取到IP以后就是拨号成功了,然后会在出现一个ppp0的网络接口


>ifconfig

这里写图片描述


配置好默认网关就可以连网了:

>route add default gw 10.64.64.64 #配置默认网关
ping一下DNS
>ping 114.114.114.114

这里写图片描述


但现在还不能做域名解析,还要做DNS相关配置。

>vi /etc/resolv.conf 
nameserver 114.114.114.114
nameserver 8.8.8.8
> mv /etc/resolv.conf /etc/resolv.conf.bak
> ln -s /etc/ppp/resolv.conf /etc/resolv.conf  #建立一个软链接,链接到全局DNS
> ping qq.com        #现在可以成功解析出域名了

这里写图片描述

参考文章:http://blog.csdn.net/edroid1530/article/details/72903229
http://blog.csdn.net/baweiyaoji/article/details/72810410

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值