001-SLM130(NB-IOT)C-SDK(OpenCPU)学习开发-硬件使用说明,编译下载和运行第一个程序(Mini板)
<p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/LearnEC616_SLM130" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>
实物图
SLM130模块引脚说明
1.引脚图(注意带*号的, 开发板标识有误,按照最外围标识为准)
2.引脚功能说明(所有引脚电平为3.3V)
BOOT : GPIO1, 模组上电前拉低该引脚,模组进入程序下载模式, 运行状态保持悬空
RST : 复位模组,低电平有效
IO12 : 默认作为AT指令数据输出引脚; 第二功能(SPI0_SCLK, I2C1_SCL, UART1_TXD, PWM1)
IO13 : 默认作为AT指令数据输入引脚; 第二功能(SPI0_MISO, I2C1_SDA, UART1_RXD, PWM0)
ADC2 : ADC采集引脚(0-1V)
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)
ADC1 : ADC采集引脚(0-1V)
GPIO21(AON2) : 通用GPIO(模组休眠时可保持引脚状态)
WAK :模组休眠唤醒引脚,低电平有效
IO10 : 通用GPIO; 第二功能(I2C0_SCL, SPI1_SSn1PWM0)
IO8 : 通用GPIO; 第二功能(I2C0_SDA, PWM1)
IO6 : 通用GPIO; 第二功能(SPI0_SSn0, I2C0_SDA,UART1_RTSn, PWM4)
IO7 : 通用GPIO; 第二功能(SPI0_MOSI, I2C0_SCL,UART1_CTSn, PWM5)
IO17 : 通用GPIO; 第二功能(I2C1_SCL, PWM2)
IO2 : 通用GPIO; 第二功能(UART0_RTSn, UART2_RXD,SPI1_SSn0, PWM0)
IO3 : 通用GPIO; 第二功能(UART0_CTSn, UART2_TXD,SPI1_MOSI, PWM1)
IO19 : 通用GPIO; 第二功能(UART2_TXD, PWM5)
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例程
4,先设置下交叉编译器 ARMCC的路径
使用记事本打开 KeilBuild.bat
路径根据自己keil的安装路径修改哈, 我的ARMCC的路径是E:\MDK5\ARM\.....
所以呢, (根据自己的路径设置完以后,保存关闭)
5,双击
5,先把那个BootLoader编译一下
提示:下载程序的时候其实是需要把BootLoader和执行具体功能的程序一块下载进去
程序执行的时候是先运行BootLoader, BootLoader再加载运行具体功能的程序
输入 KeilBuild.bat ec616_0h00-bootloader 然后点回车
编译完成之后
7,编译之后的文件在这里
提示:上面的 outbuildlog.txt 是编译日志文件
8,编译driver_example例程
9,输入 KeilBuild.bat ec616_0h00-driver_example 然后回车
注意了没, 编译官方提供的工程的时候规则是 KeilBuild.bat ec616_0h00-(编译的工程名字)
不要为我为啥要这样子规定, 因为不是我做的底层和编译规则!
按照人家制定的规则来哈
提示: 第一次编译,编译时间有点长...........
9,同样也会在 out\ec616_0h00 生成编译后的文件
下载编译后的程序(串口方式)
1.在下载软件上替换BootLoader.bin文件, 选中那行 然后鼠标右键
选择咱上面编译的BootLoader文件
2.同样的替换掉下面的文件
3.然后按照前面说的下载步骤点击下载程序
4.复位下模组,程序就正常运行了
4.咱刚才下载的 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,关于编译的其它指令