|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
EC20 模块封装成标准的 PCIe 接口,和开发板主要通过 usb 通讯。 此次提供的文件有pppd 源码、编译好的 chat 和 pppd 工具、wcdma,wcdma_back,wcdma-chat-connect、wcdma-chat-disconnect 以及要在文档最后使用的 pppd_conf.sh 脚本,如下图所示。
9 b. r$ O; v$ k: x% r. `![]()
$ k, `' e" a' ?6 V+ Y* g在进行编译之前要先修改编译器为 ARM-2009q3 编译器,如何设置编译器参见手册 5.2.2“交叉编译工具的安装”。另外为了避免使用环境变量设置编译器而可能出现的问题,文档中大部分编译是使用编译器的绝对路径,用户也应先找到自己编译器的绝对路径待用。下图是本次编译使用的编译器以及编译器压缩包。3 J: i; l- S* p0 M0 P3 H" I0 Y7 N
1 V+ s9 `+ o8 z m
由上图可知该编译器的绝对路径为“/usr/local/arm/arm-2009q3/bin/ arm-none-
. x! G: t6 L5 Ilinux-gnueabi-gcc”。' k# ~- r% G+ z2 e; N) x+ P
1.驱动支持& f% P/ E) x; O+ B. X" e8 y
首先需要对 Linux 内核驱动做一定的修改,使操作系统能够支持 EC20,首先增加 VID 和" Y: W \1 r1 t% \+ N; M
PID,即 usb 的厂商 ID 和设备 ID。在内核源码中的 kernel /drivers/usb/serial/option.c 文5 v# E' Y6 o2 n; C
件里添加如下两项内容。( K- P% J8 _( E, E
#define EC20_VID 0x1E0E
$ ], L6 L# F" x5 [% q#define EC20_PID 0x90011 c* F( n: Y2 j- d
如下图所示。
0 R. T$ f1 F9 c![]()
; ?2 |) p4 J! q$ v然后搜索 option_ids,在 option_ids 列表中增加以下内容。% B# ?$ L1 \8 O3 U! Z6 f# O
{ USB_DEVICE(EC20_VID, EC20_PID) },; K) z* a& T: P6 ?' I
如下图所示。
/ H# W9 i/ m9 \/ N* b( E& U $ L4 H0 P; S1 K; g
回到 kernel 目录,配置 make menuconfig 以下两项。Device Drivers →5 Z3 \4 b9 _7 |2 m, `2 ^
USB Support → y- j" N6 r7 E0 U1 p7 _
USB Serial Converter support →
* m0 X- y5 o& hUSB driver for GSM and CDMA modems
3 v0 \4 E& w. O, ]& u![]()
, ?: R7 L$ n: C8 v( Y0 w, I以及在 Device Drivers > Network device support 的<*> PPP***全部选中
8 ?' y. m( A( X9 m, q, U4 { ' j! X# |6 M, m( ]5 F2 N n
然后编译内核,并烧写到开发板。
, L8 e( l$ g+ v2. 编译 ppp 拨号工具: e; d9 D: Q! Z8 Y) h( ?
将提供的源码解压到 Ubuntu,进入解压的文件夹,如下图所示。
3 @; E8 z: C4 O) Q& j/ t![]()
% O A7 e: D6 ]* O/ f$ h8 I" ~/ Y使用“./configure”命令配置源码,如下图所示。
3 j) {# Z$ ^ O# P' D( G) j0 F! N6 x# @![]()
0 c7 m9 R" ^" e$ \( A使用命令“make CC=/ usr/local/arm/arm-2009q3/bin/ arm-none-linux-gnueabi-gcc”编译源码,注意这里使用编译器的绝对路径。
" `% q& _# o1 @# X9 j![]()
* m, c" j6 v- h7 g, @/ k# {编译到此完成,可以看到在 pppd 文件夹生成了 pppd 工具,在 chat 文件夹生成了 chat工具,如下图所示。
Q2 ~0 i* J% H ! w; a5 m% l- O2 R
3.拷贝工具2 d m# c) h) O$ L) P' I
将上面步骤中生成的 pppd 和 chat 工具下载到开发板/usr/sbin/目录下。将压缩包提供的脚本 wcdma,wcdma-chat-connect,wcdma-chat-disconnect 拷贝
; p! k- l; z9 H$ ]' Q" o到开发板的/etc/ppp/peers/目录下。' p% k: H4 Y1 T8 x5 Q3 ?" Q0 k- Q! ^
最后在开发板执行以下指令,建立软连接。ln /lib/ld-linux-armhf.so.3 /lib/ld-linux.so.3" b4 {) ^) N% o( l' r
4.测试
7 C) C* W: G: }8 f+ q首先将天线安装到开发板上,如下图所示。+ k( Z) P% y; o' b
6 B! n; ~# X2 I/ v+ M- M![]()
- B4 s* Z3 s: S' H \- n插入手机卡后重启开发板,并将脚本 pppd_conf.sh 拷贝到开发板,然后使用用命令“./pppd_conf.sh &”运行脚本,运行结果如下图所示5 O) O3 v: Q1 G
2 u3 n4 U# n; ?7 C0 J2 J4 @
![]()
" V( d, J4 G# B; _- t8 _使用命令“ping www.baidu.com -c 4 -I ppp0 ”测试,可以看到连网成功(由于 4G连接需要搜索信号,所以在信号较差的区域需等待一段时间,才能上网)。
3 X" [% P0 Q& K: a6 q/ z0 L' K7 X+ I9 L6 g: }
![]()
: v7 m+ U4 G% n2 \移植到此完成。
$ Y$ x( ]( ~- H; }' @# n![]()
1 t1 `: e& n0 L
s, N2 a4 j n0 D; p |
|