6697|7

20

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

Qt移植移动4G模块内容分享-基于迅为i.MX6开发板 [复制链接]

迅为Qt移植移动4G模块第一部分
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 addresses
card   *       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
"" 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-disconnect:vim 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 ]
rcvd [IPCP ConfReq id=0x0]
sent [IPCP ConfNak id=0x0 ]
rcvd [IPCP ConfNak id=0x1 ]
sent [IPCP ConfReq id=0x2 ]
rcvd [IPCP ConfReq id=0x1]
sent [IPCP ConfAck id=0x1]
rcvd [IPCP ConfAck id=0x2 ]
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不通的。因为有字数限制所有剩下的部分我会跟帖。


最新回复

多谢分享内容,学习了  详情 回复 发表于 2018-1-23 10:20
点赞 关注

回复
举报

9

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
好板,跟帖,赞赞赞
 
 

回复

16

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
很强势,赞赞赞
 
 
 

回复

7

帖子

0

TA的资源

一粒金砂(初级)

4
 
板子很好,跟帖,赞赞赞
 
 
 

回复

12

帖子

0

TA的资源

一粒金砂(初级)

5
 
多谢楼主的教程,学习了
 
 
 

回复

20

帖子

0

TA的资源

一粒金砂(初级)

6
 

迅为Qt移植移动4G模块第二部分

5.ping不通域名一般是DNS没有设置对造成的。在etc下有一个文件resolv.conf 。这个文件是用来放DNS的。就是这个里面的域名没有设置对。然而在eth0的运行脚本里强制性的把这个文件复制为了192.168.1.1 。这就造成即便在这里文件里设置上正确的DNS,再开机后也会发现这个文件里已经是192.168.1.1了。这是因为eth0,是开机自启动的。
6.所以我们要在etc下新建一个文件resolv.conf_back:vim resolv.conf_back 输入DNS:
nameserver 202.99.160.68
nameserver 221.130.33.52
nameserver 221.130.33.60
nameserver 192.168.1.1
7.在etc下新建一个脚本文件ppp0:vim ppp0 输入:
#!/bin/sh
ifconfig eth0 down
cp /etc/resolv.conf_back /etc/resolv.conf
/etc/ppp/pppd call wcdma&
这里第一步是将eth0关掉,第二步将我们的DNS文件覆盖到resolv.conf上,第三步运行。开机后到etc下输入ppp0即可。
致此全部完成。
 
 
 

回复

27

帖子

0

TA的资源

一粒金砂(初级)

7
 
Qt移植内容,多谢分享
 
 
 

回复

20

帖子

0

TA的资源

一粒金砂(初级)

8
 
多谢分享内容,学习了
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表