linux下GPRS模块ppp拨号上网
------------------------------------------------------------------------------------------------------------------------------
交叉编译器:arm-linux-gcc-4.5.4
Linux内核版本:Linux-3.0
主机操作系统:Centos 6.5
开发板:FL2440
GPRS:SIM900A
在开发SIM900模块之前,开发板已经加载了linux内核以及文件系统,并且开发板串口已经使能。并且一定要注意的是:要有一张没有欠费的电话卡!不要笑,这是个很严肃的问题!
------------------------------------------------------------------------------------------------------------------------------
所需源码:
ppp-2.4.4.tar.gz http://download.chinaunix.net/download.php?id=35208&ResourceID=8334
注:个人觉得这是一个比较典型又比较简单的移植问题。
大体步骤:添加内核ppp上网的支持-->编译ppp-2.4.4生成一些可执行文件(pppd, chat, pppdump, pppstats)放到开发板的/usr/sbin/目录下-->将可执行脚本放在开发板的指定位置(/etc/ppp/peers/gprs, /etc/ppp/chat-gprs-connect),并执行pppd命令。
一、添加内核支持
Linux-3.0以上的版本中,rt3070的驱动已经加入了内核源码中去了,本篇用的是Linux-3.0的内核,只需要在内核的make menuconfig中选择ppp上网的支持就可以了。
修改如下:
Device Drivers --->
[*] Network device support --->
<*> PPP (point-to-point protocol) support
[*] PPP multilink support (EXPERIMENTAL)
<*> PPP support for async serial ports
<*> PPP support for sync tty ports
<*> SLIP (serial line) support
[*] CSLIP compressed headers
二、编译ppp-2.4.4
# tar -xzf ppp-2.4.4.tar.gz
# ./configure
# make CC=/opt/buildroot-2012.08/arm920t/usr/bin/arm-linux-gcc (交叉编译器)
如果编译成功,则会在pppd, chat, pppdump, pppstats下分别生成可执行程序pppd, chat, pppdump, pppstats。将其拷贝到开发板的/usr/sbin目录下。
三、开发板的配置
# vi /etc/ppp/peers/gprs
# Usage: root>pppd call gprs #set seriral
/dev/ttyS1 # set baudrate # set flowdate
nocrtscts connect '/usr/sbin/chat -v -f /etc/ppp/gprs-connect-chat' #set debug ,send message to /var/log/messages
debug #To keep pppd on the terminal
nodetach #hide-password # Accept the peer's idea of our local IP address
ipcp-accept-local
# Accept the peer's idea of its (remote) IP address
ipcp-accept-remote #dial up connetion as the default route
defaultroute usepeerdns
# vi /etc/ppp/chat-gprs-connect
#Copyright (c) guanlei @qq.com
# This is second part of the ppp dial script. It will perform the connection
#
ABORT 'BUSY'
ABORT 'NO ANSWER'
ABORT 'NO CARRIER'
ABORT 'NO DIALTONE'
ABORT 'ERROR'
ABORT '\nRING\r\n\r\nRING\r'
TIMEOUT
'' \rAT
#set apn
OK AT+CGDCONT=,"IP","cmnet"
# ............
OK ATDT****# //这里要改成相应的运行商的设置
SAY " + requesting data connection\n"
CONNECT ''
SAY " + connected\n"

使能pppd:
# pppd call gprs & (&表示后台运行)
配置完就可以了,现在可以测试一下上网功能了:
# ping www.baidu.com
PING www.baidu.com (103.235.46.39): 56 data bytes
64 bytes from 103.235.46.39: seq=0 ttl=48 time=555.719 ms
64 bytes from 103.235.46.39: seq=1 ttl=48 time=273.481 ms
--- www.baidu.com ping statistics ---
3 packets transmitted, 2 packets received, 33% packet loss
round-trip min/avg/max = 273.481/414.600/555.719 ms
# ifconfig
ppp0 Link encap:Point-to-Point Protocol
inet addr:10.110.1.110 P-t-P:192.200.1.21 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:10 errors:0 dropped:0 overruns:0 frame:0
TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:686 (686.0 B) TX bytes:557 (557.0 B)
linux下GPRS模块ppp拨号上网的更多相关文章
- sim900GPRS模块ppp拨号上网
--------------------------------------------- 主机操作系统:Centos 6.5 交叉编译器环境:arm-linux-gcc-4.5.4 开发板平台: F ...
- Linux下EC20实现ppp拨号(转)
源: Linux下EC20实现ppp拨号 参考: 4g模块EC20+android6.0系统移植 OK6410开发板调试EC20通信模块 海思3531添加移远EC20 4g模块 将移远通信的EC20驱 ...
- 在ARM-linux上实现4G模块PPP拨号上网【转】
本文转载自:http://blog.csdn.net/zqixiao_09/article/details/52540887 在ARM平台上实现4G模块的PPP拨号上网,参考网上的资料和自己的理解,从 ...
- linux下GPRS模块的应用程序
---------------------------------------------------------------------------------------------------- ...
- linux下GPRS模块使用AT命令实现拨接电话,发中英文短信
开发板 :fl2440 cpu : s3c2440(arm9) 开发模块 :A7(GPRS/GPS) 远程登陆软件:PUTTY **** ...
- linux下利用mentohust校园拨号上网小记
mentohust下载地址 :http://code.google.com/p/mentohust/downloads/list 安装就不多说了,我是在kali系统下使用的,经测试只有32为的可以使用 ...
- GPRS模块在Linux平台上ppp拨号上网总结与心得
linux平台的ppp拨号上网,(注明:这里只谈命令行拨号,用linux就要习惯和熟练使用命令行) 在网上常见的有三种方式:1.使用智能的ppp拨号软件wvdial:参考案例:本博客的<使用wv ...
- 树莓派实现SIM868 ppp拨号上网
环境:raspbian-stretch(2018-06-27) 树莓派:3代B型 SIM868模块具有GPRS数据传输功能(2G网络),但是模块是通过AT指令控制的,在树莓派上用AT指令控制会非常不方 ...
- SIM7600CE TCP/IP连接与PPP拨号上网 4G上网
SIM7600CE联网测试分为两部分: 1.TCP/IP连接 2.PPP拨号上网 实验环境:ubuntu-meta 16.04 硬件:树莓派3B,SIM7600CE 上网卡:移动的NB-IOT物联网卡 ...
随机推荐
- Linux进程冻结技术【转】
转自:http://blog.csdn.net/zdy0_2004/article/details/50018843 http://www.wowotech.net/ 1 什么是进程冻结 进程冻结技术 ...
- strace 命令是一种强大的工具,它能够显示所有由用户空间程序发出的系统调用。
strace 命令是一种强大的工具,它能够显示所有由用户空间程序发出的系统调用. http://bbs.51cto.com/thread-1106891-1.html
- c#使用selenium截图,操作dom元素
using System; //添加selenium的引用 using OpenQA.Selenium.PhantomJS; using OpenQA.Selenium.Chrome; using O ...
- DELPHI用const来提高应用程序在多核多线程下的性能
来自:http://bbs.csdn.net/topics/330048800 --------------------------------------------------------- 我们 ...
- hdu 3768(spfa+暴力)
Shopping Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total S ...
- hdu 1423(LCS+LIS)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1423 好坑啊..还有公共串为0时的特殊判断,还有格式错误..看Discuss看知道除了最后一组测试数据 ...
- sybase ase 重启
sybase ase 重启 https://blog.csdn.net/davidmeng10/article/details/50344305 https://blog.csdn.net/wengy ...
- mimikatz-域密码获取神器
mimikatz是一个法国人写的轻量级调试器.出众之处在于其可以直接从 lsass.exe 里猎取windows处于active状态账号明文密码,非常强大. 在网上找了一些相关的文章自己的一点总结吧 ...
- 洛谷 P1583 魔法照片【二级结构体排序】
题目描述 一共有n(n≤20000)个人(以1--n编号)向佳佳要照片,而佳佳只能把照片给其中的k个人.佳佳按照与他们的关系好坏的程度给每个人赋予了一个初始权值W[i].然后将初始权值从大到小进行排序 ...
- RabbitMQ生产部署指南
像RabbitMQ这样的数据服务通常有许多可调参数.一些配置对开发有很大的意义,但并不适合生产,本指南旨在为此提供帮助 虚拟主机 例如,在单租户环境中,当您的RabbitMQ集群专门为生产中的单个系统 ...