• 【RTOS】基于V7开发板的最新版FreeRTOS V10.2.0程序模板,含MDK和IAR,支持串口打印任务执行情况


    模板下载:

    链接:https://pan.baidu.com/s/1N32Hx7cTbDoRinuzTUB3zw   提取码:6aox


    1、MDK使用MDK5.26及其以上版本。

    2、IAR使用IAR8.30及其以上版本。

    3、教程直可以先看之前发布的,除了新增的一些功能,其它功能基本没区别:
    https://www.cnblogs.com/armfly/p/11256219.html



        /*
        *********************************************************************************************************
        *
        *        模块名称 : 主程序模块。
        *        文件名称 : main.c
        *        版    本 : V1.0
        *        说    明 : 本实验主要学习FreeRTOS的串口调试方法(打印任务执行情况)
        *              实验目的:
        *                1. 学习FreeRTOS的串口调试方法(打印任务执行情况)。
        *                2. 为了获取FreeRTOS任务的执行情况,需要执行如下三个操作
        *                                        a. 在FreeRTOSConfig.h文件中使能如下宏
        *                            #define configUSE_TRACE_FACILITY                        1
        *                                #define configGENERATE_RUN_TIME_STATS               1
        *                                #define configUSE_STATS_FORMATTING_FUNCTIONS        1
        *                                #define portCONFIGURE_TIMER_FOR_RUN_TIME_STATS()    (ulHighFrequencyTimerTicks = 0ul)
        *                                #define portGET_RUN_TIME_COUNTER_VALUE()            ulHighFrequencyTimerTicks
        *                                        b. 创建一个定时器,这个定时器的时间基准精度要高于系统时钟节拍,这样得到的任务信息才准确。
        *                   c. 调用函数vTaskList和vTaskGetRunTimeStats即可获取任务任务的执行情况。
        *              实验内容:
        *                1. 按下按键K1可以通过串口打印任务执行情况(波特率115200,数据位8,奇偶校验位无,停止位1)
        *                   =================================================
        *                   任务名      任务状态 优先级   剩余栈 任务序号
        *                   vTaskUserIF     R       1       318     1
        *                        IDLE            R       0       118     5
        *                        vTaskLED        B       2       490     2
        *                        vTaskMsgPro     B       3       490     3
        *                       vTaskStart      B       4       490     4
        *
        *                        任务名       运行计数         使用率
        *                        vTaskUserIF     467             <1%
        *                        IDLE            126495          99%
        *                        vTaskMsgPro     1               <1%
        *                        vTaskStart      639             <1%
        *                        vTaskLED        0               <1%
        *                  串口软件建议使用SecureCRT(V7光盘里面有此软件)查看打印信息。
        *                  各个任务实现的功能如下:
        *                   vTaskTaskUserIF 任务: 接口消息处理        
        *                   vTaskLED        任务: LED闪烁
        *                   vTaskMsgPro     任务: 消息处理,这里是用作LED闪烁
        *                   vTaskStart      任务: 启动任务,也就是最高优先级任务,这里实现按键扫描
        *                2. 任务运行状态的定义如下,跟上面串口打印字母B, R, D, S对应:
        *                    #define tskBLOCKED_CHAR                ( 'B' )  阻塞
        *                    #define tskREADY_CHAR                    ( 'R' )  就绪
        *                    #define tskDELETED_CHAR                ( 'D' )  删除
        *                    #define tskSUSPENDED_CHAR            ( 'S' )  挂起
        *                    #define tskRUNNING_CHAR                ( 'X' )  运行
        *              注意事项:
        *                 1. 本实验推荐使用串口软件SecureCRT,要不串口打印效果不整齐。此软件在
        *                    V7开发板光盘里面有。
        *                 2. 务必将编辑器的缩进参数和TAB设置为4来阅读本文件,要不代码显示不整齐。
        *
        *        修改记录 :
        *                版本号    日期         作者            说明
        *       V1.0    2019-05-02   Eric2013    1. ST固件库到V1.3.0版本
        *                                        2. BSP驱动包V1.2
        *                                        3. FreeRTOS版本V10.2.0
        *
        *        Copyright (C), 2019-2030, 安富莱电子 www.armfly.com
        *
        *********************************************************************************************************
        */


  • 相关阅读:
    C#计算一段程序运行时间的三种方法
    jquery easyui combobox设置默认选中第一项
    ASP.NET Web API教程 分页查询
    ASP.NET Web Api 实现数据的分页
    开源.net 混淆器ConfuserEx介绍
    C#软件license管理(简单软件注册机制)
    MyBatis入门实例-包括实体类与数据库字段对应&CLOB字段处理
    MyBatis在insert插入操作时返回主键ID的配置
    MyBatis框架——mybatis插入数据返回主键(mysql、oracle)
    关于java中split的使用
  • 原文地址:https://www.cnblogs.com/armfly/p/11256116.html
Copyright © 2020-2023  润新知