打印
[家电应用]

大家对MCU中处理多任务采用时间轮询是怎么看的?

[复制链接]
1068|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
pmw_56|  楼主 | 2017-9-16 11:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
主循环结构是这样的:

for (;;)
{
         if (step_start == true)     //  此标记在时间中断服务中 1ms时间标记
         {
                        step_start = false;
                         clear_wdt();                      // 清除看门狗计数器
                         if (step_1ms > 9)
                         {
                                 step_1ms = 0;
                         }
                         switch( step_1ms )      // 时间分成10个1ms 等时间片
                         {
                                  case 0:
                                           
                                        fun_0();
                                          break;
                                         
                                  case 1:
                                          fun_1();
                                          break;
                                         
                                          .
                                          .
                                         
                                          case 9:       
                                           fun_9();       

                                          break;
                                
                                   default:
                                            fun_0();
                                           break;
                                
                  
                      }       
                 }
}

大概是这样的一个循环结构,据说是某知名的方案公司统一的程序结构框架,称之谓模块化编程,感觉这个时间轮询写的太Low了,大家对时间轮询有什么看法?
沙发
pmw_56|  楼主 | 2017-9-16 11:41 | 只看该作者
我想时间片轮询应该是把时间作为一个触发事件,哪个时间到被触发执行哪个任务,这里都是搞一个等时间片,CPU执行效率很差,或者是基于状态机的触发方法,有没有人对时间片的轮询有独立见解的?

使用特权

评论回复
板凳
pmw_56|  楼主 | 2017-9-16 12:01 | 只看该作者
if (step_1ms > 9)
{
      step_1ms = 0;
  }

上面这个地方写错了,应该是

if(++step_1ms > 9)
{
    step_1ms = 0;
}

使用特权

评论回复
地板
pmw_56|  楼主 | 2017-9-17 11:02 | 只看该作者
自己顶。。。。。。。。。。。。。。。。。。。
有没有高手 ???

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

34

主题

215

帖子

1

粉丝