赞
踩
ESP8266 系列无线模块是安信可科技自主研发设计的一系列高性价比 Wi-Fi SoC 模组。该系列模块支持标准的 IEEE802.11 b/g/n 协议,内置完整的TCP/IP 协议栈。用户可以使用该系列模块为现有的设备添加联网功能,也可以构建独立的网络控制器。
安信可科技为客户提供完整的硬件、软件参考方案,以便缩短您的产品研发周期,为您节省成本投入。
1.1产品特性
体积超小的 802.11b/g/n Wi-Fi SoC 模块
采用低功率 32 位 CPU,可兼作应用处理器
主频最高可达 160MHz
内置 10 bit 高精度 ADC
支持 UART/GPIO/IIC/PWM/ADC/HSPI 等接口
集成 Wi-Fi MAC/ BB/RF/PA/LNA
支持多种休眠模式,深度睡眠电流低至 20uA
内嵌 Lwip 协议栈
支持 STA/AP/STA+AP 工作模式
支持 Smart Config/AirKiss 一键配网
串口速率最高可达 4Mbps
通用 AT 指令可快速上手
支持 SDK 二次开发
支持串口本地升级和远程固件升级(FOTA)
1.2选型表
注意:选型表中的模组为安信可热卖款。选型表中的信息会变更,例如模组的型号会不断的更新,模组的相关认证,我司也会持续的做模组的相关认证,请以官网信息为准。
安信可系列模组型号较多,在此提供基础的典型接线图,用户可基于如下典
型接线图接线调试更多电路设计请参考用户手册: https://docs.ai- thinker.com/esp8266/docs
注意:尽量不要使用 USB 转 TTL 的 3.3V 或 5V 供电。建议使用 2 节干电池或经过 LDO 转换后的 3.3V 供电。
2.1典型接线图
各型号 ESP 典型接线图如下所示,图中电阻均为 10K.
如需进入下载模式需要在对应模块图示基础上将 GPIO0 接地。
本章节主要讲解如何使用烧录工具为模组下载程序,其中包括:
下载软件的配置选项说明
完整的固件所包含的文件说明
如何将下载所需的文件打包合成一个完整的固件
烧录失败的原因
烧录软件下载链接:https://docs.ai-thinker.com/tools
3.1 软件说明
该软件可以为 ESP8266,ESP8285(
8285
请选择 ESP8285),ESP32 刷写固件,用户可以将编译生成的文件下载到模块中指定的位置。以刷写 ESP8266 固件示例,具体操作步骤如下。
1.下载、解压并执行 ESPFlashDownloadTool_vx.xx.xx.exe,将弹出如下界面。黑窗可以查看烧录过程的一些信息,另一个为登录界面,用来选择相应芯片的下载界面。
例如ESP-01M,ESP-01F 为 的芯片,下载时
2.点击 ESP8266 Download Tool,弹出如下界面
固件烧写软件配置参数说明如下:
配置选项:
1、Download_Path_Config(选择要下载的文件以及下载地址,点击 start 下载勾选后的文件)
2、CrystalFreq:(设置晶振频率。8266 的晶振频率为 26M,此处禁止修改)
3、SPI_SPEED:(设置 SPI 速率,默认 40M,此处禁止修改)
4、SPI_MODE :(设置 SPI 下载模式,默认为通用下载模式 DOUT)
5、Flash_Size:(设置 flash 容量参考下一小节 3.2 章节根据实际编译的配置对应选择的 Flash 大小16Mbit-C1为1024+1024的布局,32Mbit-C1为1024+1024的布局)
6、CombineBin:(打包合并固件,下载地址为 0x0。参考章节 3.3)
7、DoNotChgBin:(选择该项,Flash 的运行频率、方式、布局会以用户编译时的配置为准未选择该项,Flash 的运行频率、方式、布局会以下载工具最终的配置为准)
下载安信可官方 AT 固件时建议勾选,其他不建议勾选
8、Lock settings:(选择该项,将锁住配置页面该选项一般在工厂生产中使用,避免操作过程中改动了软件上的配置,造成生产问题)
9、Default:(选择该项,将恢复默认的软件配置。)
10、Detected info:(该窗口将会显示 flash 的大小和晶振频率)
11、MAC address:(该窗口将会显示 ESP8266 芯片的 MAC 地址,包括STA MAC ADDRESS 和 AP MAC ADDRESS。安信可生产的 ESP8266 系列模组的 STA MACADDRESS 都可以在官网的防伪查询系统中查到地址:https://www.ai-thinker.com/service/autifake)
12、COM:(设置 COM 口)
13、BAUD:(设置下载波特率下载时可以适当降低下载波特率,保证稳定下载(有些串口工具不支持 1500000 的波特率下载)
14:START:(点击该按钮,开始烧录程序)
15、STOP:( 点击该按钮,停止烧录程序)
16、ERASE :(点击该按钮,擦除整个 flash)3.2 固件烧写
按照烧录文件的不同,分为两种情况:支持云端升级、不支持云端升级。另外,根据 flash 容量的不同,还需要调整 bin 文件的烧录地址。在安信可官网下载的 AT 固件都是打包合并过的固件,参考章节 3.3
注意:乐鑫不同版本的 SDK 中可能会改变 eagle.irom0text.bin 文件的烧录地址,以控制台输出的地址为准。
注意:支持云端升级的固件,在 flash 布局会分为两个区,一个用来执行程序,另一个用来保存要升级的固件。当程序运行在 user1 时开始升级,程序会下载到 user2 区域,下载完毕后,下次启动运行 user2 的程序,依次替换,实现云端升级。
User1.Bin 文件和 User2bin 文件烧录时只烧录其中一个
Boot.bin 文件使用最新版本
分区说明:
系统程序:用于存放运行系统必要的固件
用户数据:当系统数据未占满整个 flash 空间时,空闲区域可用于存放用户数据。
用户参数:地址由用户自定义,IOT_Demo 中设置为 0x3C000 开始的
4 个扇区,用户可以设置为任意未占用的地址
系统阐述:固件 flash 的最后 4 个扇区
- Blank.bin 下载地址为 Flash 的倒数第 2 个扇区
- ESP_init_data_default.bin 下载地址为 flash 的倒数第四个扇区
Boot 信息:位于 FOTA 固件的分区 1,存放 FOTA 升级相关信息
预留:位于 FOTA 固件的分区 2,与分区 1 Boot 信息区对应的预留区域
User.bin 说明 user1.bin 和 user2.bin 是同一个应用程序,选择不同的编译步骤分别生成的两个固件,存放在 SPI Flash 不同位置,启动时先运行 Boot,Boot 读取系统参数区中的标志位,判断运行行 user1.bin 还是user2.bin,然后到 SPI Flash 的对应位置读取运行。
BIN | 烧录地址 | 说明 |
boot.bin | 0x0000 | 引导程序 |
ESP_init_data_defauit.bin | 0x1FC000 | 初始化其他射频参数区,至少烧录一次 当 RF_CAL 参数区初始化烧录时,本区域也会 烧录 |
user1.2048.new.5.bin | 0x01000 | 用户程序 |
blink.bin | 0xFE000 | 初始化用户参数区 |
blink.bin | 0x1FE000 | 初始化系统参数区 |
blink.bin | 0x1FB000 | 初始化 RF_CAL 参数区 |
在第二章节有讲到模组启动模式,在我们烧录固件之前,最好先确认一下,模组是否进入下载模式。
1. 首先确保模组可以正常运行,发送 AT 指令(AT 固件)可以有回复 OK(即确保电源和串口都是正常的);
2. 参考章节 2.2 接线,在 74880 波特率下观察模组启动或复位后的打印信息;
3. 若出现以下信息则认为模组已经进入了下载模式,可以进行下载;(参考
章节 4.1 ,74880 波特率下输出的系统日志信息说明)。
烧录导致失败的原因一般分为几种。
1 COM 口选择错误或者 COM 被占用; 电源电压不稳定;
2 如果卡在了等待上电过程,在确认接线无误的情况下,将 RST 引脚接地复位一下即可;
3 串口芯片选型不对,该模组的串口电平为 TTL 电平,串口芯片建议使用类似 CH340、CP210X 等芯片。不要使用 232、485 甚至 PC 的九针孔接口来烧录;
4 串口不稳定,接入串口时,一定要把地线接上;
5 下载软件的 flash_size 选项超过了模组实际的 flash 大小,即 8M 的 flash,按照 32M 烧录肯定是不可以的。
下载波特率过大。有部分串口芯片的下载波特率并不支持 1500000,甚至由于接线方式的原因、使用的烧录线品质较差、线太长等原因导致太高的波特率下载容易失败,需要适当降低下载波特率;
efuse 损坏。由于静电的原因导致芯片损坏,下载软件的 efuse 校验无法通过。可以参考一下黑窗输出的信息;
当 Wi-Fi
MCU串口,此时为 Wi-Fi
录固件建议切断 MCU 与 Wi-Fi
MCU的复位引脚拉
低,让 MCU 处于复位模式;
模组的串口已经连接了用户产品的
模组烧
模组的串口连接或者将
使用软件上的 CombineBin 按键可以将文件打包合并成一个完整的固件。
ESP 系列模组在烧录固件时是按照要烧录的文件地址烧录对应文件的大小到flash,其他部分的 flash 未改动,例如 user1.bin 文件为 320K,从flash 地址 0x01000地址开始烧录,烧录 320K 字节,如果第二次烧录的时候,编译生成的 user1.bin 只有 300k,那么比对上一次烧录的 user1.bin 文件在 flash 中的存储,后面的 20Kfalsh 是不会擦除的。
这样的烧录方式在大批量生产中是不安全的,尤其是有部分客户会在 flash 中添加自己的一些数据直接烧录进去。
将所有的固件打包合并成一个完整的固件,烧录时会填充整个 flash,对应地址没有程序部分的 flash 会被 0xFF 填充。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。