SIM900B GPRS模块 ————PPP拨号上网

1、编辑内核,使其支持PPP拨号上网

make menuconfig

Device Drivers ---> Network device 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                             │ │  
  │ │    <*>     PPP MPPE compression (encryption) (EXPERIMENTAL)         │ │  
  │ │    <*>     PPP over Ethernet (EXPERIMENTAL)                        │ │  

 │ │    <*>   PPP (point-to-point protocol) support                      │ │  

2、下载ppp-2.4.4.tar.gz


3、解压ppp-2.4.4.tar.gz文件

[huangan@localhost 3rdparty]$ tar -xzf ppp-2.4.4.tar.gz 
[huangan@localhost ppp-2.4.4]$ ls 
Changes-2.3  etc.ppp   modules   README          README.MSCHAP80  scripts
chat         FAQ       PLUGINS   README.cbcp     README.MSCHAP81  SETUP
common       include   pppd      README.eap-srp  README.pppoe     solaris
configure    linux     pppdump   README.linux    README.pwfd
contrib      Makefile  pppstats  README.MPPE     README.sol2
[huangan@localhost ppp-2.4.4]$ ./configure
。。。省略过程
[huangan@localhost ppp-2.4.4]$ make CC=/opt/buildroot-2012.08/arm920t/usr/bin/arm-linux-gcc 
。。。省略过程

编译结束后,会在chat 、pppd、pppdump、pppstats 四个目录下生成四个可执行文件,将他们移植到开发板上的\usr\sbin 路径下并给他们777的权限即可

4、制作脚本文件

vi /etc/ppp/peers/gprs


#set serialPort
/dev/ttyS1


#set buadrate
115200

#set flowdate
nocrtscts 

#to keep ppp on terminal
nodetach  

# 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
noauth
usepeerdns
noipdefault
defaultroute
user itlanger


connect '/usr/sbin/chat -s -v -f /etc/ppp/chat-gprs-connect'

vi  /etc/ppp/chat-gprs-connect


ABORT '\nBUSY\r'
ABORT '\nERROR\r'
ABORT '\nNO ANSWER\r'
ABORT '\nNO CARRIER\r'
ABORT '\nNO DIALTONE\r'


TIMEOUT 5
'' AT
OK ATE0
SAY "Press CTRL-C to break the connection process.\n"
OK 'AT+CGDCONT=1,"IP","CMNET"'
OK ATDT*99***1#       //这里要改成自己的运营商号码。。我的这个号码是移动的

SAY "Waiting for connect...\n"
CONNECT ''
SAY "Connect Success!\n"


5、开始测试

:>pppd call gprs&      (PS:& 是让这条命令在后台执行,这样我们才好去执行其他验证命令)
:>ping www.baidu.com

假如出现能ping通DNS 4.2.2.2  确ping不通百度 ,那就是DNS的问题
解决办法:vim /etc/resolv.conf
nameserver  4.2.2.2
nameserver 8.8.8.8
OK



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
开发工具:keil uVision3 下载:STC-ISP V35.exe 实现单片机控制GPRS模块拨号 并且用1602液晶简单显示 test-iic.c 文件和DAIL.C文件是相互独立的, test-iic.c 文件用来测试把数据写入E2PROM test-iic.c 文件 是对IIC设备读写的程序 时钟信号scl 连接TX-1C开发板(STC52RC单片机)的P2^0口 数据信号sda(广义数据 可以使地址信号 也可以使真正的数据) DAIL.C文件 TX-1C (STC52RC单片机) 串口连接GPRS模块 液晶显示器 1 液晶显示welcom!欢迎界面 2 扫描矩阵键盘(由于液晶的RS信号和矩阵键盘的一个引脚冲突 因此4*4键盘的第一列不用 按下会对液晶的显示产生影响) 如果按下第一个键 则显示 "ready to dail" 此时将从 VCC连接到P10---P14 如果哪个引脚有高电平则拨打相应号码 程序开始时先判断0xa0 器件的100 101 102 103 104 五个存储单元 依次来判断号码是否被修改 如果被修改了则从1 20 39 58 77五个存储单元各读取16个数据给每个 号码数组 如果没有修改则从号码备份数组读入 3 按第二个键准备修改号码 显示 ready to modify ,modify=0,please add it. 此时按第一个键则退出不修改 。 如果接着按第二个键则对modify进行加 加到第几个后再按第一个键 显示modify值 显示input NO.* ,按下号码 (只能是11位的号码) (液晶显示不准确 除第一次外会重复显示上一次的值) 按下够11位后液晶显示修改后的号码 然后显示 modify ok! 回到主界面 。 如果在修改号码的过程中按下第二个键则放弃修改 回到主界面 。 4 播出号码后按第一个键挂机 利用的是GPRS模块的AT命令 缺点:修改号码的时候液晶显示不准确 尚待完善
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值