EC20 模塊封裝成標準的 PCIe 接口,和開發板主要通過 usb 通訊。 此次提供的文件有pppd 源碼、編譯好的 chat 和 pppd 工具、wcdma,wcdma_back,wcdma-chat-connect、wcdma-chat-disconnect 以及要在文檔最后使用的 pppd_conf.sh 腳本,如下圖所示。 在進行編譯之前要先修改編譯器為 arm-2009q3 編譯器,如何設置編譯器參見手冊 5.2.2“交叉編譯工具的安裝”。另外為了避免使用環境變量設置編譯器而可能出現的問題,文檔中大部分編譯是使用編譯器的絕對路徑,用戶也應先找到自己編譯器的絕對路徑待用。下圖是本次編譯使用的編譯器以及編譯器壓縮包。 由上圖可知該編譯器的絕對路徑為“/usr/local/arm/arm-2009q3/bin/ arm-none- linux-gnueabi-gcc”。 1.驅動支持 首先需要對 Linux 內核驅動做一定的修改,使操作系統能夠支持 EC20,首先增加 VID 和 PID,即 usb 的廠商 ID 和設備 ID。在內核源碼中的 kernel /drivers/usb/serial/option.c 文 件里添加如下兩項內容。 #define EC20_VID 0x1E0E #define EC20_PID 0x9001 如下圖所示。 然后搜索 option_ids,在 option_ids 列表中增加以下內容。 { USB_DEVICE(EC20_VID, EC20_PID) }, 如下圖所示。 回到 kernel 目錄,配置 make menuconfig 以下兩項。Device Drivers → USB Support → USB Serial Converter support → USB driver for GSM and CDMA modems 以及在 Device Drivers > Network device support 的<*> PPP***全部選中 然后編譯內核,并燒寫到開發板。 2. 編譯 ppp 撥號工具 將提供的源碼解壓到 Ubuntu,進入解壓的文件夾,如下圖所示。 使用“./configure”命令配置源碼,如下圖所示。 使用命令“make CC=/ usr/local/arm/arm-2009q3/bin/ arm-none-linux-gnueabi-gcc”編譯源碼,注意這里使用編譯器的絕對路徑。 編譯到此完成,可以看到在 pppd 文件夾生成了 pppd 工具,在 chat 文件夾生成了 chat工具,如下圖所示。 3.拷貝工具 將上面步驟中生成的 pppd 和 chat 工具下載到開發板/usr/sbin/目錄下。將壓縮包提供的腳本 wcdma,wcdma-chat-connect,wcdma-chat-disconnect 拷貝 到開發板的/etc/ppp/peers/目錄下。 最后在開發板執行以下指令,建立軟連接。ln /lib/ld-linux-armhf.so.3 /lib/ld-linux.so.3 4.測試 首先將天線安裝到開發板上,如下圖所示。 插入手機卡后重啟開發板,并將腳本 pppd_conf.sh 拷貝到開發板,然后使用用命令“./pppd_conf.sh &”運行腳本,運行結果如下圖所示 使用命令“ping www.baidu.com -c 4 -I ppp0 ”測試,可以看到連網成功(由于 4G連接需要搜索信號,所以在信號較差的區域需等待一段時間,才能上網)。 移植到此完成。 |