freertos相关内容

任务创建后的FreeRTOS堆栈大小

我正在开发一个跟踪模块,该模块必须监视FreeRTOS任务堆以检测堆栈溢出。我想知道是否有可能在创建任务堆栈后获得它的大小。我可以通过API访问此信息吗?还是将其存储在某个内部结构中? 推荐答案 不存储任务堆栈大小,但可以根据任务控制块的pxStack and pxEndOfStack成员计算。不过,我认为检测堆栈溢出的最简单方法是使用内置的堆栈溢出检查。enter link desc ..
发布时间:2022-04-19 16:36:28 其他开发

MQTT订阅/OTA更新深度睡眠/ESP32/FreeRTOS

目标是在定期从深度休眠中醒来的物联网设备中通过MQTT接收消息。OTA更新与任何其他参数更新存在完全相同的注意事项。在我的情况下,最终,我希望将此用于两者。 进度 它运行 设备唤醒大约15秒。如果在此期间,我向相关主题发布了一串消息,则消息成功到达。在AWS控制台内,我可以发布到: $aws/things//shadow/update/delta ..
发布时间:2022-03-28 17:46:32 其他开发

FreeRTOS:osDelay 与 HAL_delay

在使用 STM32CubeMx 创建 FreeRTOS 应用项目时,您可以使用两种方法来引入延迟,即 osDelay 和 HAL_Delay. 它们之间有什么区别,应该首选哪一个? osDelay代码: /*********************** 通用等待函数 *******************************//*** @brief 等待超时(时间延迟)* @pa ..
发布时间:2022-01-25 12:33:42 其他开发

用于嵌入式系统的小型 libc

我正在寻找一个小型 libc,用于在 ARM7 微控制器上与 freertos 一起使用.我看过 newlib,但它对我的需要来说有点太复杂了.Newlib 调用 malloc() 在一些函数(例如 printf()),这对于小型嵌入式实时系统来说并不好. 有谁知道适合我的应用程序的小型、可移植、开源的 libc 实现吗? 解决方案 PDCLib 可能 满足您的需求.仍然不完整 [断 ..
发布时间:2022-01-25 12:23:47 其他开发

哪些变量类型/大小在 STM32 微控制器上是原子的?

以下是 STM32 微控制器上的数据类型:http://www.keil.com/support/man/docs/armcc/armcc_chr1359125009502.htm. 这些微控制器使用 32 位 ARM 核心处理器. 哪些数据类型具有自动原子读取和原子写入访问权限? 我很确定所有 32 位数据类型都可以(因为处理器是 32 位的),而所有 64 位数据类型都不会( ..
发布时间:2022-01-17 13:39:00 其他开发

从 freeRTOS 运行应用程序

我目前正在为我公司正在开发的消费电子产品开发操作系统.我已经决定将 freeRTOS 作为我们操作系统的支柱,并且正在努力在操作系统中实现硬件功能.但是,我遇到了有关从 freeRTOS 中运行 3rd 方应用程序的问题. 最初我认为一个任务是一个应用程序,基本上你有“myapplication.c"和“myapplication.h"包含你所有应用程序必需的功能,代码将驻留在任务内的 fo ..
发布时间:2021-12-30 20:22:27 其他开发

u-boot flash 文件的结构是什么?( ARM 多功能 pb )

我正在创建可以使用 qemu 的 -kernel 选项加载的文件.我最介意这里的 u-boot 配置文件,我发现信息应该放在文件的某个地方.该文件必须包含要运行的 u-boot 二进制文件、freebsd 内核和 RTOS(因此我可以选择加载哪个内核或在同时加载 2 个操作系统时进行一些实验性开发 - 例如.FreeBSD 由 u-boot 加载,然后由 FreeBSD 加载在第二个核心上加载 F ..
发布时间:2021-11-17 22:32:28 其他开发

用于小型 ARM 微控制器的 RTOS 内核之间的可量化差异

有许多不同的 RTOS 可用于微控制器.我特别在寻找支持 ARM Cortex M 处理器的 RTOS.另外,我对闭源解决方案不感兴趣. 试图从网站和邮件列表中比较每个 RTOS 的相对优点似乎非常困难,因为它们大多似乎具有相同的功能并做同样的事情.只有在尝试将每个 RTOS 用于某些任务之后,真正的差异才会变得明显. 我知道这是一个有点主观的问题,可能很难回答 - 但肯定有很多人实际 ..
发布时间:2021-11-17 22:14:42 其他开发

STM32 微控制器上哪些变量类型/大小是原子的?

以下是 STM32 微控制器上的数据类型:http://www.keil.com/support/man/docs/armcc/armcc_chr1359125009502.htm. 这些微控制器使用 32 位 ARM 内核处理器. 哪些数据类型具有自动原子读和原子写访问? 我很确定所有 32 位数据类型都可以(因为处理器是 32 位),而所有 64 位数据类型都不是(因为读取或 ..
发布时间:2021-11-17 21:43:00 其他开发

FreeRTOS 中的共享指针和队列

围绕 FreeRTOS 队列的 C++ wapper 可以简化为如下所示: template类 Queue{民众:bool push(const T& item){返回 xQueueSendToBack(handle, &item, 0) == pdTRUE;}bool pop(T& 目标){返回 xQueueReceive(handle, &target, 0) == pdTRUE;}私人的: ..
发布时间:2021-07-23 20:32:02 其他开发

FreeRTOS 队列结构 C

我不明白如何声明可用于在 FreeRTOS 中的两个线程之间发送数据的结构. 我有两个线程,一个应该用数据填充结构,另一个应该从结构中读取数据,该数据是通过消息队列发送的. 数据可以复制或通过指针,数据量不大. 在我的 main.c 文件中,我声明了结构并声明了队列和队列句柄:在 int main(void) 之前: xQueueHandle LED_Queue_Handle, ..
发布时间:2021-06-30 19:32:49 其他开发

xQueue ESP32无法发送两个命令

我正在寻求帮助,因为我在这个问题上坚持了很长时间.我家里有一个ESP32 wrover工具包,我已经用uart将它连接到Zigbee网关模块.我想通过uart向模块发送一些命令,因为我将这些命令放在xQueue中,并且进入了一个线程以发送至uart.在另一个线程中,我通过uart得到了答案.第一条消息一切正常,然后在读取第二条消息时出现崩溃.我认为这是因为我的tx_msg不再存在于内存中,但是我无 ..
发布时间:2021-05-04 20:59:53 其他开发

FreeRTOS任务不应返回-ESP32

我在ESP32上使用多线程.我创建了两个任务并将它们固定到核心1.使用其中一个任务,我得到以下错误: E(20426)FreeRTOS:FreeRTOS任务"MeasurementTask";不该回来,现在堕胎!在核心1的PC 0x4008b8f3处调用了abort()回溯:0x4008f34c:0x3ffd0a40 0x4008f57d:0x3ffd0a60 0x4008b8f3:0x3ff ..
发布时间:2021-05-04 20:59:38 C/C++开发