ESP-01S 使用 arduino 烧录程序

2024-06-02 11:12

本文主要是介绍ESP-01S 使用 arduino 烧录程序,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述

一、设置 arduino 编辑器

1、文件-首选项-附加开发版管理网址中添加
http://arduino.esp8266.com/stable/package_esp8266com_index.json

image.png

2、工具-开发板管理
搜索 8266 并下载

image.png
)

3、工具-开发板
在 8266 里面选择 Generic ESP8266 Module

4、工具-端口
记得选择对应的端口

二、接线

必须按照下图规定接线(GPIO2 可以不用接),
VCC(3.3V) 先不接

GND 接 GND

TX 接 RX

RX 接 TX

其余的按下表
image.png

三、上传

在usb转串口工具连接到电脑 USB 之前,必须吧 vcc 先断开。
然后把转串口工具连接上 usb,然后上传代码,在下图时候才可插入 VCC

image.png

输出如下则上传代码完毕
image.png

四、运行板子

1、拔掉 USB 转串口工具提供的 3.3v 电压

2、将 GPIO0 引脚插入接入到高电平

3、插入USB 转串口工具提供的 3.3v 电压即可看到串口监视器开始输出了

4、从别的电源模块引用一个稳定的 3.3v 电压(比如 arduino 提供的 3.3v), 否则可能启动板子就报错

5、共地,别的电源的 GND 引脚要和 usb转串口工具的 GDN 引脚接到一起(否则串口工具输出是乱码)

五、测试代码

可以烧录实例程序中的 Blink 案例测试,代码如下

/*ESP8266 Blink by Simon PeterBlink the blue LED on the ESP-01 moduleThis example code is in the public domainThe blue LED on the ESP-01 module is connected to GPIO1(which is also the TXD pin; so we cannot use Serial.print() at the same time)Note that this sketch uses LED_BUILTIN to find the pin with the internal LED
*/void setup() {Serial.begin(9600);pinMode(LED_BUILTIN, OUTPUT);     // Initialize the LED_BUILTIN pin as an output
}// the loop function runs over and over again forever
void loop() {Serial.print("hello \n ");digitalWrite(LED_BUILTIN, LOW);   // Turn the LED on (Note that LOW is the voltage level// but actually the LED is on; this is because// it is active low on the ESP-01)delay(1000);                      // Wait for a seconddigitalWrite(LED_BUILTIN, HIGH);  // Turn the LED off by making the voltage HIGHdelay(5000);                      // Wait for two seconds (to demonstrate the active low LED)
}

烧录完成后 把 arduino 板子的 3.3v 和 GND 连接到 esp01s 板子即可看到 5s 的间隔灯会闪一下

四、常见报错

1、A fatal esptool.py error occurred: Cannot configure port. PermissionError(13, ‘A device attached to the system is not functioning.’, None, 31

驱动问题,下载老版本即可,一般只是 D1 板子在 win11 会出这个问题

下载地址: https://electropeak.com/learn/download/ch341ser-zip/# ,注意:一定要下载这个压缩包这个 ch341ser-zip

注意:重新安装驱动前先关闭 arduino ide

2、A fatal esptool.py error occurred: Cannot configure port, something went wrong. Original message: PermissionError(13, ‘�ܾ����ʡ�’, None, 5)

可能是电脑 usb 插了多个扩展坞冲突了,都拔了试试,排查几天才发现出来的。

一些其他异常

参考:https://links2004.github.io/Arduino/dc/deb/md_esp8266_doc_exception_causes.html

3、ets Jan 8 2013,rst cause:4, boot mode:(3,2)

反正就是一堆这种提示stack>>>
3fffff20: 40226457 d334fe18 4021024c 3ffed430
3fffff30: 3fff256c 00000001 40226496 40210265
3fffff40: 402262a5 3fff2794 3fffff80 3fff1dac
3fffff50: 3ffe0000 3fff256c 3ffef780 40226c94
3fffff60: 3fff2794 3fff1dac 3ffeaf26 402259f7
3fffff70: 3fff1dac 00000014 40225fa2 3fff2794
3fffff80: 3fff1dac 3fffdc80 3fff1e14 3fff0460
3fffff90: 4021d93b 3fff2794 00000000 4020767f
3fffffa0: 40000f49 3fffdab0 3fffdab0 40000f49
<<<stack<<<

也是排查几天才解决…

上传完毕代码后,将 vcc 和 gnd 插入到别的稳定电源,比如 arduino 上面。rx 和 tx 保持不变就可以继续调试串口了。

这篇关于ESP-01S 使用 arduino 烧录程序的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1023801

相关文章

sky-take-out项目中Redis的使用示例详解

《sky-take-out项目中Redis的使用示例详解》SpringCache是Spring的缓存抽象层,通过注解简化缓存管理,支持Redis等提供者,适用于方法结果缓存、更新和删除操作,但无法实现... 目录Spring Cache主要特性核心注解1.@Cacheable2.@CachePut3.@Ca

C#下Newtonsoft.Json的具体使用

《C#下Newtonsoft.Json的具体使用》Newtonsoft.Json是一个非常流行的C#JSON序列化和反序列化库,它可以方便地将C#对象转换为JSON格式,或者将JSON数据解析为C#对... 目录安装 Newtonsoft.json基本用法1. 序列化 C# 对象为 JSON2. 反序列化

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

Python ORM神器之SQLAlchemy基本使用完全指南

《PythonORM神器之SQLAlchemy基本使用完全指南》SQLAlchemy是Python主流ORM框架,通过对象化方式简化数据库操作,支持多数据库,提供引擎、会话、模型等核心组件,实现事务... 目录一、什么是SQLAlchemy?二、安装SQLAlchemy三、核心概念1. Engine(引擎)

Java Stream 并行流简介、使用与注意事项小结

《JavaStream并行流简介、使用与注意事项小结》Java8并行流基于StreamAPI,利用多核CPU提升计算密集型任务效率,但需注意线程安全、顺序不确定及线程池管理,可通过自定义线程池与C... 目录1. 并行流简介​特点:​2. 并行流的简单使用​示例:并行流的基本使用​3. 配合自定义线程池​示

GO语言中函数命名返回值的使用

《GO语言中函数命名返回值的使用》在Go语言中,函数可以为其返回值指定名称,这被称为命名返回值或命名返回参数,这种特性可以使代码更清晰,特别是在返回多个值时,感兴趣的可以了解一下... 目录基本语法函数命名返回特点代码示例命名特点基本语法func functionName(parameters) (nam

使用shardingsphere实现mysql数据库分片方式

《使用shardingsphere实现mysql数据库分片方式》本文介绍如何使用ShardingSphere-JDBC在SpringBoot中实现MySQL水平分库,涵盖分片策略、路由算法及零侵入配置... 目录一、ShardingSphere 简介1.1 对比1.2 核心概念1.3 Sharding-Sp

Java 正则表达式的使用实战案例

《Java正则表达式的使用实战案例》本文详细介绍了Java正则表达式的使用方法,涵盖语法细节、核心类方法、高级特性及实战案例,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录一、正则表达式语法详解1. 基础字符匹配2. 字符类([]定义)3. 量词(控制匹配次数)4. 边

Python Counter 函数使用案例

《PythonCounter函数使用案例》Counter是collections模块中的一个类,专门用于对可迭代对象中的元素进行计数,接下来通过本文给大家介绍PythonCounter函数使用案例... 目录一、Counter函数概述二、基本使用案例(一)列表元素计数(二)字符串字符计数(三)元组计数三、C

使用Spring Cache本地缓存示例代码

《使用SpringCache本地缓存示例代码》缓存是提高应用程序性能的重要手段,通过将频繁访问的数据存储在内存中,可以减少数据库访问次数,从而加速数据读取,:本文主要介绍使用SpringCac... 目录一、Spring Cache简介核心特点:二、基础配置1. 添加依赖2. 启用缓存3. 缓存配置方案方案