查看: 7494|回复: 13

讨论:有了RTOS你还让STM32“裸奔”吗

  [复制链接]
  • TA的每日心情
    开心
    2018-1-8 15:51
  • 签到天数: 22 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    发表于 2013-5-19 09:31:17 | 显示全部楼层 |阅读模式
    分享到:
    UCOS无疑是开发嵌入式系统的利器,如果是使用了它们,可以使项目的前景更为看好,比裸奔拥有更高的技术含量,得到更广泛的认可.
    裸奔,其实从51单片机开发,我就是在裸奔,裸奔可以完成任务
    但是,在STM32这样的环境下,你还裸奔吗?
    STM32虽然也不贵,那是频率有72M,STM32VET6有512K的FLASH和64K的SRAM,足够跑UCOS和UCGUI
    裸奔的时候演示怎么做?
    傻等:for(i=0;i
              for(j=0;j
                      ;
    用中断服务但还是傻等
         设置定时器
         do
              琢磨着这点时间干点其他的实事
         while(定时完成没有?)
    前者的确不好,把CPU掐死了;后者有改进,但是还是要不停的判断

    使用UCOS怎么做?
        假设SYSTICK设置为1MS中断1次
         需要等待888毫秒
               做事
               OSTIMEDLY(888)
               继续做事
        在这888毫秒中,这个任务是放弃了CPU的,完全放弃了,至于交给谁来运行,完全取决于其他任务的优先级,因此这样就合理了,你不需要  “琢磨着这点时间干点其他的实事”,完全由你配置的任务的优先级来决定。
        如果需要等待事件的发生才继续做
              做事
              PEND
              继续做事
        PEND不到,就要去睡觉,让其他的任务做事,例如A请求缓冲区,如果缓冲区被另一个任务B占有了,那就睡觉最好,好让B使用完缓冲区,然后B POST,在B POST的过程中,发现A在等待,就把A叫起来继续运行了。

        我认为:使用RTOS抛弃裸奔,是明智的选择。请大家讨论
    回复

    使用道具 举报

  • TA的每日心情

    2013-8-22 20:38
  • 签到天数: 10 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    发表于 2013-5-19 09:49:07 | 显示全部楼层
    LZ你在这里证明1+1=2有意思吗?{:soso_e102:}
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-1-8 15:51
  • 签到天数: 22 天

    连续签到: 1 天

    [LV.4]偶尔看看III

     楼主| 发表于 2013-5-19 10:35:33 | 显示全部楼层
    wllf123 发表于 2013-5-19 09:49
    LZ你在这里证明1+1=2有意思吗?

    我只是表示我的意思,而且不一定证明的好。有些人呢还是坚持裸奔的,1个事物的看法,不是所以人都1样,看的面不同得到的结论也就不同
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2016-1-12 22:37
  • 签到天数: 259 天

    连续签到: 1 天

    [LV.8]以坛为家I

    发表于 2013-5-19 17:52:08 | 显示全部楼层
    看需要罢了,一般嵌入式一直以来都是够用就好,但是现在芯片价格便宜,功耗也可以做的不错,所以以前看来浪费的事情现在都变得理所当然了
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2023-1-28 16:20
  • 签到天数: 980 天

    连续签到: 1 天

    [LV.10]以坛为家III

    发表于 2013-5-19 17:59:26 | 显示全部楼层
    操作系统太浪费资源了        还是搞个伪系统号
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2018-10-29 22:48
  • 签到天数: 731 天

    连续签到: 1 天

    [LV.9]以坛为家II

    发表于 2013-5-20 01:30:38 | 显示全部楼层
        使用操作系统编程是一种全新的理念,在设计复杂应用的时候就体现出优势了。当在系统中需要不断增加新功能时,基于RTOS的软件系统仅需要新增任务,而裸奔情况下,不知道要改多少地方呢,改不好就死翘翘了。实际上,对RTOS的使用要根据具体需要来的,对于规模小的软件,裸奔能搞定就用裸奔好了,对于要求扩展性强并且规模不确定的情况下,就用RTOS。

        不过我个人不太看好uCOS,在开源RTOS中,大家用的算法都差不多的,不过在产品中用uCOS是要花钱的。如果要花钱,不如用更NB的RTOS,例如NQX;如果不想花钱,也有不少真正开源的RTOS可以选择,例如FreeRTOS、RT-Thread等等。对于大型的应用,还有Linux、VxWorks等可以选择。uCOS用来教学还可以,但实际的实用性还得再考虑考虑。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-1-8 15:51
  • 签到天数: 22 天

    连续签到: 1 天

    [LV.4]偶尔看看III

     楼主| 发表于 2013-5-20 08:39:59 | 显示全部楼层
    suyong_yq 发表于 2013-5-20 01:30
    使用操作系统编程是一种全新的理念,在设计复杂应用的时候就体现出优势了。当在系统中需要不断增加新功 ...

    非常感谢进士留言!学习UCOS,发展国内RTOS.
    赞一个!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2015-7-14 10:15
  • 签到天数: 4 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    发表于 2014-9-20 00:48:41 | 显示全部楼层
    国内rtos报到
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-2-9 20:16
  • 签到天数: 55 天

    连续签到: 1 天

    [LV.5]常住居民I

    发表于 2014-9-29 20:37:12 | 显示全部楼层
    恩恩非常好
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-7-4 13:51
  • 签到天数: 347 天

    连续签到: 1 天

    [LV.8]以坛为家I

    发表于 2014-9-30 08:25:58 | 显示全部楼层
    恩恩,学习学习
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-12-12 07:53 , Processed in 0.202340 second(s), 33 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.