本文转自迅为论坛: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
键找自己的交叉编译器。 经过以上三步就会分别在chat
、pppd
、pppdump
、pppstats
中生成四个可执行文件chat
、pppd
、pppdump
、pppstats
,用于拨号。 3.
以下操作是在qt
文件系统,这里使用迅为提供的qt
文件系统:rootfs.tgz ①.解压rootfs.tgz
:tar -vxf rootfs.tgz ②.在etc
中新建文件夹ppp ③.把上面生成的四个可执行文件chat
、pppd
、pppdump
、pppstats
拷贝到ppp
里面。 4.
写配置文件①.在etc/ppp
下文件pap-secrets
:vim pap-secrets ②.输入# Secrets for authentication using PAP# client server secret IP addressescard * card *
在4G
信号在通信时候有一个密码的比对,密码对了就可以通信了。上面显示用户是card
密码是card ③.在etc/ppp
下新建文件夹peers
:mkdir peers
在peers
里面新建文件wcdma
:vim 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-connect
:vim wcdma-chat-connect
输入:ABORT "BUSY"ABORT "NO CARRIER"ABORT "NO DIALTONE"ABORT "ERROR"ABORT "NO ANSWER"TIMEOUT 120"" ATOK
ATZOK
AT+CGDCONT=1,"IP","3gnet",,0,0OK-AT-OK ATDT*99#CONNECT dc
在这里 OK
AT+CGDCONT=1,"IP","3gnet",,0,0 OK-AT-OK ATDT*99#
这两句话会根据移动联通或者是电信而变化,我这里用的是移动4G
。 ⑤.同样在peers
中新建wcdma-chat-disconnect
:vim wcdma-chat-disconnect
输入:ABORT "ERROR" ABORT "NO DIALTONE" SAY "INSending break to the modem
" ""k" ""+++ATH" SAY "
Good bye
"
致此就完成了大半部分可以先烧录进去试试。测试方法:开机后先输入:ifconfig eth0 down
将eth0
关掉,因为他会和模块有冲突。然后在/etc/ppp
下输入指令:pppd call wcdma&
使其一直在后台运行,如果移植成功将会打印一些信息,下面是截取的最后的部分: CHAP authentication succeededCHAP authentication succeededsent [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.64local IP address 10.211.219.99remote IP address 10.64.64.64primary DNS address 221.130.33.60secondary DNS address 221.130.33.52
在这里可以是一下ping ip
地址,这里注意要是可以平通的ip
地址,可先在电脑上试试能否ping
通,然后在开发板上ping
。到这里输入ifconfig
会有ppp0
出现。 但是到这里,即使ping
通了ip
,域名应该也是ping
不通的。因为有字数限制所有剩下的分另一个贴子。
一周热门 更多>