ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

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

2022-03-29 02:31:53  阅读:790  来源: 互联网

标签:OpenCPU SLM130 模组 EC616 引脚 编译 串口 GPIO 下载


<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,关于编译的其它指令

 

 

 

标签:OpenCPU,SLM130,模组,EC616,引脚,编译,串口,GPIO,下载
来源: https://www.cnblogs.com/yangfengwu/p/16069952.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有