ARM板和Linux上的3G配置詳解

2021-06-23 05:06:39 字數 2264 閱讀 7520

我們這段時間作了乙個基於arm開發板和開源linux的3g模組,給大家作個參考。3g選用的是華為的ec1261,usb介面,現在市面上的基本都是usb口,據說可以直接去掉在usb modem的usb轉串列埠等模組,直接通過gpio口來控制3g模組,但是由於我們這資源有限,實現不了那麼複雜的工作,所以就直接用了華為的產品了,而沒有去找更加基礎的晶元。

usb網絡卡內部結構比較複雜,它們大部分都包括modem,usb轉串列埠模組,儲存模組,讀卡器模組,所以linux核心需要新增的東西也比較多。usb主機控制器有3種規格:ohci(open host controller inte***ce)、uhci(universal host controller inte***ce)和ehci(enhanced host controller inte***ce),ohci驅動程式用來為非pc系統上以及帶有sis和ali晶元組的pc主機板上的usb晶元提供支援。uhci驅動程式多用來為大多數其他pc主機板(包括intel和via)上的usb晶元提供支援。ehci由usb 2.0規範所提出,它相容ohci和uhci。uhci的硬體線路比ohci簡單,所以成本較低,但需要較複雜的驅動程式,cpu負荷稍重。我們這裡使用的是ohci。

言歸正傳,我們來介紹第一步。重新編譯linux核心,我們需要在核心裡新增如下模組:

device drivers=>

usb support=>

[*] suppon for host-side usb

[*] usb device filesystem

[*] usb device class-devices

[*] ohci hcdsupport

[*] usb mass storage support

usb serial convelter suppor -->

[*] usb driver for gsm and cdma modems

scsi device support=>

[*]scsi device support

[*] scsi disk support

[*] probe all luns on each scsi device

hdi devices=>

[*] usb human inte***ce devices support

[*] /dev/hiddev raw hid device support

network device support=>

<*> ppp(point—to—point protoco1)support

<*> ppp support for async serial ports

<*> ppp suppo rt for sync tty ports

<*> ppp deflate compression

<*> ppp bsd —compress compression

<*> ppp mppe compress compression(encryp—tion)

<*> ppp over ethernet

<*> ppp over 12tp

核心配置就這樣了,但是別急,還沒完呢。當你碰到乙個核心並不支援的新裝置後,只需要把該dongle 3g介面的vendor id和product id新增到linux-2.6.x/drivers/usb/serial/optionc中的option_ids陣列即可。順便說下,每個usb裝置都有vendor id和product id,但不一定唯一哦,vendor id是裝置商id,比如華為和中興都有各自的vendor id。product id是他們旗下產品的id,這個就不一定唯一了。

mount -t usbfs usbfs /proc/bus/usb/

然後執行命令cat /proc/bus/usb/devices 可以獲得裝置資訊。如果沒有devices檔案的話說明你的配置有問題。呵呵。另外在dev下應該出現sr0檔案。

下面是第二步,把3g網絡卡由儲存模式轉為 modem模式

部分網絡卡可以直接通過eject命令彈出,轉換成modem模式,但是大部分都不行。 大家不用擔心,有乙個叫usb-modeswitch的軟體可以幫我們解決這個問題。

大家直接看吧,我就不再重複了。

不知大家第二步進行的怎麼樣,下面就是第三步了,也就是最後一步 ppp撥號

下面這一步比較難,也就是配置檔案問題。不詳述了,直接引用。

配置檔案相當齊全準確。

我要補充的一點是最好在

/etc/resolv.conf 裡直接加上一句 nameserver 8.8.8.8

如果要用的話最好嚴格按照我說的作哦。

**:

龍尚3G模組在arm板上的應用

最近專案需要在arm板上裝一塊3g的無線模組,於是查了很多資料,弄了很久才發現是資料中出了些問題,故將整個除錯過程寫成部落格,以後方便查閱。一 3g模組現在手上的這塊模組是龍尚u7309系列 o o,沒有打廣告 的,上這個系列好像都沒得買了。以前沒接觸過這類東西,於是各種查詢資料 二 移植步驟 簡單...

Linux下3G的應用

弄了幾天的3g和簡訊,簡單記錄一下。用的3g模組是華為的e1750 wcdma無線資料終端。在linux下,插入3g模組,系統會自動識別為ttyusb0,ttyusb1,ttyusb2,其中ttyusb1不知道有什麼用處,不可讀寫,而其他兩個介面都是可讀寫的,ttyusb0用作3g無線上網的介面,在...

sqlite3 在arm板上的編譯

對於乙個 使用了資料庫的程式,編譯會與普通程式不同,首先編譯會用到sqlite3 解壓編譯之後的buid資料夾下的 檔案庫。編譯 arm linux gnueabif gcc o test test.c test.h i home milan dufan test mx6 build include...