一.定时器代码如下:#include <Arduino.h> hw_timer_t *timer = NULL; int interruptCounter = 0; // 函数名称:onTimer() // 函数功能:中断服务的功能,它必须是一个返回void(空)且没有输入参数的函数 // 为使编译器将代码分配到IRAM内,中断处理程序应该具有 IRAM_ATTR 属性 //
前言趁着疫情不能外出,系统性的复习一下ESP32的使用。ESP32 芯片是由我国的乐鑫公司继 ESP8266 芯片后推出的又一款集成 WiFi 功能的微控制器。它拥有比 ESP8266 更加强大的性能,可以用来开发更加复杂的应用。ESP32 芯片或模组具有下列特点:·处理器:Tensilica LX6 双核处理器(一核处理高速连接;一核独立应用开发) ·主频:32 位双核处理器,CPU 正常工作速
一、简介。想当年,安信可公司推出一款低成本的WIFI模块(基于乐鑫公司的ESP8266芯片)之后,火了一段时间。这个模块是支持AT指令和SDK两种开发方式。AT指令很简单,用串口发送几条指令,即可让模块进入串口透传模式,用户基本不用涉及复杂的TCP/IP协议。SDK开发,相当于固件库开发,官方提供丰富的例子,有带操作系统和不带操作系统等等,代码可读性好,上手难度并不高。由于ESP8266本身的定位
STM32串口通信 链表接收不定长数据数据帧说明不太恰当的比方数据缓冲链表结构效果展示工程文件 数据帧说明STM32数据寄存器为USARTx->DR寄存器 可以看到DR寄存器只有[8:0]位可以使用,第8位用于奇偶校验,也就是DR寄存器一次只能接受8bit既1字节的数据。不太恰当的比方打个比方就是一个篮子 (DR寄存器) 只能装8 (bit) 个物品, 我们用这个篮子把水果放到我们的仓库
转载 2024-05-16 11:31:54
444阅读
串口接受不定长数据,就是数据格式不确定,长度不确定,我们需要找到判断是否接收完成的.如果是一个数据侦,接收时数据字节之间的间隔时间是很短,但接收完成时,我们就无收到数据了,所以我们判断是否接收完成,就是判断数据字节间的间隔我想到的到的方法有2:1.串口接收数据+定时做超时判断2.串口接收数据+IDLE空闲中断3.DMA串口数据接收+IDLE空闲中断 以下是我整理的代码:Usart_Ini
转载 2024-06-27 16:32:48
214阅读
目录1前言2应用侧接入华为云IoT平台3必备环境4使用步骤4.1华为云IoT平台简介4.2产品定义4.3设备定义与注册4.4ESP32编程接入4.4.1头文件的包含4.4.2接入参数以及ESP32WiFi的配置4.4.3WiFi配置与MQTT连接初始化4.4.4属性上报4.4.5接收华为云IoT平台下发命令以及命令响应1前言        相信很多人和笔者一
Arduino ESP32 flash数据存储结构?分区表官方文档:《分区表》✨想了解ESP32 flash数据存储结构需要从分区表开始了解。一点类似一台电脑上挂载的硬盘一样。分区表保存 SPI flash 各区信息,包括引导程序、各种应用程序二进制文件、数据及文件系统等/*在Arduino环境中使用的flash布局 |----|-------|--------|-------|------
Table of Contents1、SystemView 工具概览2、SEGGER 官网获取 SystemView 工具3、安装 SystemView 工具4、从 ESP32 上使用 SystemView 所需要的依赖5、安装工具 OpenOCD6、在 ESP32 的 menuconfig 中使能 SystemView 的配置选项7、运行程序,使用 OpenOCD 获取 SystemView 能
转载 2024-04-15 22:26:20
295阅读
今天学习一下 ESP32JTAG 环境的搭建,并在此记录方便后面的使用如果你使用 ESP-IDF v4.0 以上版本,并使用 install.sh 进行安装过,该安装会自动完成以下安装过程!!!!! 目录第一步 从源码安装 openocd获取openocd安装编译依赖构建 OpenOCD设置 OPENOCD_SCRIPTS 环境变量检查安装版本和路
这个实验的功能是使用乐鑫提供的 nvs 库去对 spi flash 的读写。 这个实验的代码为工程“3_9_nvs”目录。3.9.1. 实验内容(1) 学习 NVS 库函数接口 (2) 学习 NVS 存储/读取多种类型数据3.9.2. ESP32 NVS 功能介绍NVS总的来说,就是非易失性存储,类似MCU EEPROM,但实际上调用ESP32这些函数,数据是存储在FLASH中的。它的管理方式类似
【物联网初探】- 07 - ESP32 利用 wifi 进行 UDP 通信(Arduino IDE) 文章目录1. 硬件、接线、环境配置2. ESP32 下的 wifi 基本功能 (arduino)3. ESP32 下 UDP 通信3.1 TCP / UDP 的极简释义3.2 ESP32 UDP 通信小例子3.2.1 准备工具3.2.2 通信流程3.3 UDP 简单测试 1. 硬件、接线、环境配置
转载 2024-05-23 18:16:12
792阅读
默认情况下,TWDT(任务看门狗) 将监视每个 CPU 的空闲任务,但任何任务都可以选择由 TWDT 监视。每个观察任务必须定期“重置” TWDT 以指示它们已被分配 CPU 时间。如果任务未在 TWDT 超时期限内重置,则将打印一条警告,其中包含有关哪些任务未能及时重置 TWDT 以及哪些任务当前正在 ESP32 CPU 上运行的信息。并且还有可能在用户代码中重新定义函数 esp_task_wd
转载 2024-05-04 23:23:14
159阅读
WiFiWi-Fi 库支持配置及监控 ESP32 Wi-Fi 连网功能。WiFi工作模式基站模式(即 STA 模式或 Wi-Fi 客户端模式),此时 ESP32 连接到接入点 (AP)。AP 模式(即 Soft-AP 模式或接入点模式),此时基站连接到 ESP32。AP-STA 共存模式(ESP32 既是接入点,同时又作为基站连接到另外一个接入点)。上述模式的各种安全模式(WPA、WPA2 及 W
转载 2024-07-28 14:38:46
127阅读
简介HardwareSerial 库是c++编写的,应用于esp32 Arduino应用环境的串口驱动库,我们在安装好ESP32的Arduino开发环境后就已经集成了这个串口操作库,在实际应用时直接引用就可以了。注意:ESP32共有3个UART端口, 其中UART1用于Flash读/写,我们使用串口1时需要注意,需要将串口1映射到其他GPIO上即可,我测试了一下GPIO12、GPIO13,使用串口
转载 2024-03-23 10:33:14
696阅读
ESP32的Ethernet通讯Arduino的Ethernet库Ethernet库库函数介绍总结 Arduino的Ethernet库Arduino很早就支持Ethernet通讯。硬件主要是支持W5100,W5200和W5500以太网通讯模块通过SPI接口与ESP32通讯。在Arduino 1.8.19版本以前,Arduino不支持库的引用位置。比如,在例子中说调用Ethernet.h,但如果想
转载 2024-05-16 08:14:03
335阅读
        距离实现一个完整的物联网小应用只差最后一步了,今天聊聊怎么样在手机上对ESP32芯片发送指令和接收数据,并借助ESP官方的接口——rainmaker,来实现远程控制和通信。我们也借由此进入智能家居时代1.0(部分物联网概念可以看看【序】在23年谈物联网)       目录level 1:通过socket
ESP32开发之路(10)— ESP32的I2C通信读写AT24C02一、前言之前我们将ESP32的基本功能—WiFi都差不多试过了,进行了就来使用一下他的其他功能,比如I2C通信,I2C是一种典型的低速硬件通信协议,我想很多人的I2C通信都是从AT24C02开始的,所以我们ESP32的I2C通信也从AT24C02开始。 因为某种原因,我手边没有单独的AT24C02模块,所以就把小熊派E53_SC
转载 2024-03-27 06:50:47
413阅读
文章目录❤️UDP通信,客户端与服务器❤️?TCP与UDP优缺点☀️UDPClient —— 客户端请求1.1 创建STA模式1.2 激活station模式1.3 连接到您的WiFi网络1.4 检查连接是否建立1.5 创建socket对象1.6 构建ServerIP+ServerPort1.7 发起请求1.8 响应请求1.9 关闭socket✨UDPClient 示例本地局域网PC机构建UDPS
经过前两个帖子的折腾,基本的开发环境已经搭建完毕!我们现在终于可以快乐的写代码、调传感器了!!因为小弟使用的是官方乐鑫原厂的SDK,我在官网也只能找到带freertos的SDK包,因此下面就基于这个原厂SDK来给大家分享一下esp32运行多任务的过程(LED闪烁+串口打印)首先我们把      esp/esp-idf/examples   里面的L
转载 2024-05-12 20:07:07
271阅读
最近在做一个基于ESP32-PICO-D4的墨水瓶小终端/挂件?的小项目,硬件测试部分耗了我一个下午加晚上,随便总结一下。最终点灯成功 电路设计放在立创开源那边了:ESP32_INK 墨水屏终端or挂件 - 嘉立创EDA开源硬件平台 (oshwhub.com)记录一些问题/想法:1.电路设计时因为嫌16p的typec焊接容易出事,就用了一个microusb和一个6p的typec(仅供电)
转载 2024-05-06 16:13:31
3856阅读
  • 1
  • 2
  • 3
  • 4
  • 5