问答 店铺
热搜: ZYNQ FPGA discuz

QQ登录

只需一步,快速开始

微信登录

微信扫码,快速开始

微信扫一扫 分享朋友圈

已有 308 人浏览分享

开启左侧

米联客H15-4EV(MPSOC)开发板4G模块驱动适配与联网调试教程

[复制链接]
308 0
经验分享
经验分享: 01-AMD(XILINX) » X
米联客H15-4EV(MPSOC)开发板4G模块驱动适配与联网调试教程
硬件平台:米联客H15-CM02-4EV(MPSOC Zynq UltraScale+)
软件环境:Vitis2021.1、Ubuntu18.04虚拟机开发环境、米联客2026版MPSOC驱动开发套件
串口环境下载地址: https://www.uisrc.com/t-3177.html
前言
本文基于米联客官方2026版MPSOC Linux驱动开发文档,针对H15-4EV开发板完成4G模块的全套适配调试流程。相较于ZYNQ7000系列,MPSOC架构的4G驱动适配需要适配aarch64架构内核,同时需要完成内核配置、驱动编译、串口权限配置、AT指令调试、拨号联网等完整步骤。本文全程实操,解决大部分开发者遇到的模块不识别、AT无响应、拨号失败、无网络等问题。
配套开发环境、系统镜像、工具包均来自米联客官方资源站,文末附完整资源下载链接与虚拟机账号密码。
image.jpg
图1 开发板实物图
一、前期准备工作
1.1 硬件准备
•        核心硬件:米联客H15-4EV MPSOC开发板
•        外设:工业全网通4G模块(USB接口)、有效4G流量SIM卡(建议纯数据卡,关闭短信/通话功能,避免干扰)
•        辅助工具:USB数据线、SD卡(烧录系统镜像)、串口调试工具Putty
1.2 软件环境准备
本次开发使用米联客官方适配的专属开发环境,无需从零配置,直接部署即可使用,完美兼容H15-4EV板卡:
•        虚拟机软件:VMware-player-16.1.2
•        虚拟机系统:uisrc-ubuntu18x64(专属编译环境)
•        MPSOC开发套件:uisrc-lab-xlnx20220501(适配UltraScale+架构)
虚拟机默认账号密码:用户名 uisrc,密码 root。
所有资源下载链接统一放在文末,提取密码均为1111。
二、开发环境部署与内核配置
2.1 环境部署
1、将官方MPSOC开发套件压缩包 uisrc-lab-xlnx20220501.tar.gz 上传至虚拟机Home目录。
2、终端执行解压命令:
tar -zxvf uisrc-lab-xlnx20220501.tar.gz
解压好的文件夹内部文件夹如下:
图2 解压后的目录结构
1. 将文件中提供的quectel文件下的内容拷贝至开发包 sources/linux/drivers/net 下,覆盖原来的Makefile文件。
图3 拷贝quectel文件至drivers/net
2. 再将同文件下的 Quectel_QConnectManager_Linux_V1.6.7 拖到虚拟机内,make 重新编译:
图4 编译Quectel_QConnectManager
编译出的 quectel-CM 就是我们所需要的文件,这是移远提供的一款Linux环境下的拨号工具,主要用于通过4G模块实现网络连接:
图5 编译出quectel-CM拨号工具
3. 在编译驱动之前先在内核把驱动打开:
图6 内核配置入口
source 完环境变量后,输入命令:make_kernel_menuconfig:
图7 内核menuconfig配置一
图8 内核menuconfig配置二
选中以上配置,结束后保存,输入命令 save_kernel_menuconfig。
接着配置4G模块驱动,将文件中提供的usb驱动文件(quectel)放到开发包 sources/linux/drivers/net 下,覆盖原来的usb文件。
图9 配置4G模块驱动
编译:
制作系统如有不清楚的请学习《3-4-1_米联客2024版ZYNQ-Linux课程(基础入门篇)》,这边简单介绍一下下面的编译步骤。
将 fsbl.elf、pmufw.elf、system_wrapper.bit 以及 soc_dts 下的设备树文件拷贝到 ~/uisrc-lab-xlnx/boards/mzux/ubuntu/output/files 下(提示覆盖都选择 Merge),
图10 拷贝编译所需文件
3、进入工程目录,配置环境变量:
cd ~/uisrc-lab-xlnx
source scripts/mzuxcfg.sh
4、提前编译uboot、内核、系统镜像,确保编译环境正常,为4G驱动编译做铺垫:
make_uboot.sh
make_kernel.sh
create_image.sh
然后将编译好的驱动 GobiNet.ko 文件以及 quectel-CM 文件拷贝至SD卡的rootfs分区的 home/uisrc/ 路径下,驱动 GobiNet.ko 文件在如下位置:
图11 GobiNet.ko文件位置
最后弹出SD卡。
三、4G模块驱动编译与部署
本章节基于米联客2026版驱动教程4G实验章节,适配H15-4EV的aarch64架构交叉编译。
3.1 驱动源码准备
将教程配套的4G实验源码文件夹上传至虚拟机对应工程目录,修改Makefile文件,指定MPSOC架构交叉编译工具链,适配H15-4EV开发板。
3.2 交叉编译驱动
1、进入源码目录,执行编译命令:
make clean
make
2、编译成功后生成 usbnet.ko、cdc_ether.ko 等核心驱动模块。
3、将编译好的 .ko 驱动文件、拨号脚本拷贝至开发板文件系统。
3.3 开发板驱动加载
开发板上电启动后,通过串口终端执行驱动加载命令:
insmod usbnet.ko
insmod cdc_ether.ko
加载无报错即为成功,可通过 lsmod 查看已加载驱动模块。
四、硬件连接与模块识别测试
4.1 硬件接线
1、将开通流量的4G SIM卡插入模块卡槽(注意卡槽方向,断电插拔)。
2、将4G模块USB接口接入H15-4EV开发板USB Host接口。
3、开发板上电,通过Putty串口工具连接开发板(波特率115200)。
图12 硬件接线一
图13 硬件接线二
4.2 模块识别检测
若输出4G模块厂商设备ID,说明硬件识别正常。同时查看虚拟串口设备:
ls /dev/
图14 查看虚拟串口设备
正常会生成 /dev/ttyUSB0、ttyUSB1、ttyUSB2 三个串口,其中 ttyUSB2 为AT指令调试串口。
接着输入 sudo ./quectel-CM(多等待几秒):
图15 运行quectel-CM拨号
按 ctrl+z 后,输入命令 ifconfig 看到有 usb0:
图16 ifconfig查看usb0
4.3 实验结果
输入 ping www.baidu.com 测试网络连通性:
图17 ping外网测试
七、常见问题排查汇总
问题1:lsusb无法识别4G模块
排查:检查USB接线、开发板USB Host功能是否开启、内核USB驱动是否编译成功,重新加载驱动模块。
问题2:ttyUSB串口不存在
排查:内核未开启USB虚拟串口驱动,重新配置内核并编译镜像。
问题3:AT指令无响应
排查:串口权限不足、选错调试串口(必须ttyUSB2)、SIM卡未插好/无流量、模块未上电。
问题4:拨号成功但无法ping外网
排查:专网卡未配置APN、DNS解析异常,手动配置DNS服务器即可解决。
八、官方配套资源汇总
所有资源提取密码:1111
1、虚拟机环境(必装)
•        Ubuntu18虚拟机系统:https://pan.baidu.com/s/1GhB1VbAX_xlc-HXS6JNEKg?pwd=1111
2、MPSOC专属开发套件
•        uisrc-lab-xlnx20220501:https://pan.baidu.com/s/15HNvN7p4pXe8tva3JEBXNA?pwd=1111
3、串口工具Putty、设备树源码、系统镜像等配套资源均可在官方资源站获取

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

0

关注

10

粉丝

171

主题
精彩推荐
热门资讯
    网友晒图
      图文推荐
        
        • 微信公众平台

        • 扫描访问手机版