国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

落風的個人空間 http://m.qingdxww.cn/space-uid-138363.html [收藏] [復制] [RSS]

博客

迅為IMX6ULL開發板Linux 4G通信實驗

已有 812 次閱讀2020-12-21 11:48

前面的章節中學習了如何使用有線網絡或者使用 wifi,但是使用無線網絡或者 wifi 有許多環境限制,這種時候就可以使用 4G 模塊來上網。在本章中學習一下如何使用 4G 模塊實現上網功能。
56.1 4G  網絡連接
對于嵌入式 Linux 而言,4G 網絡連接是一個比較容易實現的功能,大多數的 4G 模塊接口都是 MiniPCIE接口,但是深入了解一下就會發現,4G 模塊的通信接口都是 USB,所以 4G 模塊的驅動就是 USB 驅動,只要 USB 驅動正常,4G 模塊在硬件上就能正常通信。下面看一下 4G 模塊的硬件原理圖:


在原理圖中,U25 是 4G 模塊的 MiniPCIE 接口,然后通信引腳會接到 U15 的 HUB 芯片上,所以 4G 模塊會被識別成 USB 設備,CON5 是 SIM 卡接口,在使用 4G 模塊時,需要先插入 SIM 卡。在 i.MX6UL 終結者開發板上使用的 EC20 4G 模塊,如圖 56.1.3 所示:

56.2 EC20 4G  模塊配置
56.2.1  添加 USB  設備信息
要使用 EC20 4G 模塊首先需要在 Linux 內核中添加 EC20 的 USB 信息,這樣內核啟動后,才能正確識別
EC20 4G 模塊。打開 Linux 內核下的 drivers/usb/serial/option.c 文件,添加如下信息:
1809 /* add support EC220 4G Module */
1810 { USB_DEVICE(0x05C6, 0x9090) }, /* Quectel UC15 */
1811 { USB_DEVICE(0x05C6, 0x9003) }, /* Quectel UC20 */
1812 { USB_DEVICE(0x05C6, 0x9215) }, /* Quectel EC20 */
1813 { USB_DEVICE(0x2C7C, 0x0125) }, /* Quectel EC25/EC20 R2.0 */
1814 { USB_DEVICE(0x2C7C, 0x0121) }, /* Quectel EC21 */
1815 /* end add */
其中第 1813 行是 EC20 4G 模塊的 USB 信息。
56.2.2 Linux  內核配置
添加完 EC20 4G 模塊的 USB 信息后,需要修改 Linux 內核配置來支持 USBNET 功能。具體配置如下:
Device Drivers --->
  • Network device support --->
    <*> USB Network Adapters --->
    <*> Multi-purpose USB Networking Framework
    配置如圖 56.2.2.1 所示:

    接下來我們還需要使能 USB 串口 GSM、CDMA 驅動,配置路徑如下:
    Device Drivers --->
  • USB support --->
    <*> USB Serial Converter support --->
    <*> USB driver for GSM and CDMA modems
    配置如圖 56.2.2.2 所示:

    然后配置 ppp,配置路徑如下:
    Device Drivers --->
  • Network device support --->
    <*> PPP (point-to-point protocol) support
    <*> PPP BSD-Compress compression
    <*> PPP Deflate compression
  • PPP filtering
    <*> PPP MPPE compression (encryption)
  • PPP multilink support
    <*> PPP over Ethernet
    <*> PPP support for async serial ports
    <*> PPP support for sync tty ports
    配置如圖 56.2.2.3 所示:

    配置完成后,重新編譯內核,然后使用新的內核啟動開發板。如果配置成功開發板啟動后會有如圖56.2.2.4 信息打印:

    可以看出 EC20 4G 模塊識別成功,并且虛擬出 5 個 USB 設備,分別為 ttyUSB0~ttyUSB4。
    56.3 EC20 4G  模塊聯網測試
    56.3.1 PPP  軟件包編譯
    首先拷貝 ppp-2.4.4.tar.gz 到 Ubuntu 下,然后執行下面的命令解壓:
    tar -xvf ppp-2.4.4.tar.gz
    解壓完成得到 ppp-2.4.4 目錄,進入 ppp-2.4.4 目錄如圖 56.3.1.1 所示:

    使用 configure 進行配置,命令如下:
    ./configure
    結果如圖 56.3.1.2 所示:

    配置完成后,使用下面的命令進行編譯:
    make CC=arm-linux-gnueabihf-gcc
    “CC=arm-linux-gnueabihf-gcc”指定編譯器,和開發板 Linux 內核使用同一個編譯器。
    編譯完成如圖 56.3.1.3 所示:

    編譯完成后,分別在 chat、pppd、pppdump、pppstats 四個目錄下生成 chat、pppd、pppdump、pppstats可執行文件,用于后面的 4G 模塊聯網測試。
    56.3.2 EC20 4G  模塊聯網測試
    首先安裝好 EC20 4G 模塊、天線和 SIM 卡,如圖 56.3.2.1 所示:

    開發板準備好后啟動 Linux 系統,待系統啟動后,進入/etc 目錄,然后創建 ppp 目錄,具體命令如下:
    cd /etc //進入 etc 目錄
    mkdir ppp //創建 ppp 目錄
    目錄創建完后,使用 U 盤將上一節編譯的 chat、pppd、pppdump、pppstats 四個可執行文件拷貝到/etc/ppp目錄下,如圖 56.3.2.2 所示:

    然后在/etc/ppp 目錄下創建 pap-secrets 文件,使用下面命令:
    touch pap-secrets //創建 pap-secrets 文件
    vi pap-secrets //打開 pap-secrets 文件
    輸入如下內容:
    # Secrets for authentication using PAP
    # client server secret IP addresses
    card * card *
    在 4G 信號在通信時候有一個密碼的比對,密碼對了就可以通信了。上面顯示用戶是 card,密碼是 card。
    然后創建新文件夾 peers,命令“mkdir peers”。
    進入 peers 文件夾,創建 wcdma 文件,命令如下:
    touch wcdma
    vi wcdma
    輸入如下內容:
    # /etc/ppp/peers/wcdma
    # This is pppd script for China liantong
    # Usage: root>pppd call wcdma
    hide-password
    noauth
    connect '/etc/ppp/chat -s -v -f /etc/ppp/peers/wcdma-chat-connect'
    disconnect '/etc/ppp/chat -s -v -f /etc/ppp/peers/wcdma-chat-disconnect'
    debug
    /dev/ttyUSB2
    115200
    defaultroute
    noipdefault
    novj
    novjccomp
    noccp
    ipcp-accept-local
    ipcp-accept-remote
    local
    lock
    dump
    nodetach
    user "card"
    password "card"
    crtscts
    remotename 3gppp
    ipparam 3gppp
    usepeerdns
    需要注意的是使用/dev/ttyUSB2 設備節點文件。
    “user "card"”和“password "card"”對應了 pap-secrets 文件中的用戶名和密碼。
    創建 wcdma-chat-connect 文件:
    touch wcdma-chat-connect
    vi wcdma-chat-connect
    內容如下:
    ABORT "BUSY"
    ABORT "NO CARRIER"
    ABORT "NO DIALTONE"
    ABORT "ERROR"
    ABORT "NO ANSWER"
    TIMEOUT 120
    "" AT
    OK \rATZ
    OK \rAT+CGDCONT=1,"IP","3gnet",,0,0
    OK-AT-OK ATDT*99#
    CONNECT \d\c
    在這里 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
    內容如下:
    ABORT "ERROR"
    ABORT "NO DIALTONE"
    SAY "INSending break to the modem\n"
    ""\k"
    ""+++ATH"
    SAY "\nGood bye\n"
    所需文件創建完成后,就可以進行聯網測試了。
    首先關閉 eth0 設備,因為和 EC20 4G 模塊有沖突,同時只能使用一個設備。命令如下:
    ifconfig eth0 down
    然后在/etc/ppp 目錄下輸入指令:
    ./pppd call wcdma &
    結果如圖 56.3.2.3 所示:

    上圖表示聯網成功后的 IP 地址為 10.47.135.182,使用 ifconfig 命令查看結果如圖 56.3.2.4:

    這時使用 ping 命令查看能夠 ping 通外網,命令如下:
    ping 202.108.22.5 -c 4
    “-c”選項指定 ping 網絡的次數。“202.108.22.5”是百度的 IP 地址,結果如圖 56.3.2.5:

    發現不能 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.68
    nameserver 221.130.33.52
    nameserver 221.130.33.60
    nameserver 192.168.1.1
    然后在新建一個腳本文件 ppp0:
    touch ppp0
    vi ppp0
    輸入如下內容:
    #!/bin/sh
    ifconfig eth0 down
    cp /etc/resolv.conf_back /etc/resolv.conf
    /etc/ppp/pppd call wcdma&
    修改 ppp0 文件的執行權限:
    chmod 777 ppp0
    這里第一步是將 eth0 關掉,第二步將我們的 DNS 文件覆蓋到 resolv.conf 上,第三步運行。然后重新開機,執行 ppp0 腳本,命令如下:
    /etc/ppp0
    腳本執行成功后,重新使用 ping 命令,結果如圖 56.3.2.6 所示:

    圖片顯示可以正常 ping 通百度的 IP 地址。至此 EC20 4G 模塊就可以正常使用了。


  • 路過

    雞蛋

    鮮花

    握手

    雷人

    評論 (0 個評論)

    facelist

    您需要登錄后才可以評論 登錄 | 立即注冊

    關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
    電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
    返回頂部
    主站蜘蛛池模板: 亚洲美女视频免费| 欧美一级片播放| 日韩欧美在线一级一中文字暮| 日韩免费高清一级毛片| 一本高清| 天天爽天天爽| 日韩国产欧美成人一区二区影院 | 亚洲国产精品成人综合久久久| 青青草国产在线| 欧美成综合网网站| 三级国产精品一区二区| 天天操天天干天天透| 亚洲欧美日韩国产精品网| 四虎综合九九色九九综合色| 欧美午夜网| 香蕉视频久久| 亚洲最新视频| 四虎永久在线精品国产| 亚洲第一页乱| 天天色综合天天| 亚洲国产日韩欧美一区二区三区| 青青青在线视频人视频在线| 色男人综合| 亚洲成人第一页| 色先锋色资源看片资源网| 欧美极品在线视频| 亚洲麻豆一区| 午夜久| 欧美成人视| 欧美日韩精品国产一区二区| 日本三级在线观看中文字| 日本亚洲成人| 亚洲精品不卡视频| 色综合天天综合网国产国产人 | 午夜精品久久久久久毛片| 四虎影院大全| 日韩亚洲欧美在线爱色| 亚洲精品久| 思思99re热| 亚洲日韩中文第一精品| 亚洲欧美日韩中文字幕在线不卡|