C/C++教程

001-SLM130(NB-IOT,EC616)OpenCPU学习开发-硬件使用说明,编译下载和运行第一个程序(Mini板)

本文主要是介绍001-SLM130(NB-IOT,EC616)OpenCPU学习开发-硬件使用说明,编译下载和运行第一个程序(Mini板),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

<p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/LearnEC616_SLM130" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>

<iframe frameborder="0" height="1500" name="ifd" scrolling="auto" src="https://mnifdv.cn/resource/cnblogs/LearnEC616_SLM130" width="100%"></iframe>

 

实物图

 

 

 

模组搭载的EC616芯片简要

1,SLM130模组使用的是移芯EC616的NB-IOT芯片(全网通);

2,Cortex-M3内核(可直接使用Jlink或ST-Link下载调试程序);

3,MCU主频可达204MHz; 支持MPU;

4,低功耗(PSM:800nA; DRX:110uA; RX:10mA; TX:24mA);

5,EC616芯片实际有26个GPIO可用; 可配置为(3路UART, 2路SPI, 2路IIC, 4路12-bit ADC, 6路PWM, 6路GPIO输入计数,

6个AON GPIO能够在深度睡眠的时候,仍保持有效输出); 6路FEM IO或MIPI RFFE;  6路定时器; 

6,网络通信UDP, TCP, MQTT(S), CoAP, HTTP(S), LWM2M;

 

 

SLM130模块引脚说明

1.引脚图

 

 

2.引脚功能说明

BOOT   : 模组上电前拉低该引脚,模组进入程序下载模式, 运行状态保持悬空

RST      : 复位模组,低电平有效

IO12      : 默认作为AT指令数据输出引脚; 第二功能(SPI0_SCLK, I2C1_SCL, UART1_TXD, PWM1)

IO13      : 默认作为AT指令数据输入引脚; 第二功能(SPI0_MISO, I2C1_SDA, UART1_RXD, PWM0)

ADC1    : ADC采集引脚(0-3.3V)

BAT      : 模组供电引脚(2.2V ~ 4.5V), 极限电压5V!

SWDIO : SWD下载仿真调试引脚

SWCLK : SWD下载仿真调试引脚

IO14      : 通用GPIO; 第二功能(UART1_RXD, SPI0_MISO, UART0_RXD, PWM4)

IO11      : 通用GPIO; 第二功能(UART1_CTSn, SPI0_MOSI, UART0_CTSn, PWM3)

IO15      : 通用GPIO; 第二功能(UART1_TXD, SPI0_SCLK, UART0_TXD, PWM5)

IO16      : 通用GPIO; 第二功能(UART1_RTSn, SPI0_SSn0, UART0_RTSn, PWM2)

ADC2    : ADC采集引脚(0-3.3V)

IO19      : 通用GPIO; 第二功能(UART2_TXD, PWM5)

WAK     :模组休眠唤醒引脚,低电平有效

IO7       : 通用GPIO; 第二功能(SPI0_MOSI, I2C0_SCL, UART1_CTSn, PWM5)

IO6       : 通用GPIO; 第二功能(SPI0_SSn0, I2C0_SDA, UART1_RTSn, PWM4)

IO8       : 通用GPIO; 第二功能(I2C0_SDA, PWM1)

IO10     : 通用GPIO; 第二功能(I2C0_SCL, SPI1_SSn1 PWM0)

IO17     : 通用GPIO; 第二功能(I2C1_SCL, PWM2)

IO2       : 通用GPIO; 第二功能(UART0_RTSn, UART2_RXD, SPI1_SSn0, PWM0)

IO3       : 通用GPIO; 第二功能(UART0_CTSn, UART2_TXD, SPI1_MOSI, PWM1)

AON2   : 通用GPIO(模组休眠时可保持引脚状态)

IO0       : 通用GPIO; 第二功能(SPI0_SSn1, UART2_RXD)

IO9       : 通用GPIO; 第二功能(I2C1_SDA, PWM3)

IO4       : 通用GPIO; 第二功能(UART0_RXD, I2C1_SDA, SPI1_MISO, PWM2)

IO5       : 通用GPIO; 第二功能(UART0_TXD, I2C1_SCL, SPI1_SCLK, PWM3)

 

下载默认的AT指令程序(用来熟悉下下载流程)

1,打开串口烧录软件

 

 

 

 

 

 

 

 

 

 

 

 

2,选择 config_ec616.ini

这个 config_ec616.ini 文件只是个记录软件配置的文件哈, 不用理会...

 

 

 

 

3,默认就会添加上BootLoader文件和app文件

 

 

 

 

上面两个文件其实就是官方开发的AT指令程序,因为官方开发的底层默认有OTA(升级程序)功能, 所以呢才有BootLoader和APP两个文件.

其实呢这两个文件在这里

 

 

 

 

 

 

 

4,使用USB转串口模块连接电脑并连接开发板(推荐的接法)

下载程序是先让模组进入下载模式:BOOT接低电平,然后复位下模组, 模组就进入了下载模式

烧录软件本身会控制串口模组的DTR和RTS产生这样的信号, 咱就不需要手动控制模组进入下载模式了

 

 

 

 

5,使用USB转串口模块连接电脑并连接开发板(没有DTR和RTS, 需要手动控制模组进入下载模式)

 

 

 

一直按着BOOT按键--> 然后按下RST按键 --> 松开RST按键 -->松开BOOT按键

 

 

 

6,我就使用带DTR和RTS的模组连接测试

 

 

 

 

 

7,选择对应的串口, 然后点击下载

 

 

 

8,下载成功之后

 

 

 

9,复位下模组,程序就正常运行了

 

 

 

10,下载程序的口默认也是AT指令通信的口, 可以用串口调试助手测试下咱刚下载的AT指令固件

 

 

 

 

编译SDK开发的工程

1,安装keil5 (现在叫做MDK了)

从上面咱知道了EC616其实是ARM的内核, 所以编译呢需要使用ARMCC编译工具;

安装Keil5自行安装哈, 如果不会安装可以百度一下.

 

2,解压 ec616_sdk_rel_sdk_V001.037_20210526 文件

 

 

 

 

 

 

3,官方提供的SDK例程

注意哈, 那个BootLoader并不是升级程序例程, 咱在上面下载AT指令的时候说了哈, 官方开发的底层默认有OTA(升级程序)功能,

官方把BootLoader给咱只是为了咱在烧录程序的时候把这个程序烧录上........

 

 

 

4,先设置下交叉编译器 ARMCC的路径

使用记事本打开 KeilBuild.bat

 

 

 

 

 

 

 

路径根据自己keil的安装路径修改哈, 我的ARMCC的路径是 E:\MDK5\ARM\.....

 

 

 

所以呢, (根据自己的路径设置完以后,保存关闭)

 

 

 

 

5,先把那个BootLoader编译一下(忘了说了, 保证是英文目录哈)

 

 

 

 

 

 

 

6,先把那个BootLoader编译一下(忘了说了, 保证是英文目录哈)

输入  KeilBuild.bat ec616_0h00-bootloader

然后点回车

 

 

 

 

编译完成

 

 

 

 

7,编译之后的文件在这里

 

 

 

outbuildlog.txt 是编译的日志文件

 

 

 

 

编译BootLoader就会生成个BootLoader文件夹

里面有编译好的bin文件

 

 

 

 

 

 

8,编译driver_example例程

 

 

 

9,输入  KeilBuild.bat ec616_0h00-driver_example   然后回车

注意了没, 编译官方提供的工程的时候  KeilBuild.bat ec616_0h00-(编译的工程名字)

不要为我为啥要这样子规定, 因为不是我做的底层和编译规则! 按照人家制定的规则来哈.

提示: 第一次编译,编译时间有点长...........

 

 

 

 

 

 

 

9,同样也会在 out\ec616_0h00 生成编程的文件

 

 

 

 

 

下载 driver_example 程序(串口方式)

1.在下载软件上替换BootLoader.bin文件, 选中那行 然后鼠标右键

 

 

 

选择咱上面编译的BootLoader文件

 

 

 

2.同样的替换掉下面的文件

 

 

 

3.然后按照前面说的下载步骤点击下载程序

 

 

 

4,复位下模组,程序就正常运行了

 

5,咱刚才下载的 driver_example程序功能是串口1收到什么数据就回复什么数据

刚才的那个下载口就是串口1, 咱可以打开串口调试助手测试下

 

 

 

下载 driver_example 程序(SWD方式)

1,安装keil的EC616的开发支持包

 

 

 

 

把Eigencomm.EC616.1.0.4.pack 拷贝到keil的安装目录,双击安装即可

 

 

 

 

 

 

 

2,使用Jlink或者ST-Link连接开发板

 

 

 

3,打开

 

 

 

 

 

 

 

4, 选择 driver_example 编程文件夹

 

 

 

5, 后面的名字改为 driver_example

 

 

提示:上面实际上就是指定 xxxxxxx.axf  文件路径

 

 

 

6, 选择自己的下载器

 

 

 

7, 设置flash下载配置

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

8, 然后点击下载即可

 

 

 

 

 

 

 

9, 下载完成以后测试即可

 

 

 

补充

1,关于编译的其它指令

 

 

 

这篇关于001-SLM130(NB-IOT,EC616)OpenCPU学习开发-硬件使用说明,编译下载和运行第一个程序(Mini板)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!