Linux学习第55天:Linux 4G 通信实验(更快、更高、更强)

评论: 0 浏览: 1214 ***新更新时间: 2个月前

Linux版本号4.1.15   芯片I.MX6ULL                                 大叔学Linux    品人间百味  思文短情长


        无论是有线网络还是WiFi都是摆脱不了布线的尴尬,而4G通信可以彻底拜托网线的束缚,实现无线网络通信。

        而说到4G就不得不提到5G,中国5G发展已经取得了显著成就,‌步入成熟期,‌成为全球***大的移动通信市场。‌

        中国5G用户规模已经超过4G,‌成为流量使用增长的主动力。‌截***2024年2月底,‌中国5G用户数达到8.51亿户,‌占比近一半,‌超过了4G用户数近1亿。‌此外,‌5G用户的接入流量同比增长59.8%,‌占比达到53.3%,‌显示出5G已成为推动电信行业收入增长的重要动能1。‌

        在基础设施建设方面,‌中国5G基站总数已经达到350.9万个,‌占移动基站总数的近三成。‌工业和信息化部通过“信号升格”行动和5G应用“扬帆”行动,‌优化通信基站建设,‌实现了网络性能的增强和信号覆盖面积的扩大。‌到2025年底,‌计划超过12万个重点场所实现移动网络深度覆盖,‌3万公里铁路和50万公里公路、‌200条地铁线路实现移动网络连续覆盖。‌

        在应用方面,‌5G技术在多个行业实现了规模应用,‌特别是在“5G+工业互联网”领域,‌在建项目数超过了1.3万个,‌为全球制造业可持续数字化转型提供了中国方案。‌此外,‌5G技术在工业、‌矿业、‌电力等行业已实现规模应用,‌展示了5G技术在提升生产效率、‌保障安全等方面的巨大潜力。‌

        此外,‌中国5G应用在各行业加速渗透到核心环节,‌赋能效应持续彰显。‌5G已覆盖97个国民经济大类中的74个,‌行业渗透率超76%;‌5G行业用户规模超3万家,‌特别是在工业、‌智慧城市、‌医疗、‌教育等领域的用户规模已超千家。‌这些数据表明,‌5G正在成为推动经济社会高质量发展的重要力量。‌

        综上所述,‌中国5G发展在用户规模、‌基础设施建设、‌以及行业应用等方面均取得了重要进展,‌不仅加快了数字化进程,‌也为全球5G技术的发展和应用提供了重要的参考和借鉴。‌

        2024年2月26日] 在MWC24 巴塞罗那期间,华为云核心网产品线总裁高治国在产品解决方案发布会上发布了5.5G智能核心网解决方案,2024是5.5G的商用元年,5.5G智能核心网内生业务智能、网络智能和运维智能,使能网络商业价值变现。

        由北京邮电大学张平院士及其团队搭建的国际***通信与智能融合的6G外场试验网正式对外发布,标志着我国的6G关键技术迎来新突破。相较于5G,6G具有更高速率、更低时延、更广的连接密度,还能实现通信与人工智能、智能感知的深度融合。【和讯网2024-07-16 09:23】

        本章的思维导图如下:

Linux学习第55天:Linux 4G 通信实验(更快、更高、更强)

一、4G网络连接简介

        其实很简单,4G模块驱动(Mini PCIE)就转换为了USB驱动。

        天线 IPEX座

二、高新兴ME3630 4G模块实验

1、ME3630 4G模块简介

2、ME3630 4G模块驱动修改

1)、添加USB设备信息

        drivers/usb/serial/option.c 文件,找到 option_ids 数组,然后在里面添加 ME3630 的 PID 和 VID,option_ids 数组如图:

Linux学习第55天:Linux 4G 通信实验(更快、更高、更强)

2)、添加ECM支持程序

        ECM接口:ECM(ethernet control model)协议是USB2.0中用于将USB设备转换为网络适配器的一种协议。它允许将USB设备连接到计算机,并将其作为网络适配器使用,从而使计算机能够通过USB连接到网络。

        使用 ECM 接口的话需要修改 drivers/usb/serial/option.c 文件里面的 option_probe 函数。

 

Linux学习第55天:Linux 4G 通信实验(更快、更高、更强)

3)、配置Linux内核

a.使能 USBNET 功能,配置路径如下:

-> Device Drivers

        -> -*- Network device support

                -> USB Network Adapters

                        -> -*- Multi-purpose USB Networking Framework

b.使能 USB 串口 GSM、 CDMA 驱动,配置路径如下:

-> Device Drivers

        -> [*] USB support

                -> USB Serial Converter support

                        -> USB driver for GSM and CDMA modems

c.使能 USB 的 CDC ACM 模式,配置路径如下:

-> Device Drivers

        -> [*] USB support

                -> Support for Host-side USB

                        -> USB Modem (CDC ACM) support

d.编译一下 Linux 内核,然后使用新的 zImage 启动开发板。

        ECM 模式下,可以通过运行“ ifconfig -a”命令查看对应的网卡.

 

3、ME3630 4G模块ppp联网测试

1)、使能Linux内核ppp功能

a.打开 Linux 内核的 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

b.重新编译一下 Linux 内核,得到新的 zImage 镜像文件,然后使用新的 zImage镜像文件启动开发板。

2)、移植pppd软件

通过 pppd 这个软件来实现 ppp 拨号上网.
在移植之前先删除掉/usr/sbin/chat 这个软件!

a.将 ppp-2.4.7.tar.gz 拷贝到 Ubuntu 下并解压,解压以后会生成一个名为 ppp-2.4.7 的文件夹。

b.进入到 ppp-2.4.7 目录中,然后编译 pppd 源码,命令如下:

cd ppp-2.4.7/
./configure //配置
make CC=arm-linux-gnueabihf-gcc //编译

c.安装所需库 bison 和 flex,命令如下:

sudo apt-get install bison
sudo apt-get install flex

 d.将生成的 chat/chat、 pppd/pppd、 pppdump/pppdump 和pppstats/pppstats 这四个文件,将这个四个文件拷贝到开发板根文件系统中的/usr/bin 目录下。

sudo cp chat/chat /home/zuozhongkai/linux/nfs/rootfs/usr/bin/ -f
sudo cp pppd/pppd /home/zuozhongkai/linux/nfs/rootfs/usr/bin/ -f
sudo cp pppdump/pppdump /home/zuozhongkai/linux/nfs/rootfs/usr/bin/ -f
sudo cp pppstats/pppstats /home/zuozhongkai/linux/nfs/rootfs/usr/bin/ -f

 e.查看版本号

pppd -v

3)、ppp上网测试

a.在开发板根文件系统下创建/etc/gosuncn 目录.

b.新建一个名为“ppp-on”的 shell 脚本文件,输入以下内容:

1 #!/bin/sh
2 clear
3 OPTION_FILE="gosuncn_options"
4 DIALER_SCRIPT=$(pwd)/gosuncn_ppp_dialer
5 exec pppd file $OPTION_FILE connect "chat -v -f ${DIALER_SCRIPT}"

c.新建一个名为“gosuncn_options”的文件,在文件里面输入如下所示内容:

1 /dev/ttyUSB2//如果是联通或移动的卡就是用 ttyUSB2,如果是电信的卡就是用 ttyUSB0。
2 115200
3 crtscts
4 modem
5 persist
6 lock
7 noauth
8 noipdefault
9 debug
10 nodetach
/*
第 11~12 行,这两行内容和所使用的卡有关,如果是联通或者移动的卡就按照上面的写,
如果是电信的卡,要改为:
user card
password card
*/
11 user Anyname
12 password Anypassword
13 ipcp-accept-local
14 ipcp-accept-remote
15 defaultroute
16 usepeerdns
17 noccp
18 nobsdcomp
19 novj
20 dump

 d.新建一个名为“gosuncn_ppp_dialer”的文件,输入如下所示内容:

1 ABORT "NO CARRIER"
2 ABORT "ERROR"
3 TIMEOUT 120
4 "" ATE
5 SAY "ATE"
6 ECHO ON
7 OK ATH
8 OK ATP
/*
3GNET 是网络的 APN 码,这个要根据自己所使用的手机卡来确定,联
通卡的 APN 为 3GNET,移动卡的 APN 为 CMNET。
如果使用的移动卡,那么要将 APN 设置为 CMNET。如果是电
信的卡,那么第 9 行要改为:
OK "AT+ZCAPN=card,card"
*/
9 OK AT+CGDCONT=1,\"IP\",\"3GNET\"//
/*如果是联通或移动的卡,那么第 10 行就不变。如果是电信的卡,那么第 10 行
要改为:
OK ATD#777*/
10 OK ATD*99#
11 CONNECT

e.新建一个名为“disconnect”的 shell 脚本,输入如下所示内容:

1 #!/bin/sh
2 killall pppd

f.给予 ppp-on 和 disconnect 这两个文件可执行权限,命令如下:

chmod 777 ppp-on disconnect

g.根文件系统是否存在/var/run 和/var/lock 这两个目录,如果没有的话就手动创建这两个文件夹,

命令如下:

mkdir /var/run //创建/var/run 文件夹
mkdir /var/lock //创建/var/lock 文件夹

h.输入如下命令连接 4G 网络:

./ppp-on &

        4G 网络测试需要关闭其他网卡,否则的话网络测试可能有问题,将 uboot、 Linux kernel、 .dtb 设备树和根文件系统都烧写到板子的EMMC 或 NAND 上,然后直接启动 EMMC 或 NAND 上的系统即可。

4、ME3630 4G模块ECM联网测试

a.用 minicom 打开 ttyUSB1,波特率设置为115200。

        ①、输入 AT 指令:

AT+ZSWITCH=L

        重启开发板。

        ②、使用 AT 指令+CGDCONT 来设置数据参数。联通卡的 APN 为 3gnet,电信卡的 APN

为 ctnet,移动卡的 APN 为 cmnet。

 

AT+CGDCONT=1,” IP” ,” CMNET”

        ③、发送连接 AT 命令:

AT+ZECMCALL=1

 5、ME3630 4G模块GNSS定位测试 

ME3630-C3C 的 GNSS 要用无源天线, 不能使用有源天线,否则无法定位!

minicom 配置:

Linux学习第55天:Linux 4G 通信实验(更快、更高、更强)

a.使用 AT 指令配置 ME3630

ATI //查看固件信息
Manufacturer: GOSUNCNWELINK
Model: ME3630-W
Revision: ME3630C3CV1.0B03
IMEI: 864863045876287
OK
AT+ZGINIT //初始化 GPS
OK
AT+ZGMODE=3 //设置定位模式
OK
AT+ZGPORT=0 //定位信息从 AT、 MODEM、 UART 三个口同时上报
OK
AT+ZGNMEA=31 //设置 GPS 数据为 NMEA 格式
OK
AT+ZGPSR=1 //使能 ZGPSR 数据
OK
AT+ZGRUN=2 //连续定位模式
OK

 b.直接解析 NEMA 格式数据,然后得到具体的经纬度、速度、高度、UTC 时间等信息。

三、EC20 4G模块实验

该模块的使用方法和 ME3630基本一样,不再赘述,感兴趣的可以自己去看一下。

1、EC20 4G模块简介

2、EC20 4G模块驱动修改

1)、添加USB设备信息

2)、配置Linux内核

3)、添加移远官方的 GobiNet 驱动

3、quectel-CM移植

4、EC20上网测试


本笔记为参考正点原子开发板配套教程整理而得,仅用于学习交流使用,未经允许不得用于商业用途。


发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

点击启动AI问答
Draggable Icon