您好,登錄后才能下訂單哦!
這篇文章給大家介紹Linux系統移遠EC20 4G模塊移植的方法是怎樣的,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
硬件平臺:迅為i.MX6Q開發板
對于嵌入式Linux而言,4G網絡連接是一個比較容易實現的功能,大多數的4G模塊接口都是MiniPCIE接口,但是深入了解一下就會發現,4G模塊的通信接口都是USB,所以4G模塊的驅動就是USB驅動,只要USB驅動正常,4G模塊在硬件上就能正常通信。下面看一下4G模塊的硬件原理圖:
要使用EC20 4G模塊首先需要在Linux內核中添加EC20的USB信息,這樣內核啟動后,才能正確識別EC20 4G模塊。打開Linux內核下的drivers/usb/serial/option.c 文件,添加如下信息:
配置如圖 2.2.1所示:
配置如圖 2.2.2所示:
配置如圖 2.2.3所示:
可以看出EC20 4G模塊識別成功,并且虛擬出5個USB設備,分別為ttyUSB0~ttyUSB4。
首先拷貝ppp-2.4.4.tar.gz到Ubuntu下,然后執行下面的命令解壓:
tar -xvf ppp-2.4.4.tar.gz
解壓完成得到ppp-2.4.4目錄,進入ppp-2.4.4目錄如圖 3.1.1所示:
配置完成后,使用下面的命令進行編譯:
make CC=arm-linux-gnueabihf-gcc
“CC=arm-linux-gnueabihf-gcc”指定編譯器,和開發板Linux內核使用同一個編譯器。編譯完成如圖 3.1.3所示:
開發板準備好后啟動Linux系統,待系統啟動后,進入/etc目錄,然后創建ppp目錄,具體命令如下:
cd /etc //進入etc目錄
mkdir ppp //創建ppp目錄
目錄創建完后,使用U盤將上一節編譯的chat、pppd、pppdump、pppstats四個可執行文件拷貝到/etc/ppp目錄下,如圖 3.2.2所示:
輸入如下內容:
在這里 OK \rAT+CGDCONT=1,"IP","3gnet",,0,0 OK-AT-OK ATDT*99#這兩句話會根據移動聯通或者是電信而變化,這里用的是移動4G。
創建wcdma-chat-disconnect文件:
touch wcdma-chat-disconnect
vi wcdma-chat-disconnect
內容如下:
上圖表示聯網成功后的IP地址為10.47.135.182,使用ifconfig命令查看結果如圖 3.2.4:
發現不能ping通外網,愿意是因為DNS沒有設置對,在etc下有一個文件resolv.conf。這個文件是用來放DNS的。就是這個里面的域名沒有設置對。然而在eth0的運行腳本里強制性的把這個文件復制為了192.168.1.1 。這就造成即便在這里文件里設置上正確的DNS,再開機后也會發現這個文件里已經是192.168.1.1了。這是因為eth0,是開機自啟動的。
我們在/etc目錄下新建一個文件resolv.conf_back:
touch resolv.conf_back
vi resolv.conf_back
輸入如下內容:
nameserver 202.99.160.68nameserver 221.130.33.52nameserver 221.130.33.60nameserver 192.168.1.1
然后在新建一個腳本文件ppp0:
touch ppp0
vi ppp0
輸入如下內容:
#!/bin/shifconfig eth0 downcp /etc/resolv.conf_back /etc/resolv.conf/etc/ppp/pppd call wcdma&
修改ppp0文件的執行權限:
chmod 777 ppp0
這里第一步是將eth0關掉,第二步將我們的DNS文件覆蓋到resolv.conf上,第三步運行。然后重新開機,執行ppp0腳本,命令如下:
/etc/ppp0
腳本執行成功后,重新使用ping命令
顯示可以正常ping通百度的IP地址。至此EC20 4G模塊就可以正常使用了。
關于Linux系統移遠EC20 4G模塊移植的方法是怎樣的就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。