文章目录一、实验目的二、实验内容三、实验报告提出的两个问题四、开冲4.1一些注意事项4.2修改文件4.2.1修改/init/main.c4.2.2修改/kernel/printk.c4.2.3修改/kernel/fork.c4.2.4修改/kernel/sched.c4.2.4.1修改schedule()4.2.4.2修改sys_pause()4.2.4.3修改sleep_on和interrup
 重要提示这里我们将重点介绍 ESP32 的单核模式,因为该模式下可以适用更多内存优化功能;我们将在这里考虑典型的 IoT 用例,在该用例下牺牲性能获得内存是可以接受的准则;我们将以典型的云应用程序为研究用例,该应用需要具有相互认证支持的 TLS 连接;这里使用ESP-IDF 功能分支可查阅 https://github.com/mahavirj/esp-idf/tree/featu
转载 2024-03-05 14:31:01
3063阅读
menuconfig因为好多资料里都涉及到menuconfig,所以去扒拉扒拉这到底是是个啥menuconfig是Linux平台用于管理代码工程、模块及功能的实用工具。上至决定某一程序模块是否编译,下到某一行具体的代码是否需要编译以及某个项的值在本次编译时该是什么都可由menuconfig来定义。menuconfig的使用方式通常是在编译系统之前在系统源代码根目录下执行 make menuconf
AD转化。        所谓AD,其实就是将模拟量转化为数字量的技术。我们今天用自己设计的分压模块来测试这一转化过程。目录一、ESP32中的ADC口二、Arduino实现ESP32的AD转化1.代码实现        2.硬件检测三、结果验证一、ESP32
自己搭建了一个Lorawan网络,写一些实验记录,未来功能更完善的话再继续扩展准备节点:stm32l476rg+sx1276 网关: RAK7243 CN470频段 RAK官网:链接 服务器:Chirpstack节点配置接线stm32l476rg和lora模块的接线比较简单,不多赘述,接完的如图所示代码代码见stm32官网:链接 搭建Lorawan,实现节点向服务器传输上行数据的代码在D:\mas
一,什么是外部
原创 2021-12-04 17:07:06
10000+阅读
1点赞
前两节已经说明了,开发环境以及升级到最新的sdk。本节 Hello_World 案例。导入ESP32_IDF项目1. 选择 File→Import2. 点开C/C++分支,并选中Existing Code as Makefile Project3. 去除C++支持,选中 Cygwin GCC点击Browser,选中 esp-idf-v2.1所在的目录  4. 点击&n
转载 2024-03-18 17:04:14
191阅读
Arduino环境配置  首先需要下载Arduino IDE,可以去官网下(下载慢容易失败,不推荐),也可以在Arduino中文社区进行下载(推荐)。   下载好软件之后,正常安装,安装好后打开软件,点击“工具”—>“管理库”,搜索esp32,安装ESP32库。  如果没有搜到的话,就转到“文件”—>“首选项”,将https://dl.espressif.com/dl/package_
转载 2024-05-01 14:19:42
1287阅读
探索科技创新:ESP32-NESEMU - 在ESP32上运行经典的NES游戏!ESP32-NESEMU是一个令人兴奋的开源项目,由Espressif Systems开发,它允许你在Espressif ESP32微控制器上模拟运行经典任天堂娱乐系统(NES)的游戏。如果你是复古游戏爱好者或热衷于嵌入式系统的开发者,那么这就是你的理想选择。项目概述ESP32-NESEMU基于Espressif's
ESP32开发之旅——ssd1306 OLED屏的使用前言在本文中,您将学会ssd1306 OLED屏在ESP32中的使用,本文提供了简单的示例供学习参考。需要注意的是,本文中的ESP32使用Micro Python进行开发的,(同时ESP8266也可按照本文进行开发)。对ssd1306 OLED屏熟悉的小伙伴可以直接跳至正文部分SSD1306 OLED屏介绍实物图本文中使用的SSD1306 是
转载 2024-04-24 12:24:17
418阅读
对于汽车开发工程师来说,CAN总线是工作最最基础的一部分了。虽然工作已经有了CANOE,CANAPE,INCA等开发工具,但简单的使用这些软件没有极客精神,有时候还是想能够做一个自己的工具,可以通过编程来玩转CAN总线。由于之前接触过ESP8266,因此当ESP32推出的时候,我对其尤为关注。ESP32的性能更为强大,而最重要的是ESP32已经支持CAN总线了。在其官方文档中,CAN总线被名命为T
转载 2024-02-22 20:45:42
298阅读
调度,实际涉及到两个问题,一个是调度的对象是什么(你要调度啥),另一个就是如何进行调度。本文就来聊聊 FreeRTOS 的任务调度过程。说到调度对象,很容易想起那句名言:进程是资源的最小单位,线程是调度的最小单位。在 FreeRTOS 中没有区分进程,线程的概念,统称为任务,对应的结构体为:tskTCB。lib/FreeRTOS/tasks.c:typedef struct tskTaskCont
转载 2024-06-03 21:19:16
145阅读
介绍本MicroPython教程的目的是解释如何开始使用uPyCraft,这是一个支持IDE (集成开发环境) 是一种软件, 它通常集成一组工具, 使代码开发过程更容易。在这样的例子中, 著名的界面是简约的, 开始使用它是相当简单的, 我们将在本教程中看到。因此, 我们本教程的目标是连接到运行 micropython 的主板, 并在环境提示中发送一个简单的 "hello world" 命令。您可以
这里是调用双核的方法哈,和我们单核使用的方法不兼容,因为有一些函数是不一样的,不通用,但是下一篇博文我会更一篇单核使用队列进行任务间通讯的问题队列是什么?队列是可以从一个任务向其他任务以并发安全的方式发送消息的机制,也就是说他的目标是实现任务间的通讯,比如A任务向名为Queue的队列中发布了数据,那么B任务就可以从Queue这个队列中又把数据给取出来,并且,这个数据是复制式的,也就是说把数据复制一
转载 2024-03-26 14:35:26
165阅读
基于STM32F767通过STM32CubeMX实现ModbusTCP读多为寄存器操作(后续)由于上篇着重介绍了实现功能的代码,以至于我没有和大家讲清楚FreeModbus应该怎么移植,在此先抱歉浪费大家时间了。 接下来我要开始实操怎么成功移植Freemodbus在STM32上(以下方法可以满足所有STM32设备)实验准备:去FreeModbus官网下载Modbus的源码包,链接直接放上:Free
转载 2024-04-08 19:02:48
773阅读
前言本文的目的是为了给将要制作的ESP32手环做技术储备准备学习下ESP32,还有嵌入式GUI框架LVGL,通过做几个小项目练手是不错的选择,最终目标是做一个ESP32的手环做一个ESP32手环任务量还是比较大的,涉及到很多新技术,我认为步子不能迈的太大容易翻车,决定先做一个ESP32的智能花盆GITHUB仓库结构 0.doc 相关文档 1.hardware pcb和3D打印所需资料 2.soft
详解STM32 ISP设置及使用说明1. STM32的BOOT概述STM32三种启动模式对应的存储介质均是芯片内置的,它们是:用户闪存:    BOOT1=x  BOOT0=0   芯片内置的Flash,即主存储器FlashSRAM:        
转载 2024-07-08 16:08:24
117阅读
一、背景1.1 低功耗蓝牙(BLE)协议栈链路层(LL) 控制设备的射频状态,有五个设备状态:待机、广播、扫描、初始化和连接。广播 为广播数据包,而 扫描 则是监听广播。GAP通信中角色,中心设备(Central - 主机) 用来扫描和连接 外围设备(Peripheral - 从机)。1.2 BLE从初始化到建立连接的过程外围设备开始广播,发送完一个广播包后T_IFS,开启射频Rx窗口接收来自中心
转载 2024-03-22 13:38:38
4275阅读
2点赞
MPU6050使用I2C通讯,配置STM32引脚,图为STM32F103。轮询模式只需要配置PB6:I2C_SDA,PB7_SCL,分别接MPU6050模块的对应引脚。中断模式还要接一个GPIO口至模块INT引脚。注意I2C speed mode 一定要选择高速模式,时钟速度400kHz。其它的配置都按自己需求再调整。库是先找到的别人的再修改,文件在链接中:https://github.com/H
LVGL相关结构体学习——lv_disp_drv_t 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录LVGL相关结构体学习——lv_disp_drv_t前言一、lv_disp_drv_t是什么?二、源代码分析1.源码2.分析总结 前言提示:这里可
  • 1
  • 2
  • 3
  • 4
  • 5