百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术教程 > 正文

NUC980 移植移远EC20驱动(GobiUSBNet)

csdh11 2025-01-05 16:41 3 浏览

移植过程中,参考的是移远官方的参考手册《Quectel_WCDMA<E_Linux_USB_Driver_User_Guide_V1.8》等。

1、添加 USB 设备信息

先在Linux内核中添加EC20的USB设备信息,对于移远的其他模组型号,在文档中都有了PID和VID。打开Linux源码中的drivers/usb/serial/option.c 文件。在 option_ids 数组中,添加EC20的信息。

2、添加 ECM 支持程序

EC20支持 ECM 接口,可以通过 ECM 接口轻松联网,如果要使用 ECM 接口的话需要修改 drivers/usb/serial/option.c 文件里面的 option_probe 函数。找到此函数,然后在里面输入以下内容:

3、配置 Linux 内核

我们需要通过make menuconfig配置 Linux 内核,首先使能 USBNET 功能,路径如下:

-> Device Drivers

-> -*- Network device support

-> USB Network Adapters

-> -*- Multi-purpose USB Networking Framework


接下来我们还需要使能 USB 串口 GSM、CDMA 驱动,配置路径如下:

-> Device Drivers

-> [*] USB support

-> <*> USB Serial Converter support

-> <*> USB driver for GSM and CDMA modems


继续配置 Linux 内核,使能 USB 的 CDC ACM 模式,配置路径如下:

-> Device Drivers

-> [*] USB support

-> <*> Support for Host-side USB

-> <*> USB Modem (CDC ACM) support

再接着添加Gobi 驱动,配置路径如下:

-> Device Drivers

-> [*] Network device support

-> -*- USB Network Adapters

-> <*> Gobi USB Net driver for Quectel module

将选择好的配置生成的.config文件放到Linux内核中的arch/arm/configs文件夹下。

4、添加移远官方的 GobiNet 驱动

使用移远为 EC20 提供了 GobiNet 驱动,官方的参考资料《Quectel_WCDMA<E_Linux&Android_GobiNet_Driver_V1.3.0》。将/src 下的所有.c 和.h 文件都拷贝到 Linux 内核中的/driver/net/usb 目录下。



拷贝完成以后打开 Linux 内核的 drivers/net/usb/Makefile 文件,在此文件末尾加入如下内容:

obj-$(CONFIG_USB_GOBI_NET) += GobiNet.o

GobiNet-objs := GobiUSBNet.o QMIDevice.o QMI.o

最后在 drivers/net/usb/Kconfig 文件中加入下所示内容:

config USB_GOBI_NET

tristate"Gobi USB Net driver for Quectel module"

help

Support Quectelmodule.

A modemmanager with support for GobiNet is recommended.

Tocompile this driver as a module, choose M here: the module will be

calledGobiNet.1

5、编译生成新的内核镜像。

make clean -> make xx(.config文件) -> make uImage,生成新的镜像。

6、quectel-CM 移植。

参考移远官方文件《WCDMA<E_QConnectManager_Linux&Android_V1.1.34.zip》。解压得到quectel-CM 这个文件夹,然后将 quectel-CM 文件夹拷贝到 Ubuntu 中。拷贝完成以后进入到Ubuntu 中的 quectel-CM 文件夹,使用交叉编译,生成可执行文件。将可执行文件放到开发板中执行即可。


相关推荐

重温2010年总决赛,黄绿大战,科比真的抢了加索尔FMVP吗

2010年NBA总决赛,已经过去了10多年。不过,提起那一年的总决赛,很多球迷还是记忆犹新,在他们心里,这一年的总决赛是21世纪以来最为精彩的一次总决赛。2010年总决赛,凯尔特人和湖人时隔2年再次相...

始料未及的屠戮——简述2010世界杯阿根廷德国之战

2010年四分之一决赛,德国队以一个令人震惊的比分击败阿根廷,追平连续3届闯进半决赛的纪录,同时创造12次入围4强的新纪录。如果论及世界杯中的冤家球队,英格兰和阿根廷是一对,巴西和法国是一对,阿根廷和...

10年总决赛湖人4:3凯尔特人——科比和加索尔每场具体数据

以下7图为2009-2010赛季总决赛湖人4:3凯尔特人——科比和加索尔每场具体数据:湖人首发:安德鲁·拜纳姆、保罗·加索尔、梅塔·沃尔德·皮斯(慈世平)、...

2020年和2010年的热刺相比,到底提高了多少?

虽然本赛季状态并不太好,但近些年托特纳姆热刺在各方面应该说有了很大的进步。按照这个思路,我们来比较一下热刺在2010年和如今的一下数据。联赛位置2009/2010赛季是热刺崛起的开始,他们逐渐成为联赛...

2010季后赛詹姆斯VS罗斯 老詹关键三分锁定胜局

直播吧6月6日讯2010年季后赛克利夫兰骑士与芝加哥公牛在首轮相遇。整个系列赛,身为当赛季常规赛MVP的詹姆斯场均得到31.8分9.2篮板8.2助攻,而刚进入联盟两年的罗斯亦表现抢眼场均贡献26.8...

攻势犀利未翻盘,出线希望变暗淡,韩国不敌加纳离16强远了

来源:环球时报【环球时报驻埃及特派记者黄培昭环球时报特约记者李佳寅唐牧茂】北京时间28日晚,韩国队在世界杯H组第二轮比赛中2∶3不敌加纳队,这是两支球队在世界杯赛场上的首次碰面。两支球队此前...

VC++与MFC入门简介:它们的区别是什么&amp;如何挑选开发组件

C++编程入门系列给大家讲了C++的编程入门知识,大家对C++语言在语法和设计思想上应该有了一定的了解了。但是教程中讲的例子只是一个个简单的例程,并没有可视化窗口。在这套VS2010/MFC编程入门教...

哪款C语言编译器(IDE)适合初学者?

这里我们把“编译器”和“IDE(集成开发环境)”当做一个概念,不再加以区分。C语言的集成开发环境有很多种,尤其是Windows下,多如牛毛,初学者往往不知道该如何选择,本节我们就针对Window...

八强硬碰硬 往事涌心头

晨报记者孙俊毅北京时间昨天凌晨,随着欧洲杯最后两场1/8决赛结束,八强球队全部产生:上半区的4支球队为瑞士、西班牙、比利时和意大利,下半区的4支球队则是捷克、丹麦、英格兰和乌克兰。1/4决赛将于北京...

无缘十四年后顶峰相遇!10年世界杯决赛荷兰vs西班牙,还记得吗?

欧洲杯半决赛荷兰队无缘与西班牙顶峰相遇,被英格兰所淘汰。荷兰队2010年世界杯决赛正是和西班牙对决,当时0-1惜败巅峰西班牙。(欢迎大家点点关注,随老相馆一起追忆往昔)...

(2)初学C++:如何使用Visual Stdio 2010调试C++程序?

一、创建解决方案和项目1.打开Vs2010,单击...

「连载」 .Net cad二次开发(一)

平常都用arx/c++/mfc来进行cad开发,业余时间学习下.net/C#开发,在此做下记录,同时以供大家参考,交流,共同进步。ps:我也是现学的,如果有什么不对的地方可以指出来,在此谢谢大家!!一...

今日图集:2010年湖人VS热火圣诞大战

詹姆斯撒镁粉科比面对詹姆斯跳投科比防守詹姆斯詹姆斯、丹皮尔、科比韦德飞身上篮科比对抗韦德詹姆斯与阿泰斯特奥多姆与波什...

Visual Studio 2010(VS)--消消乐定制版?--添加反应计时

VisualStudio2010(VS)--消消乐定制版?--添加反应计时上期回顾(上期主要是把原来16格,扩展到了36格的,带18组文字图形的消消乐):本期将给他加一个计时,就是当第一次按下的时...

【项目实战】C/C++自制程序:双人击球游戏

每天一个编程小项目,提升你的编程能力!游戏说明Player1玩家通过W、S按键控制左板上下移动,Player2玩家通过O、L按键控制右板上下移动。在游戏过程中,小球的速度会随着接触木板的次...