DTU网关开发方案——芯讯通4G模组C二次开发

Source

前言

物联网现在越来越热,去年给客户定制了一款低成本DTU网关,采用MCU(STM32)+4G模组的方案,支持协议定制、远程配置、断缓续传,成本不到同行一半,价钱便宜量又足 o( ̄︶ ̄)o
在这里插入图片描述
同时有些应用场景要求的功能简单、性能较低,类似于DTU,但是量大、要求成本更低,于是考虑在模组上做二次开发的方案,榨干硬件的资源。其实我感觉现在模组厂都慢慢变成方案厂了,比如乐鑫、移远。。。不过各家的技术、市场路线差别很大,我之前差点不小心被带到沟里去了。
之前合作过的4G模组厂有移远、芯讯通、合宙等,其中:

  1. 移远:不支持二次开发;
  2. 合宙:展讯方案,支持二次开发,But:
    主推Lua脚本开发——性能较低,放弃;
    对C语言开发仅提供SDK但不提供技术支持——坑太多,放弃;
  3. 芯讯通:ASR方案,支持万能的C,欧耶,就他了~
    开发板采用通用母卡+各模组子卡形式:
    在这里插入图片描述

我选的模组型号是A7600C1-MNSE(比A7600C1多个GPS功能),与文档中稍有不同。
文档比较齐全,质量也比较高,照着做基本就OK了。
在这里插入图片描述
开发文档由于版权原因就不上传了,需要的可以联系供应商获取。
在这里插入图片描述
以下简单记录下开发过程,希望大家少走点弯路。

驱动

1.母卡micro-USB
USB转串口CP2105,连至模块的主串口、调试串口
2. 子卡micro-USB
连至模块USB口,内部模拟出5个端口:
3个串口:AT、调试、GPS;
1个Modem;
1个网口:NDIS;
在这里插入图片描述

编辑

我的开发环境是Win10/VS Code
在这里插入图片描述
主要是理清代码的目录结构,修改相应的makefile,最好是一步一步来,这样更快点:
1.什么都不改,编译demo;
2.改函数内容,比如修改Application里面的打印内容;
3.改函数,修改函数名,或者新增函数;
4.改文件,新增文件;
5.改目录,新增目录;
在这里插入图片描述

编译

交叉编译链工具已经安装配置好了,直接build就可以了:
build.bat A7600C1_MNSE all
在这里插入图片描述
请添加图片描述请添加图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

下载

ASR提供的下载工具aboot
在这里插入图片描述
第一次要下载完整包,以后只需要下载应用包即可:
在这里插入图片描述
注意:点“Start”后,开发板需关电重启,才会进入下载模式!
在这里插入图片描述
自动开始下载
在这里插入图片描述
注意:下载完成后,需点“Back”、开发板再次关电重启,才会恢复工作模式!
在这里插入图片描述

调试

ASR提供的调试工具CATStudio,只能打印调试,不能设断点。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

注意:选择Device 1
在这里插入图片描述
在这里插入图片描述
选择模组型号:
在这里插入图片描述
在这里插入图片描述
设置过滤:
在这里插入图片描述
也可以输出调试信息至调试串口:
在这里插入图片描述

开发

OK,下面可以开始按照API愉快地玩耍了~
在这里插入图片描述

后话

第一次发帖,错漏之处欢迎指正,有问题大家一起交流~
QQ 435223420