在最近的两篇文章中,我们从概念和流程上梳理了: 一个终端设备如何把一个固件,安全无误的从服务器上,下载到本地。这篇文章就继续往下深入,以一个实际的 ESP32 项目,来完整的梳理一下 OTA 升级的全过程。 主要包括下面 3 部分内容:AWS 平台上,部署一个 OTA 升级任务时,需要完成哪些步骤;ESP32 模组中,关于 Flash 分区和 OTA 升级控制过程和代码说明;如何通过 ESP32
我还记得当初学51单片机导师与我们说,当你点亮一盏灯,那么你已经学会了80%,就当个笑话吧,但也不是并无道理源码路径esp-idf/examples/get-started/blink#include <stdio.h> #include "freertos/FreeRTOS.h" #include "freertos/task.h" #include "driver/gpio.h"
[ESP32]UART串口使用ESP32里面有3个串口,uart0默认作为log和console输出,我们可以使用uart1和uart2。 它们默认的管脚如下:UARTGPIOUARTGPIOU0_RXDGPIO3U0_CTSGPIO19U0_TXDGPIO1U0_RTSGPIO22U1_RXDGPIO9U1_CTSGPIO6U1_TXDGPIO10U1_RTSGPIO11U2_RXDGPIO16
转载 2024-02-08 07:49:38
460阅读
一、Arduino 环境搭建1.下载Arduino压缩包, 并解压至适用的磁盘文件夹  Software | Arduino   2.支持包下载  (1)浏览器搜索"ESP32", 找到官网  ESP32 Wi-Fi & 蓝牙 MCU I 乐鑫科技 (espressif.)  (2)点击"产品-->芯片--&
转载 2024-02-19 20:36:05
196阅读
ESP32下载分析 ESP32作为很火的一款国产wifi+蓝牙芯片,终于我也要用上了。对一些硬件上的问题也做一个记录,因为一般自己DIY的话,硬件当然也就自己设计了。ESP32的硬件设计,当然从下载开始。如果直接用ESP32现成的模块,那真的省心很多,毕竟好多东西人家都帮你做好了。先从下面的图开始看,ESP32的启动模式如下,事实在模块上还有一个EN引脚。 其实真正起作用的,是GPIO0
首先本次记录时MICROPYTHON 在ESP32环境下的记录,这里需要声明你使用的micropython 的版本固件不应该太古老,根据我的经验,有些早期固件不支持以下测试,或者不具备相应功能,固件嘛一般都是新的好,新的功能以及更少的BUG, 不像语言,太新的版本反而会出现兼容问题。我本次的固件版本为2021年9月版本的固件,已经证实的是2018年的固件不能支持下面的内容。本次记录是一些关于低功耗
目录UART理论部分一、UART简介二、通信基础(一)并行和串行(二)单工和双工(三)波特率三、UART帧格式四、UART硬件连接五、UART控制器Exynos4412下的UART控制器一、引脚功能设置二、Exynos4412下的控制器UART includes:UART通信示例:each UART contains:          &nbsp
OTA工作流程ESP32 FLASH空间分区通过menuconfig --> partition table 有三种分区选择:single factory appfactory app , two otacustom partition tableESP32 SDK对应的flash分区配置的源码路径是:esp-idf-v4.4.2\components\partition_tablesing
======================================================================================最近使用 VSCode 用的比较多,之前使用的 webstorm ,然后在使用 VSCode 的过程中发现很多好用的快捷键,把常用的整理一下。重新打开刚关闭的文件Windows: Ctrl + Shift + TMac: com
转载 2024-09-09 06:33:49
181阅读
一、简介1、项目介绍之前发布的文章有esp8266的wifi模块和BC20的NB模块与华为云物联网通信为主,本期文章采用了合宙的4G LTE Cat.1模块,编程语言用的是lua,整体来说代码比较简洁,实现对华为云物联网平台的设备通信与控制,即采用一个变量作为模拟属性定时上报,并以一个LED灯作为受控设备进行云端命令的控制,本期内容为我们在户外的项目应用中提供一些参考方案,实现手机远程控制户外设备
文章目录移植准备移植文件结构芯片烧写移植过程文件结构代码移植系统时钟串口GPIO定时器(用于cpup,计算cpu使用率)移植遇到的问题任务无法调度Stack、Heap不够(堆空间、栈空间不够)移植liteos总结 移植准备APM32F072VB开发板(M0),https://www.geehy.com/ 在官网下载对应的pack包,需要将pack包里的inc、src文件添加到tagets/bsp
实验目的掌握电子系统设计的方法学习无线通信的设计方法实验内容下位机通过DS18B20或DHT11采集温湿度,并通过LCD1602显示通过按键设置温度的上下限阙值,低于下限阙值时启动电机1档旋转,高于上限阙值时启动电机2档旋转上位机通过nRF24L01、蓝牙或者WIFI实现数据传输,并在上位机显示。(按照学号尾号后3位对3取余数,用相应方式传输。余数0:nRF24L01,余数1:蓝牙,余数2:WIF
事件组(Event Group)是 ESP32 IDF 中一种高效而灵活的同步和通信机制。事件组中的每个位都代表一个事件标识符,当一个或多个事件被触发时,对应的位将被设置。事件组允许多个线程/任务等待多个事件的发生,从而实现任务的协调和同步。在 ESP32 IDF 中,事件组由 EventGroupHandle_t 类型表示,代表事件组的句柄。下面是一些常用的事件组 API 函数:1. xEven
    学习STM32单片机的时候,总是能遇到“堆栈”这个概念。分享本文,希望对你理解堆栈有帮助。    对于了解一点汇编编程的人,就可以知道,堆栈是内存中一段连续的存储区域,用来保存一些临时数据。堆栈操作由PUSH、POP两条指令来完成。而程序内存可以分为几个区:栈区(stack)堆区(Heap)全局区(static)文字常亮区程序代码
1.复位2.系统时钟2.1时钟树2.2时钟源从时钟树可以看出 时钟源共七种ESP32 的时钟源分别来自外部晶振、内部 PLL 或振荡电路 具体地说,这些时钟源为:2.2.1 快速时钟PLL_CLK320 MHz 或 480 MHz 内部 PLL 时钟XTL_CLK2 ~ 40 MHz 外部晶振时钟,模组板载的是40MHz晶振2.2.2 低功耗慢速时钟XTL32K_CLK32 KHz 外部晶振时钟,
转载 2023-11-06 15:37:44
399阅读
概述在配置mac os下,esp32在Arduino中的开发环境,遇到了一些问题,最终得到解决。 在这汇总整理,希望能够帮助到大家。串口的确认查看端口这里用到终端命令行的方式确认串口名称请将以下命令运行两次。首先,断开开发板或适配器,首次运行以下命令;然后,连接开发板或适配器,再次运行以下命令。其中,第二次运行命令后出现的端口即是 ESP32 对应的串口:ls /dev/cu.*确认串口连接ls
ESP32学习记录<三>串口通信 文章目录ESP32学习记录<三>串口通信前言一、通过串口打印出数据1.初始化串口2.打印数据二、串口控制LED亮灭1.接收串口发送的数据2.实现功能总结 前言前面已经学习了如何操作io口点亮led灯,这次学习串口通信的原理。学习过51、32应该对串口通信都挺熟悉的,所以会操作基于arduino框架的库函数’实现串口通信就达到目的了。本文就介
转载 2024-03-04 16:02:42
651阅读
UartAssist是一款功能非常强大,且实用性极高的串口调试助手,该软件不仅支持常用的110-115200bps波特率,而且不论是它的端口号、校验位、数据位、停止位等各种数据,在这里通通都可以完美的进行调试。同时,该软件也支持ASCII/Hex发送,并且发送和接收的数据是可以在16进制和AscII码之间任意转换的,从而更好的帮助用户提高工作效率和开发速度。另外软件还会根剧操作系统的环境来自动切换
转载 2023-09-07 22:49:52
155阅读
ESP32 UART复位与Python的实战宝典 在开发基于ESP32的应用时,UART通信的稳定性以及如何有效地通过Python进行复位是至关重要的。本篇文章将围绕“esp32 uart复位 python”这一主题,提供一系列实践经验和技术要点,从而使读者能够更好地掌握该技术。 ### 版本对比 在不同版本的ESP32和Python库中,UART的特性有所不同。例如,某些版本可能支持新的波
原创 6月前
58阅读
目录一、背景介绍二、主机代码1、串口初始化配置2、发送函数定义3、串口接收中断函数定义4、定时中断(用于主机发送指令)5、.h文件 三、从机代码1、串口初始化配置2、发送函数定义3、串口接收中断函数定义4、.h文件四、测试结果五、注意事项一、背景介绍        项目开发需要用到stm32的串口实现485通信,整个调试过程花了一天半,比预想中的长
  • 1
  • 2
  • 3
  • 4
  • 5