|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
通过配置 linux 内核驱动,在文件系统移植 ppp 拨号工具移植 EC20 到 Qt 系统和最小 linux 系统,移植中需要的软件包和文档在网盘资料“iTOP4418 开发板资料汇总(不含光盘内容)\09_iTOP-4418 开发板最小, b" y( _* M: l" \9 Z, v l
linux_Qt_Ubuntu 扩展文档\23_章节_移植 EC20”下载。8 [' p7 y: E9 H+ [' l. h; q
EC20 模块封装成标准的 PCIe 接口,和开发板主要通过 usb 通讯。此次提供的文件有 pppd 源码、编译好的 chat 和 pppd 工具、wcdma,wcdma_back,wcdma-chatconnect、wcdma-chat-disconnect 以及要在文档最后使用的 pppd_conf.sh 脚本,如下图 所示7 Y+ q" H) [7 L5 l
" u9 L. r) }5 R+ ^9 [9 D0 m0 [
在进行编译之前要先修改编译器为 ARM-2009q3 编译器,如何设置编译器参见手册 5.2.2“交叉编译工具的安装”。另外为了避免使用环境变量设置编译器而可能出现的问题,文档中大部分编译是使用编译器的绝对路径,用户也应先找到自己编译器的绝对路径待用。下图是本次编译使用的编译器以及编译器压缩包。1 X2 t+ p+ c9 @( L
![]()
# P! V1 A5 o6 f) a7 `由上图可知该编译器的绝对路径为“/usr/local/arm/arm-2009q3/bin/ arm-nonelinux-gnueabi-gcc”。
* b! _4 Z6 t! s0 i# D4 h1 D63.1 驱动支持4 E1 `6 G6 b, G G2 d1 L; L
首先需要对 Linux 内核驱动做一定的修改,使操作系统能够支持 EC20,首先增加 VID 和 PID,即 usb的厂商 ID 和设备 ID。在内核源码中的 kernel /drivers/usb/serial/option.c 文件里添加如下两项内容
5 M2 T- h9 J0 v2 Q& r3 H$ L$ g! A#define EC20_VID 0x1E0E
0 J( V$ x' ~3 w4 I: E; _#define EC20_PID 0x9001
7 B2 X" R7 t- c# u& U如下图
1 a$ u+ M& V; ?: m0 N. q![]()
) I" j( y. W. [9 C然后搜索 option_ids,在 option_ids 列表中增加以下内容。 ^' W" H- ~* {3 g! F9 g7 ?! F
{ USB_DEVICE(EC20_VID, EC20_PID) },
9 w# k! S$ | {$ ^, c9 u' J8 Z( z+ W% n如下图
. C) R" \" [0 l- J. E" O4 h( s . @$ J: G, |2 K: F* Y
回到 kernel 目录,配置 make menuconfig 以下两项。Device Drivers →USB Support →USB Serial Converter support →USB driver for GSM and CDMA modems
# M% f" c8 B# v) m# | o+ h( M: v0 ^4 D) t5 ^0 Z
以及在 Device Drivers > Network device support 的<*> PPP***全部选中) y. U. J+ c4 M7 w- p5 z. J1 C
![]()
; H+ K, w# H. D. p然后编译内核,并烧写到开发板。4 W: |9 F4 U1 a7 d; K9 v" K! i
63.2 编译 ppp 拨号工具' l! ~ p. y" F% `7 |
将提供的源码解压到 Ubuntu,进入解压的文件夹,如下图所示。3 z7 l$ v* D9 g/ B* ~
# \* \) S# k$ h1 m' ^ E
使用“./configure”命令配置源码,如下图所示。
: ?, N5 ?* d. v: @( h![]()
. `4 m- C1 s( H' Q使用命令“make CC=/ usr/local/arm/arm-2009q3/bin/ arm-none-linux-gnueabigcc”编译源码,注意这里使用编译器的绝对路径。2 N0 M ~8 @; F! R; Q J
![]()
" z5 h3 K Y! s S. ~" f9 z编译到此完成,可以看到在 pppd 文件夹生成了 pppd 工具,在 chat 文件夹生成了 chat 工具,如下图所示。
) ~0 u1 x( A: \' t & M/ S* N; `1 A' `& P
63.3 拷贝工具5 f. m% \' ?! o/ ~$ U( S
将上面步骤中生成的 pppd 和 chat 工具下载到开发板/usr/sbin/目录下。将压缩包提供的脚本 wcdma,
* a, B0 a, W V, t5 y" dwcdma-chat-connect,wcdma-chat-disconnect 拷贝到开发板的/etc/ppp/peers/目录下。5 |9 A# l1 A0 g9 v& g3 ~# [( P
63.4 测试
5 I% V" n. f: B' p! F% |首先将天线安装到开发板上,如下图所示。" H' ?; l; @2 P# x/ A# p% X' q
: v* S5 W5 S" d
插入手机卡后重启开发板,并将脚本 pppd_conf.sh 拷贝到开发板,然后使用用命令“./pppd_conf.sh &”运行脚本,运行结果如下图所示。
# P8 M4 B6 R D" V5 U! ^' Y+ c" o![]()
: a! I% d2 B6 P* w5 q0 K, z z% Z使用命令“ping -c 4 www.baidu.com &”测试,可以看到连网成功(由于 4G 连接需要搜索信号,所以在信号较差的区域需等待一段时间,才能上网)
( v& I9 {/ R6 Y, G9 @ V9 R9 o8 i% I$ w, x# y
移植到此完成。7 T8 j" [& o8 g6 r2 K) d" G
$ g2 L- l. W1 m$ A% A+ C
|
|