OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2638|回复: 1

原子教程ucos关于CPU使用率

[复制链接]

4

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2014-7-5
在线时间
14 小时
发表于 2016-4-13 16:17:02 | 显示全部楼层 |阅读模式
1金钱
原子哥,你给的ucos教程中(原子教你玩stm32库函数版本,第53章 ---消息队列、信号量集和软件定时器),计算CPU使用率,获取的值为cpuusage,为什么要除于5? 代码如下:
          
void tmr1_callback(OS_TMR *ptmr,void *p_arg)
{
        static u16 cpuusage=0;
        static u8 tcnt=0;            
        POINT_COLOR=BLUE;
        if(tcnt==5)
        {
                LCD_ShowxNum(182,10,cpuusage/5,3,16,0);//CPU使用率                       
                printf("cpuusage=%d\r\n",cpuusage);
                cpuusage=0;
                tcnt=0;
        }
        cpuusage+=OSCPUUsage;
        tcnt++;                                    
        LCD_ShowxNum(182,30,mem_perused(SRAMIN),3,16,0);                                                                       
        LCD_ShowxNum(182,50,((OS_Q*)(q_msg->OSEventPtr))->OSQEntries,3,16,0X80);/          
}

我查看了OSCPUUsage 的解释为:
*********************************************************************************************************
*                                            STATISTICS TASK
*
* Description: This task is internal to uC/OS-II and is used to compute some statistics about the
*              multitasking environment.  Specifically, OS_TaskStat() computes the CPU usage.
*              CPU usage is determined by:
*
*                                          OSIdleCtr
*                 OSCPUUsage = 100 * (1 - ------------)     (units are in %)
*                                         OSIdleCtrMax
*
* Arguments  : parg     this pointer is not used at this time.
*
* Returns    : none
*
* Notes      : 1) This task runs at a priority level higher than the idle task.  In fact, it runs at the
*                 next higher priority, OS_TASK_IDLE_PRIO-1.
*              2) You can disable this task by setting the configuration #define OS_TASK_STAT_EN to 0.
*              3) You MUST have at least a delay of 2/10 seconds to allow for the system to establish the
*                 maximum value for the idle counter.


最佳答案

查看完整内容[请看2#楼]

平均值,看下边处理部分
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

72

主题

2711

帖子

2

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3505
金钱
3505
注册时间
2014-8-4
在线时间
696 小时
发表于 2016-4-13 16:17:03 | 显示全部楼层
平均值,看下边处理部分
以我资质之鲁钝,当尽平心静气、循序渐进、稳扎稳打之力。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-1 18:34

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表