精华内容
下载资源
问答
  • ESP32 HTTPS服务器 ... 特征 ...在可以绑定到URL的回调函数中处理请求,例如在Express或Servlet中。...该库是自包含的,只需要ArduinoESP32系统库。 运行示例还需要WiFi库。 设定说明 安装该库的步骤取决于您使
  • 根据网上资料整理最完整的ESP32 Arduino开发环境搭建说明,可以根据说明制作自己的开发板。
  • 利用VScode进行ESP32 Arduino开发开发环境搭建、最简易进行arduino操作esp32/8266的办法!总结文档
  • ESP32 将天线开关、RFbalun、功率放大器、接收低噪声放大器、滤波器、电源管理模块等功能集于一体。而且该单片机社区庞大,有很多的源码和技术支持。我们也最终选择这款单片机。 时钟信号的处理 从网络获取时间 ...
  • 用于ESP32的简单Arduino蓝牙音乐接收器和发送器 ESP32提供了一个蓝牙A2DP API,可从您的手机接收声音数据,并通过回调方法使之可用。 输出是从SBC格式解码的PCM数据流。 该文档可在找到。 I2S是用于将数字音频设备...
  • Arduino增加ESP32支持 mirrors-arduino-esp32-master ESP32的板子支持库 解压后,放在 arduino-1.8.13 的安装目录\hardware\里面 例如:D:\program\arduino-1.8.13\hardware 其他库: ESP32-Arduino-SoftwareSerial...
  • 您是否正在使用ESP32开发IoT设备? 您将节省至少一个月的开发时间。 我们不在乎您的云平台,IotPitcher是您的应用程序的助手。 IotPitcher是一个物联网开发框架,可通过以下功能轻松构建和配置: 用户友好的AP...
  • ESP32Arduino核心 需要帮助或者有疑问吗? 在加入聊天 内容 发展状况 最新稳定版本 最新开发版本 安装说明 使用Arduino IDE板管理器(首选) 将Arduino IDE与开发资料库一起使用 解码异常 您可以使用获得有意义...
  • ESP32-Arduino代码.rar

    2020-03-06 11:56:06
    DHT11_Test OLED_Test RGB_TEST Serial_Test 入门demo参考
  • 配置arduino esp32环境 1.首先arduino ide直接在官网下载就可以了,附上官网: https://www.arduino.cc/en/Main/Software 我用的是windows系统版本的,所以下面遇到的问题也是争对这个系统,不知道linux等其他系统...
  • esp32_MusicPlayer:ESP32音乐播放器,在arduino-esp32中具有简单代码(I2S接口)
  • 现在Arduino可以为您的esp32项目编程ULP协处理器。 以下指南假定您使用板管理器以首选方法安装了esp32内核。 通常,在Arduino中,您可以使用'.S'扩展名编译汇编文件。 使用ESP32 Arduino核心框架,这些文件将对应...
  • ESP8266和ESP32 Arduino项目的makefile。 该项目的主要目的是为使用ESP / Arduino框架的项目提供一个简约而又功能强大且易于配置的Makefile,为: : 和 使用make代替Arduino IDE,可以更轻松地进行更多面向生产...
  • ESP32 Arduino驱动0.91“ OLED

    千次阅读 2021-09-22 23:24:38
    采用I2C通信,必然涉及到引脚的定义,将I2C使用到的ESP32的引脚在程序中体现出来。采用Ware.h中的setPins() 或者begin()函数均可设置ESP32的具体引脚用于I2C通信。 //call setPins() first, so that begin() can be...

    0.91“ OLED实物

    在这里插入图片描述

    I2C引脚定义

    采用I2C通信,必然涉及到引脚的定义,将I2C使用到的ESP32的引脚在程序中体现出来。采用Wire.h中的setPins() 或者begin()函数均可设置ESP32的具体引脚用于I2C通信。

        //call setPins() first, so that begin() can be called without arguments from libraries
        bool setPins(int sda, int scl);
        
        bool begin(int sda=-1, int scl=-1, uint32_t frequency=0); // returns true, if successful init of i2c bus
          // calling will attemp to recover hung bus
    

    setPins() 和begin()函数的具体实现在Wire.cpp中可见:

    bool TwoWire::setPins(int sdaPin, int sclPin)
    {
        if(i2c) {
            log_e("can not set pins if begin was already called");
            return false;
        }
        sda = sdaPin;
        scl = sclPin;
        return true;
    }
    
    bool TwoWire::begin(int sdaPin, int sclPin, uint32_t frequency)
    {
        if(sdaPin < 0) { // default param passed
            if(num == 0) {
                if(sda==-1) {
                    sdaPin = SDA;    //use Default Pin
                } else {
                    sdaPin = sda;    // reuse prior pin
                }
            } else {
                if(sda==-1) {
                    log_e("no Default SDA Pin for Second Peripheral");
                    return false; //no Default pin for Second Peripheral
                } else {
                    sdaPin = sda;    // reuse prior pin
                }
            }
        }
    
        if(sclPin < 0) { // default param passed
            if(num == 0) {
                if(scl == -1) {
                    sclPin = SCL;    // use Default pin
                } else {
                    sclPin = scl;    // reuse prior pin
                }
            } else {
                if(scl == -1) {
                    log_e("no Default SCL Pin for Second Peripheral");
                    return false; //no Default pin for Second Peripheral
                } else {
                    sclPin = scl;    // reuse prior pin
                }
            }
        }
    
        sda = sdaPin;
        scl = sclPin;
        i2c = i2cInit(num, sdaPin, sclPin, frequency);
        if(!i2c) {
            return false;
        }
    
        flush();
        return true;
    
    }
    

    Arduino程序

    //  Author: Nick
    //  Date:22 Sep,2021
    
    //  This library is free software; you can redistribute it and/or
    //  modify it under the terms of the GNU Lesser General Public
    //  License as published by the Free Software Foundation; either
    //  version 2.1 of the License, or (at your option) any later version.
    //
    //  This library is distributed in the hope that it will be useful,
    //  but WITHOUT ANY WARRANTY; without even the implied warranty of
    //  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    //  Lesser General Public License for more details.
    //
    //  You should have received a copy of the GNU Lesser General Public
    //  License along with this library; if not, write to the Free Software
    //  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
    
    //ESP32 Arduino驱动0.91" OLED
    //NODEMCU-32 V1.2
    //Arduino V1.8.16
    //参考链接:
    //未说明SDA和SCL引脚设定:http://www.taichi-maker.com/homepage/reference-index/display-reference-index/arduino-oled-application/
    //SDA和SCL在ware.begin()中定义:https://blog.csdn.net/qq_42805977/article/details/107765966
    
    #include <Wire.h>
    
    // 引入驱动OLED0.91所需的库
    #include <Adafruit_GFX.h>
    #include <Adafruit_SSD1306.h>
    
    #define SCREEN_WIDTH 128 // 设置OLED宽度,单位:像素
    #define SCREEN_HEIGHT 32 // 设置OLED高度,单位:像素
    
    // 自定义重置引脚,虽然教程未使用,但却是Adafruit_SSD1306库文件所必需的
    #define OLED_RESET 4
    Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
    
    void setup()
    {
      Wire.begin(/*SDA*/17,/*SCL*/16);
      // 初始化OLED并设置其IIC地址为 0x3C
      display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
    }
    
    void loop()
    {
      words_display();
      display.display();
    }
    
    void words_display()
    {
      // 清除屏幕
      display.clearDisplay();
    
      // 设置字体颜色,白色可见
      display.setTextColor(WHITE);
    
      //设置字体大小
      display.setTextSize(1.5);
    
      //设置光标位置
      display.setCursor(0, 0);
      display.print("0.91 OLED");
    
      display.setCursor(0, 10);
      display.print("Run time: ");
      //打印自开发板重置以来的秒数:
      display.print(millis() / 1000);
      display.print(" s");
    
      display.setCursor(0, 20);
      display.print("Author: ");
      display.print("Nick");
    }
    

    参考链接

    1)说明整体实现思路及库添加注意事项,未说明SDA和SCL引脚设定:http://www.taichi-maker.com/homepage/reference-index/display-reference-index/arduino-oled-application/
    在这里插入图片描述

    2)说明SDA和SCL引脚设定,即SDA和SCL在Wire.begin()中定义:https://blog.csdn.net/qq_42805977/article/details/107765966

    void setup() 
    {
      Wire.begin(/*SDA*/12,/*SCL*/14);
    }
    
    展开全文
  • 1.ESP32 Arduino安装 文件->首选项 添加开发吧管理网址: https://dl.espressif.com/dl/package_esp32_index.json 工具->开发板->开发板管理器,搜索ESP32,点安装(此过程可能需要科学上网) 选择开发板 2...

    1.ESP32 Arduino安装

    文件->首选项 添加开发吧管理网址:
    https://dl.espressif.com/dl/package_esp32_index.json
    在这里插入图片描述
    工具->开发板->开发板管理器,搜索ESP32,点安装(此过程可能需要科学上网)
    选择开发板
    在这里插入图片描述

    2.编写 FreeRTOS的程序

    ESP32是双核的,用一个loop简直太浪费了,xTaskCreate和CSDK是一样的

    void setup() {
     
      Serial.begin(9600);
      delay(1000);
     
      xTaskCreate(
                        taskOne,          /* 任务函数 */
                        "TaskOne",        /* 任务名 */
                        10000,            /* 任务栈大小*/
                        NULL,             /* 参数 */
                        1,                /* 优先级 */
                        NULL);            /* 任务句柄 */
     
      xTaskCreate(
                        taskTwo,          /* Task function. */
                        "TaskTwo",        /* String with name of task. */
                        10000,            /* Stack size in bytes. */
                        NULL,             /* Parameter passed as input of the task */
                        1,                /* Priority of the task. */
                        NULL);            /* Task handle. */
     
    }
     
    void loop() {
      delay(1000);
    }
     
    void taskOne( void * parameter )
    {
     
        for( int i = 0;i<10;i++ ){
     
            Serial.println("Hello from task 1");
            delay(1000);
        }
     
        Serial.println("Ending task 1");
        vTaskDelete( NULL );
     
    }
     
    void taskTwo( void * parameter)
    {
     
        for( int i = 0;i<10;i++ ){
     
            Serial.println("Hello from task 2");
            delay(1000);
        }
        Serial.println("Ending task 2");
        vTaskDelete( NULL );
     
    }
    

    3. 串口打印结果

    在这里插入图片描述

    展开全文
  • ESP32 Arduino LED的闪烁 点灯

    千次阅读 2020-09-05 16:57:53
    ESP32 Arduino LED的闪烁 我们开始探索一个新硬件时,要做的第一件事就是让LED闪烁。这会让我们兴奋不已,确实值得我们炫耀一番。 点亮第一盏灯 LED 文章目录ESP32 Arduino LED的闪烁用到的元件一、先看电路原理图...

    ESP32 Arduino LED的闪烁

    我们开始探索一个新硬件时,要做的第一件事就是让LED闪烁。这会让我们兴奋不已,确实值得我们炫耀一番。

    点亮第一盏灯 LED



    用到的元件

    •ESP32开发板
    •一个LED(我这里的是5mm绿色)
    •一个电阻220欧姆
    •面包板
    •导线若干


    一、先看电路原理图

    在这里插入图片描述

    在这里我顺便说一下LED的限流电阻应该怎样选取,设置的合适的阻值。我们可以从LED的数据手册上查到LED的有关参数,要计算LED的限流电阻,最重要的参数为:正向电压(VF)、正向电流(IF)和最大峰值电流(Peak Forward Current)。
    LED的正向电流可以取峰值,但是LED要使工作电流小于极限值,所以可以根据以下公式计算:
    限流电阻 = 电源电压 – LED 的正向电压 / LED的正向电流

    二、代码解析

    代码如下 :

    //led 2 对应我们esp32-cam 板子上的 io2
    int led = 2;
    
    void setup() { 
      //设置io口为输出模式
      pinMode(led,OUTPUT);
    }
    
    void loop() { 
      //向io 口写入高电平
      digitalWrite(led,HIGH);
      //延迟1秒钟
      delay(1000);
      //向io 口写入底电平
      digitalWrite(led,LOW);
        //延迟1秒钟
      delay(1000);
      //通过串口可以查看输出
      Serial.println("success...");
    }
    

    三 实物图展示

    在这里插入图片描述
    在这里插入图片描述


    总结

    当你到以上的代码时,脑子会想到与ESP8266和Arduino完全相同的,是的arduino上的语法ESP32都兼容的。这让我们面对ESP32时省了不少的功夫。
    开始我们最经典的LED流水灯的制作。
    在这里插入图片描述

    *玩转esp8266 ESP32 喜欢的朋友请加 群 个人邮箱:281189260@qq.com 24小时在线,有发必回复! *
    展开全文
  • [ESP32]ESP32 Arduino开发环境搭建

    千次阅读 2019-03-04 10:30:34
    最近有项目用到ESP32,顺便记录一下。 首先在电脑上安装arduino、Git和python等工具,安装软件部分就不再过多阐述。 1. 给Arduino IDE添加开发板网址 打开IDE,打开文件-&amp;gt;首选项,如图 找到==...

    帖子导航

    [ESP32]ESP32 Arduino BLE调试 / 与安卓蓝牙数据交互

    最近有项目用到ESP32,顺便记录一下。
    首先在电脑上安装arduinoGitpython等工具,安装软件部分就不再过多阐述。

    1. 给Arduino IDE添加开发板网址

    打开IDE,打开文件->首选项,如图

    在这里插入图片描述
    找到==附加开发板管理器网址,在新弹出的窗口中添加以下网址:
    https://git.oschina.net/dfrobot/FireBeetle-ESP32/raw/master/package_esp32_index.json
    https://dl.espressif.com/dl/package_esp32_index.json

    或者到以下网址中找到对应的开发板网址,自行添加
    https://github.com/arduino/Arduino/wiki/Unofficial-list-of-3rd-party-boards-support-urls

    如图:
    在这里插入图片描述

    2.更新开发板列表

    我们将ESP32开发板的网址添加到IDE后,还需要更新以下开发板列表,让IDE下载相应的支持库和文件。

    打开工具->开发板->开发板管理

    在这里插入图片描述

    在打开开发板管理器之后,管理器会自动加载更新开发板列表,找到对应的ESP32开发板点击安装即可

    3.使用IDE编译和下载固件

    找到对应的开发板,根据开发板设置对应的参数

    在这里插入图片描述

    打开文件->示例->ESP32->xxx找个自己感兴趣的项目并打开
    by the way:一定要按照以上流程先安装ESP32开发板的支持库,不然你是找不到ESP32例程和开发板设置的

    在这里插入图片描述
    在这里插入图片描述

    点击上传,然后按照指示 点击开发板的BOOT按键进行下载,点击串口监视器,打印出ESP32芯片的ID

    在这里插入图片描述

    展开全文
  • ESP32 Arduino开发之路(1)— 搭建开发环境并点亮LED 一、前言 ESP32 是目前大多数电子爱好者最热衷的一个物联网开发平台之一。目前我手上的是一块GOOUUU-ESP32开发板,如下所示,其使用的模组为ESP32-WROOM-32,该...
  • ESP32 arduino定时器中断

    2020-12-02 10:39:57
    ESP32 arduino定时器中断 hw_timer_t * timer = NULL; //声明一个定时器 void IRAM_ATTR onTimer() { //中断函数 Serial.println('1'); } void setup() { Serial.begin(115200); timer = timerBegin(0, ...
  • 文章目录简介程序运行结果![请添加图片描述](https://img-blog.csdnimg.cn/dbb85efa423849abba7116ab09c49656.jpg?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1...ESP32通过I2C
  • 【IoT】ESP32 Arduino GPIO 使用简析

    千次阅读 2018-07-31 17:19:37
    ESP32 Arduino 有以下四种触发方式:  LOW 低电平触发  CHANGE 电平变化  RISING 上升沿触发  FALLING 下降沿触发  HIGH 高电平触发 2、配置中断 在定义中断函数后,需要在 setup 函数配置中断函数 /...
  • ESP32 Arduino GPIO 中断研究

    千次阅读 2020-09-05 21:45:01
    ESP32 Arduino GPIO 中断研究 ESP32 中断 入门 学习 文章目录ESP32 Arduino GPIO 中断研究前言一、GPIO 中断介绍二、演示1.接线图展示引脚功能图2.代码解析总结 前言 外部中断只针对于输入设备,当设备输入时的...
  • (确保您可以将ESP32Arduino IDE结合使用。有关 ) 在Arduino IDE中,转到“草图”->“包含库”->“添加.ZIP库...”,然后选择刚下载的文件。 现在,您可以转到“文件”->“示例”->“ ESP32 BLE键盘”,然后...
  • 首先在电脑上安装Arduino. ...https://dl.espressif.com/dl/package_esp32_index.json http://arduino.esp8266.com/stable/package_esp8266com_index.json 2.更新开发板列表 我们将ESP32开发板的网址添加到ID.
  • ESP32Arduino使用内部霍尔传感器 开发板:ESP32 Dev Module 实例代码 /******************************************************* ESP32 使用内部霍尔传感器 功能:使用内部霍尔传感器获取磁场强度的值打印到...
  • Arduino-ESP32_BLE_Arduino.zip,用于ArduinoESP32 BLE支持的库源。用于ArduinoESP32 BLE(此存储库保留存档)。BLE代码现在直接包含在Arduino中。),Arduino是一家开源软硬件公司和制造商社区。Arduino始于21...
  • ESP32 Arduino 串口打印

    千次阅读 2019-11-01 15:17:44
    ESP32有三个串口,串口0,串口1,串口2. 首先先打开ESP32关于串口的库函数相关文件,先看看接口 在HardwareSerial.cpp中只构造了serial0这个对象 HardwareSerial Serial(0); 故使用串口0打印,编程 ...
  • ESP32 Arduino 按键输入

    千次阅读 2019-11-01 17:07:54
  • [ESP32]ESP32 Arduino开发环境搭建 首先得有支持包吧 ESP32 BLE支持包 进入arduino IDE -&amp;amp;gt; 文件 -&amp;amp;gt; 首选项 -&amp;amp;gt; 项目文件位置 到该路径下,打开git工具,项目...
  • https://randomnerdtutorials.com/esp32-microsd-card-arduino 老外写的很详细的帖子 ,读取sd卡。很详细,琢磨一下就弄懂了,全文完。 哎呀,这个microByte 玩了有段时间了。怎么也要把读取sd卡,显示图片,和连...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 10,879
精华内容 4,351
关键字:

esp32arduino