[转载]迅为4418开发板Qt移植移动4G模块第一部分

 

 

 

本文转自迅为论坛:http://topeetboard.com

 

平台:iTOP-4418开发板

 

1.首先要配置内核,这个一步和Android系统移植3G或者4G模块是一样的。一般模块的厂家会提供移植文档,按照文档配置内核的ppp协议,USB转串,wcdma等,添加PID VID即可。这一步严格按照模块内核修改就行。

这里主要分析qt文件系统的修改,对内核不做过多的分析。

配置好的内核在开机后可以在dev下找到ttyUSB0-3的设备节点。

 

2.准备工作;下载ppp-2.4.4.tar.gz,这个我会上传。

 

①.解压:tar -vxf ppp-2.4.4.tar.gz

 

②.运行configure,生成Makefile./configure

 

③.编译输入命令:make CC=arm-none-linux-gnueabi-gcc-4.4.1

这里说明一下,CC=arm-none-linux-gnueabi-gcc-4.4.1是指明编译器,这里可以输入arm然后双按tab键找自己的交叉编译器。

 

经过以上三步就会分别在chatpppdpppdumppppstats中生成四个可执行文件chatpppdpppdumppppstats ,用于拨号。

 

3.以下操作是在qt文件系统,这里使用迅为提供的qt文件系统:rootfs.tgz

 

①.解压rootfs.tgztar -vxf rootfs.tgz

 

②.在etc中新建文件夹ppp

 

③.把上面生成的四个可执行文件chatpppdpppdumppppstats拷贝到ppp里面。

 

4.写配置文件

①.在etc/ppp下文件pap-secretsvim pap-secrets

 

②.输入

# Secrets for authentication using PAP

# client        server  secret                  IP addresses

card   *       card   *

 

4G信号在通信时候有一个密码的比对,密码对了就可以通信了。上面显示用户是card 密码是card

 

③.在etc/ppp下新建文件夹peersmkdir peers

peers里面新建文件wcdmavim wcdma

输入:

 

# /etc/ppp/peers/wcdma

# This is pppd script for China liantong

# Usage: root>pppd call wcdma

 

hide-password

 

noauth

 

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

 

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

 

debug

 

/dev/ttyUSB2

 

115200

 

defaultroute

 

noipdefault

 

novj

 

novjccomp

 

noccp

 

ipcp-accept-local

 

ipcp-accept-remote

 

local

 

lock

 

dump

 

nodetach

 

user "card"

 

password "card"

 

crtscts

 

remotename 3gppp

 

ipparam 3gppp

 

usepeerdns

 

这里需要注意的是/dev/ttyUSB2,这句话要根据自己的情况而定,4G模块手册上应该会有些那个是用于AT指令,ppp拨号的。看自己的手册决定是不是ttyUSB2

另外:

user "card"

password "card"

这就对应了上面的用户和密码。

 

④.同样在peers中新建文件wcdma-chat-connectvim wcdma-chat-connect 输入:

ABORT "BUSY"

ABORT "NO CARRIER"

ABORT "NO DIALTONE"

ABORT "ERROR"

ABORT "NO ANSWER"

TIMEOUT 120

"" AT

OK \rATZ

OK \rAT+CGDCONT=1,"IP","3gnet",,0,0

OK-AT-OK ATDT*99#

CONNECT \d\c

 

在这里 OK \rAT+CGDCONT=1,"IP","3gnet",,0,0

       OK-AT-OK ATDT*99#

这两句话会根据移动联通或者是电信而变化,我这里用的是移动4G

 

⑤.同样在peers中新建wcdma-chat-disconnectvim wcdma-chat-disconnect 输入:

ABORT "ERROR"

 

ABORT "NO DIALTONE"

 

SAY "INSending break to the modem\n"

 

""\k"

 

""+++ATH"

 

SAY "\nGood bye\n"

致此就完成了大半部分可以先烧录进去试试。

测试方法:

开机后先输入:ifconfig eth0 down eth0关掉,因为他会和模块有冲突。

然后在/etc/ppp下输入指令:

pppd call wcdma&

使其一直在后台运行,如果移植成功将会打印一些信息,下面是截取的最后的部分:

 

CHAP authentication succeeded

CHAP authentication succeeded

sent [IPCP ConfReq id=0x1 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]

rcvd [IPCP ConfReq id=0x0]

sent [IPCP ConfNak id=0x0 <addr 0.0.0.0>]

rcvd [IPCP ConfNak id=0x1 <addr 10.211.219.99> <ms-dns1 221.130.33.60> <ms-dns3 221.130.33.52>]

sent [IPCP ConfReq id=0x2 <addr 10.211.219.99> <ms-dns1 221.130.33.60> <ms-dns3 221.130.33.52>]

rcvd [IPCP ConfReq id=0x1]

sent [IPCP ConfAck id=0x1]

rcvd [IPCP ConfAck id=0x2 <addr 10.211.219.99> <ms-dns1 221.130.33.60> <ms-dns3 221.130.33.52>]

Could not determine remote IP address: defaulting to 10.64.64.64

local  IP address 10.211.219.99

remote IP address 10.64.64.64

primary   DNS address 221.130.33.60

secondary DNS address 221.130.33.52

 

在这里可以是一下ping  ip地址,这里注意要是可以平通的ip地址,可先在电脑上试试能否ping通,然后在开发板上ping 。到这里输入ifconfig会有ppp0出现。

 

但是到这里,即使ping通了ip,域名应该也是ping不通的。因为有字数限制所有剩下的分另一个贴子。

 

posted on 2017-03-06 11:46  topeet  阅读(555)  评论(0编辑  收藏  举报

导航