您的位置:首页 > 运维架构 > Linux

嵌入式Linux下pppd通过GPRS拨号上网(CLM920模块)

2016-06-06 16:43 911 查看
一、makemenuconfig_public_linux选择pppd及相关组件



二、makemenuconfig_public_linux选择串口支持



三、make menuconfig加入pppd和chat工具

 


四、修改文件



五、加载驱动
   #modprobe usbserial vendor=0x05c6 product=0x9025

   # ls /dev –al



  ttyUSB0-> DIAG
  ttyUSB1-> ADB
 ttyUSB2-> AT
  ttyUSB3-> Modem
  ttyUSB4-> 暂不使用(使用NDIS 需将该口过滤)
六、建立库链接
ln -s libssl.so.1.0.1h libssl.so.1.0.0
ln -s libcrypto.so.1.0.1hlibcrypto.so.1.0.0
ln -s libcap.so.2.22 libpcap.so.1
七、加入脚本并启动
    (1) /etc/ppp/peers/clm920/gprs-on.sh  GPRS拨号脚本,内容如下:
       # this is a workaround for issue #651747
      PPPD_PID=
     echo "Starting pppd"
     pppdconnect 'chat -v  """AT" """AT+CGDCONT=1,"IP","3gnet"" """ATD*99# CONNECT"' /dev/ttyUSB3 115200 nodetach debug noauthdefaultroute usepeerdns            crtsctsusernull
password null -pc -ac $* &
    PPPD_EXIT=$?
    PPPD_PID=$!
   echo "pppd exited with$PPPD_EXIT"
 
   (2)/etc/ppp/ clm920/ gprs-off.sh  文件,内容如下:
      #PID=`ps -ef | grep-v grep | grep "$DEVICE" | grep "pppd" | awk '{ print $2;exit }'`
    PID=`ps  | grep -v grep | grep "pppd" | awk'{ print $1; exit }'`
    echo"$PID"
    iftest $PID; then
   kill-KILL $PID
   if [ ! "$?" = "0" ];then
         echo "ERROR: Terminated ppp linkto $DEVICE failed"
         exit 3
   fi
   echo "PPP link to $DEVICEterminated"
   exit 0
     fi
    echo"ERROR: PPP link is not active on $DEVICE"
    exit 2
        两个脚本写好后,执行/etc/ppp/peers/clm920/ gprs-on.sh,拨号上网。
        注:
     软件版本在[Jun 11 2015 12:00:32]及之后的域格模块,各制式下可统一使用chat 脚本中的ATDT*99#拨号。
           pppd 脚本中的用户名和密码是注册在电信2G、3G 时使用的,对其他网络无影响。
          需要建立/var/run/ppp目录
4)  测试连接Internet
    测试是否连接Internet,用如下指令:
    # ping 115.239.210.27
    测试是否ping 通baidu 的IP 地址。
    如果IP 地址能ping 通,而ping 域名不通,请设置dns地址,如下指令: 
   #ping
www.baidu.com
 


八、常用AT命令
    信号强度查询: AT+CSQ
    重启:         AT+CFUN=1,1
 
附:写串口echo XXX > /dev/ttyS0
读串口cat /dev/ttyS0
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: