今天我讲解的这篇关于4G模组软件的模块信息属于必读篇,望珍惜!

1、模块信息概述

模块信息是每一个模块携带的信息,就像人的身份证一样,这些信息确定了模块的唯一性;

包含设备唯一id,硬件型号,模组的硬件版本号,固件版本号等;

模块远程升级需要上传模块信息,解决和分析某些问题的时候可能也会需要确认模块信息。

2、演示功能概述

使用Air780E核心板烧录底层固件(LuatOS-SoC_V1112_EC618_FULL.soc)和hmeta例程脚本学习有关模块信息的api函数.

3、硬件准备

3.1 Air780E核心板

使用Air780E核心板,

此核心板的详细使用说明参考:

https://docs.openluat.com/air780e/

Air780E产品手册中的《开发板Core_Air780E使用说明VX.X.X.pdf》,写这篇文章时最新版本的使用说明为:《开发板Core_Air780E使用说明V1.0.5.pdf》;核心板使用过程中遇到任何问题,可以直接参考这份使用说明pdf文档。

3.2 SIM卡

中国大陆环境下,可以上网的sim卡,一般来说,使用移动,电信,联通的物联网卡或者手机卡都行。

3.3 PC电脑

WINDOWS系统。

3.4 数据通信线

带TYPE-C口的USB数据线。

4、软件环境

4.1 Luatools工具

要想烧录LuatOS固件到4G模组中,需要用到的调试工具:Luatools;

详细使用说明参考:

Luatools工具使用说明:

https://docs.openluat.com/Luatools/

Luatools工具集具备以下几大核心功能:

一键获取最新固件:自动连接服务器,轻松下载最新的模组固件.

固件与脚本烧录:便捷地将固件及脚本文件烧录至目标模组中.

串口日志管理:实时查看模组通过串口输出的日志信息,并支持保存功能.

串口调试助手:提供简洁的串口调试界面,满足基本的串口通信测试需求.

Luatools下载之后,新建一个命名为"Luatools"的文件夹,将下载的Luatools_v3.exe拷贝或移动到新建的Luatools文件夹内,点击Luatools_v3.exe即可运行.

4.2 准备需要烧录的代码

首先要说明一点:脚本代码,要和固件的soc文件一起烧录.

4.2.1 烧录的底层固件文件

底层core下载地址:LuatOS固件版本下载地址

Air780E的底层固件在Luatools解压后目录的:

LuatOS-SoC_V1112_EC618_FULL.soc

4.2.2 烧录的脚本代码

首先,要下载Air780的LuatOS示例代码到一个合适的项目目录。

示例代码网站:

https://gitee.com/openLuat/LuatOS-Air780E

下载流程参考下图:

下载的文件解压,找到LuatOS-Air780E-master\demo\hmeta\main.lua,如图:

5、API说明

5.1 mcu.unique_id()

获取设备唯一id。

参数

返回值

返回值类型 解释

string

设备唯一id

例子

5.2 mobile.imei(index)

获取设备IMEI

参数

传入值类型 解释

int

编号,默认0.在支持双卡的模块上才会出现0或1的情况

返回值

返回值类型 解释

string

设备IMEI

例子

5.3 hmeta.model()

获取硬件型号

参数

返回值

返回值类型 解释

string

若能识别到,返回硬件型号,否则会是nil

例子

5.4 rtos.bsp()

获取硬件bsp型号

参数

返回值

返回值类型 解释

string

硬件bsp型号

例子

5.5 hmeta.hwver()

获取模组的硬件版本号

参数

返回值

返回值类型 解释

string

若能识别到,返回模组的硬件版本号,否则会是nil

例子

5.6 rtos.version()

获取固件版本号

参数

返回值

返回值类型 解释

string

固件版本号

例子

6、功能验证

6.1 烧录固件

6.1.1 正确连接电脑和4G模组电路板

使用带有数据通信功能的数据线,不要使用仅有充电功能的数据线.

6.1.2 识别4G模组的boot引脚

在下载之前,要用模组的boot引脚触发下载,也就是说,要把4G模组的boot引脚拉到1.8v,或者直接把boot引脚和VDD_EXT引脚相连.我们要在按下BOOT按键时让模块开机,就可以进入下载模式了.

具体到Air780E开发板:

1、当我们模块没开机时,按着BOOT键然后长按POW开机。

2、当我们模块开机时,按着BOOT键然后点按重启键即可。

6.1.3 识别电脑的正确端口

判断是否进入BOOT模式:模块上电,此时在电脑的设备管理器中,查看串口设备,会出现一个端口表示进入了boot下载模式,如下图所示:

6.1.4 用Luatools工具烧录

新建项目

首先,确保你的Luatools的版本,大于等于3.0.6版本的.

在Luatools的左上角上有版本显示的,如图所示:

Luatools版本没问题的话,就点击Luatools右上角的“项目管理测试”按钮,如下图所示:

这时会弹出项目管理和烧录管理的对话框,可以新建一个项目,如下图:

开始烧录

选择Air780E板子对应的底层core和刚改的main.lua脚本文件.下载到板子中.

点击下载后,我们需要进入boot模式才能正常下载.

如果没进入boot模式会出现下图情况:

进入boot模式下载,如图:

6.2 例程

6.3 对应log

7、总结

通过本章学习,你可以学习到模块唯一ID,模块硬件型号,固件版本,硬件版本的获取方法.

8、常见问题

8.1 模块唯一ID文档

mobile.sn()获取SN,出厂未必有写SN;一般用途的唯一id,可以用mobile.imei()代替;如需要真正的唯一ID,使用mcu.unique_id()

8.2 通过IMEI查询模块生产记录

分享完毕

4G模组软件指南 | 必读篇之模块信息(hmeta)的更多相关文章

  1. 泰拉瑞亚EasyBuildMod便捷建造模组开发详细过程

    pre { overflow-y: auto; max-height: 400px } img { max-width: 500px; max-height: 300px } github地址: ht ...

  2. 手把手教你基于luatos的4G(LTE Cat.1)模组接入华为云物联网平台

    摘要:本期文章采用了4G LTE Cat.1模块,编程语言用的是lua,实现对华为云物联网平台的设备通信与控制 本文分享自华为云社区<基于luatos的4G(LTE Cat.1)模组接入华为云物 ...

  3. opencv实现camera模组的暗电流和lenshading补偿 .

    目录(?)[-] 简介 基本原理 产生原因 校正补偿原理 具体实现 框架搭建 功能实现 暗电流 lenshading补偿 效果演示 图片处理 效果演示 简介 在接触过的qcom和mtk平台中,came ...

  4. 【转】Spark性能优化指南——基础篇

    http://mp.weixin.qq.com/s?__biz=MjM5NDMwNjMzNA==&mid=2651805828&idx=1&sn=2f413828d1fdc6a ...

  5. 【转】android camera(一):camera模组CMM介绍

    关键词:android  camera CMM 模组 camera参数平台信息:内核:linux系统:android 平台:S5PV310(samsung exynos 4210)  作者:xubin ...

  6. Spark性能优化指南——基础篇(转载)

    前言 在大数据计算领域,Spark已经成为了越来越流行.越来越受欢迎的计算平台之一.Spark的功能涵盖了大数据领域的离线批处理.SQL类处理.流式/实时计算.机器学习.图计算等各种不同类型的计算操作 ...

  7. Spark性能优化指南——基础篇

    本文转自:http://tech.meituan.com/spark-tuning-basic.html 感谢原作者 前言 在大数据计算领域,Spark已经成为了越来越流行.越来越受欢迎的计算平台之一 ...

  8. Java工程师学习指南 完结篇

    Java工程师学习指南 完结篇 先声明一点,文章里面不会详细到每一步怎么操作,只会提供大致的思路和方向,给大家以启发,如果真的要一步一步指导操作的话,那至少需要一本书的厚度啦. 因为笔者还只是一名在校 ...

  9. android camera(一):camera模组CMM介绍【转】

    转自:https://blog.csdn.net/kevinx_xu/article/details/8821818 androidcmm图像处理工作手机三星 关键词:android  camera ...

  10. iPhone X 的原深感模组

    物理与数字世界正走向融合,我们每天醒来的时间.睡眠时长.心率和步数等数据都会被分享.上传并转化为分析数据.无处不自的 AI.互联互通和软件平台将改变用户对现实的感知. 2018 年的 CES 展(国际 ...

随机推荐

  1. AutoMaper使用

    使用 AutoMapper 进行赋值 一. 什么是 AutoMapper AutoMapper是对象到对象的映射工具.在完成映射规则之后,AutoMapper可以将源对象转换为目标对象. 二. Aut ...

  2. 【爬虫实战】——利用bs4和正则表达式,简单实现爬取数据

    前言 好久没有写博客了,由于一直比较忙,感觉快荒废了学习的步伐,最近由于需要利用爬虫爬取数据,总结一下,以便以后查阅. 目录 一.bs4的安装 二.bs4解析器 三.定位查找标签 四.转换格式 五.提 ...

  3. 从cmake解决clion编译生成的可执行文件(.exe)不可执行的问题

    我这里没有显示报错,是直接闪退的情况,但是网上搜索的时候大多数是有报错弹窗的,运行报错提示为无法链接动态库.如下图: ![原图来自CSDN@LJY_kt11 一句话说清楚 原因是使用CLion编译的程 ...

  4. Identity – user login, forgot & reset password, 2fa, external login, logout 实战篇

    前言 之前写过一篇 Identity – User Login, Forgot Password, Reset Password, Logout, 当时写的比较简陋, 今天有机会就写多一篇实战版. 建 ...

  5. 二叉树的 Morris 中序遍历——O(1)空间复杂度

    回顾 问题陈述: 给定一棵二叉树,实现中序遍历并返回包含其中序序列的数组 例如给定下列二叉树: 我们按照左.根.右的顺序递归遍历二叉树,得到以下遍历: 最终中序遍历结果可以输出为: [3, 1, 9, ...

  6. Nuxt Kit 中的上下文处理

    title: Nuxt Kit 中的上下文处理 date: 2024/9/16 updated: 2024/9/16 author: cmdragon excerpt: Nuxt Kit 提供的上下文 ...

  7. 从0到1搭建权限管理系统系列三 .net8 JWT创建Token并使用

    说明 该文章是属于OverallAuth2.0系列文章,每周更新一篇该系列文章(从0到1完成系统开发). 该系统文章,我会尽量说的非常详细,做到不管新手.老手都能看懂. 说明:OverallAuth2 ...

  8. PasteForm最佳CRUD实践,实际案例PasteTemplate详解(一)

    本文将介绍soft.pastecode.cn出品的PasteForm,PasteForm是贴代码使用Dto思想实现的CRUD的一个组件,或者说输出一个思想! 为啥我觉得是最佳的CRUD呢?先结合你的实 ...

  9. Nuxt.js 应用中的 page:start 钩子详解

    title: Nuxt.js 应用中的 page:start 钩子详解 date: 2024/10/8 updated: 2024/10/8 author: cmdragon excerpt: pag ...

  10. ARM SMMU 与 IOMMU 的区别

    ARM SMMU (System Memory Management Unit) 和 IOMMU (Input-Output Memory Management Unit) 都是用于管理系统内存访问和 ...