【RTOS】基于V7开发板的最新版uCOS-III V3.07.03程序模板,含MDK和IAR,支持uC/Probe,与之前版本变化较大

 

模板下载:
  链接:https://pan.baidu.com/s/1_4z_Lg51jMT87RrRM6Qs3g   提取码:2gns



对MDK的AC6也做了支持:
https://www.cnblogs.com/armfly/p/11256067.html

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

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

3、由于Mircium当前仅提供了IAR的底层移植文件,参考修改制作了个MDK版本的。

4、新版的底层移植文件比较好用,支持M3,M4和M7,含浮点支持。

5、制作了一个滴答定时器和PendSV中断入口汇编文件os_cpu_isr.asm,以后不用繁琐的修改启动文件的中断入口函数名,直接添加此贴文件即可。

6、新版的中断管理分为Kernel Aware和Non-Kernel Aware

  (1)Kernel Aware 表示受到uCOS-III管理的中断服务程序。

  (2)Non-Kernel Aware 表示不受管理的中断服务程序,中断使用跟裸机一样,但不可调用uCOS-III的API。

7、uCOS-III进入V3.07.00版本后与之前的版本变化较大,确切的说是更好用了。新的内核部分越来越向uCOS-II靠拢,之前臃肿的功能和不合理方案都已经放弃。
uCOS-III刚推出的时候,搞了不少功能,什么中断延迟提交,多事件等待,专门搞一个滴答定时器任务等新功能。升级到当前的V3.07.00后,都被干掉了,不实用。

    /*
    *********************************************************************************************************
    *                                          
    *        模块名称 : uCOS-III
    *        文件名称 : mian.c
    *        版    本 : V1.0
    *        说    明 : uCOS-III程序模板
    *              实验目的:
    *                1. 学习MDK和IAR的uCOS-III程序模板创建。              
    *              实验内容:
    *                1. 共创建了如下几个任务,通过按下按键K1可以通过串口打印任务堆栈使用情况
    *                    ===============================================================
    *                     优先级 使用栈 剩余栈 百分比 利用率   任务名
    *                      Prio   Used  Free   Per    CPU     Taskname
    *                        5    141    371   27%    0.00%   App Task COM
    *                        4    157    355   30%    0.01%   App Task UserIF
    *                        3    142    370   27%    0.00%   App Msp Pro
    *                        2    146    366   28%    0.41%   App Task Start
    *                       61     62     66   48%    0.00%   uC/OS-III Timer Task
    *                       62     68     32   68%    0.03%   uC/OS-III Stat Task
    *                       63     54     10   84%   99.53%   uC/OS-III Idle Task                    
    *                    串口软件建议使用SecureCRT(V7光盘里面有此软件)查看打印信息。
    *                    App Task Start任务  :启动任务,这里用作BSP驱动包处理。
    *                    App Task MspPro任务 :消息处理,这里用作浮点数串口打印。
    *                    App Task UserIF任务 :按键消息处理。
    *                    App Task COM任务    :浮点数串口打印。
    *                2. (1) 凡是用到printf函数的全部通过函数App_Printf实现。
    *                   (2) App_Printf函数做了信号量的互斥操作,解决资源共享问题。
    *              注意事项:
    *                1. 为了支持uC/Probe调试组件:
    *                   (1).MDK要勾选option->output -> Debug Infomation选项,选择优化等级0
    *                   (2).IAR要选择选择优化等级low,其中如下两个地方比勾选
    *                       a. option->C/C++ Compiler->Output选项中勾选Generate debug information。
    *                       b. option->linker->Output选项中勾选Include Generate debug information in output。
    *                   (3).使能uCOS-III宏定义
    *                       #define OS_CFG_DBG_EN             1u
    *                       #define OS_CFG_STAT_TASK_EN       1u 同时初始化统计任务
    *                              #define CPU_CFG_INT_DIS_MEAS_EN   1u
    *                   (4).为了方便调试,参数OS_CFG_APP_HOOKS_EN,OS_CFG_ARG_CHK_EN都使能
    *                2. 本实验推荐使用串口软件SecureCRT,要不串口打印效果不整齐。此软件在
    *                   V7开发板光盘里面有。
    *                3. 务必将编辑器的缩进参数和TAB设置为4来阅读本文件,要不代码显示不整齐。
    *
    *        修改记录 :
    *                版本号   日期         作者            说明
    *       V1.0    2019-05-01   Eric2013    1. ST固件库1.3.0版本
    *                                        2. BSP驱动包V1.2
    *                                        3. uCOS-III版本V3.07.03
    *                                        4. uC/CPU版本V1.31.04
    *                                        5. uC/LIB版本V1.38.03
    *                                       
    *        Copyright (C), 2019-2030, 安富莱电子 www.armfly.com
    *
    *********************************************************************************************************
    */

 



uC-Probe

posted @ 2019-07-27 17:53  硬汉嵌入式  阅读(1139)  评论(0编辑  收藏  举报