zoukankan      html  css  js  c++  java
  • freertos 建立任务超过几个后系统不能能运行

            /* *** NOTE ***********************************************************
            If you find your application is crashing here then likely causes are
            listed below.  In addition see http://www.freertos.org/FAQHelp.html for
            more tips, and ensure configASSERT() is defined!
            http://www.freertos.org/a00110.html#configASSERT
    
                1) Stack overflow -
                   see http://www.freertos.org/Stacks-and-stack-overflow-checking.html
                2) Incorrect interrupt priority assignment, especially on Cortex-M
                   parts where numerically high priority values denote low actual
                   interrupt priorities, which can seem counter intuitive.  See
                   http://www.freertos.org/RTOS-Cortex-M3-M4.html and the definition
                   of configMAX_SYSCALL_INTERRUPT_PRIORITY on
                   http://www.freertos.org/a00110.html
                3) Calling an API function from within a critical section or when
                   the scheduler is suspended, or calling an API function that does
                   not end in "FromISR" from an interrupt.
                4) Using a queue or semaphore before it has been initialised or
                   before the scheduler has been started (are interrupts firing
                   before vTaskStartScheduler() has been called?).
            **********************************************************************/

    如果没有出现 上述问题,请检查是否硬件堆栈分配。因为新建立的任务会消耗一部分硬件栈空间

     另外开启任务堆栈监测是非常重要的,可以仔细的调整一下,有的任务分配的多,有的任务分配的少

    另外 注意观察优先级配置,优先级config.h中的

    要和你freertos系统时钟中断优先级对应,不能搞不能低

  • 相关阅读:
    Docker容器案例:应用 Mysql
    rpm 命令参数使用详解
    MySQL中的两种临时表
    Yum本地Rpm库设置
    编程学习 博客
    yum -------包安装库
    Linux 基础 —— RPM
    在CentOS上编译安装PostgreSQL
    Linux上安装JDK环境变量配置
    yum_rpm(利用dvd建立本地yum库)
  • 原文地址:https://www.cnblogs.com/polar-lights/p/9460010.html
Copyright © 2011-2022 走看看