OpenEdv-开源电子网

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

uCOS-II学习中不解之我见,记录在案。可拍砖但不要拍脸!

[复制链接]

6

主题

68

帖子

1

精华

中级会员

Rank: 3Rank: 3

积分
271
金钱
271
注册时间
2011-12-17
在线时间
4 小时
发表于 2012-8-25 23:05:24 | 显示全部楼层 |阅读模式

    电子专业出身,很少对操作系统有个彻底的了解,从开始学习uCOS-II操作系统的使用已经有一段时间,其中碰到了很多问题,有些想了很长时间才搞明白,期间没有人指导和交流,路总是走的那么艰难。今天把自己学习过程中的难点或者是学习过程中遇到的问题写出来,与大家一起共勉。在此尽量不要讨论一些概念,主要是谈论在应用中的理解。
        1 怎么了解操作系统的?
   先从学单片机说起,刚开始学习一般都是照葫芦画瓢,慢慢有个自己的了解,然后加入自己的想法。开始我们写程序一般都是一个主函数里加一个while循环结构。
  #include        "......h"
  void main()
{
  while(1)
   {
      function1();功能1;
      function2();功能2;
      function3();功能3;
      。。。。。。。      
   }  
}
就是通过一个死循环,在循环里面几个各个功能函数反复执行,一般单片机的执行时间都达到微秒级,当我们在观察各个功能的时候好像都是实时执行的一样。例如在一个电路板上实现:
{
               流水灯;//让几个LED不断的实现各种闪烁。
               数码管显示;//让数码根据键盘的操作显示
               键盘检测; //捕捉按键的输入。
} 不管流水灯执行的时间还是数码管控制显示以及键盘检测的时间都是很短的,只要程序写好了,我们眼睛是分不出他们的间隔的。在程序中不断来回扫描这三个函数来显示所要求的功能。另外可以根据单片机的功能,加入一些中断处理,以来提高实时性,这种说的专业一点就是前后台系统。说实话这种系统效率也是最高的,代码也能写精简。但是不足之处上面所说的各个功能都是按顺序执行的,不管一个函数的功能再如何重要,也不能抢到前面去执行。
           程序运行原理:从ROM中按照地址顺序一条一条的读出指令来实现功能,其中PC记录当前执行的位置,也就是说它走到哪就执行到哪里。若是改变它的位置(或者说地址),就可以改变函数的执行顺序。通过这里我们可以想到是否根据一种算法来实现各个函数功能的分配。
          到这里,不敢对操作系统的理论做过多的探讨,就以uCOS-II为例,先看解释“一种可移植的,可植入ROM的,可裁剪的,抢占式的,实时多任务操作系统内核”。用我的话来说,我们可以对这个系统进行做相关的改动处理,只要你能改好,可以把重要的任务抢先执行(上面说的功能函数),实时多任务就不用说了。在这里重要一点就是它自动先重要的任务(功能)抢先去执行。也就是说它实现了这么一个功能。根据相关的判断自动分配任务来处理。
        在这里,我们到很多书籍上讲操作系统时候一般都换一个框形图,解释操作系统是底层硬件和上层应用程序的联系平台,uCOS我感觉也差不多,当然底层硬件的驱动还需要我们自己来写好。UCOS它帮我们实现任务的调度,就是计算怎样去先实现重要的任务,分配好时钟节拍,相当于我们跳动的心脏,若是它乱了,那这个系统就出问题,跟人一样。以及各个任务间如何进行通信,都由这个系统内核来协调处理。相当于我们聘请了一个高级管理者,我们给它说好后,它能按照我们意愿让单片机来工作。
     今天先写到这里,明天来探讨它到底是如何实现的。

与其相濡以沫,不如相望江湖!
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165225
金钱
165225
注册时间
2010-12-1
在线时间
2107 小时
发表于 2012-8-25 23:49:35 | 显示全部楼层
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

0

主题

21

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2012-7-30
在线时间
0 小时
发表于 2012-8-30 14:06:32 | 显示全部楼层
期待下回分解
回复 支持 反对

使用道具 举报

5

主题

42

帖子

0

精华

初级会员

Rank: 2

积分
102
金钱
102
注册时间
2012-6-26
在线时间
5 小时
发表于 2012-9-15 15:22:20 | 显示全部楼层
顺便问一下UCOS难吗,有FAT系统难学吗?FAT花了不少时间和精力啊,学完FAT接下来是USB device and Host、GUI、UCOS2,感觉越来越有难度了呢
回复 支持 反对

使用道具 举报

22

主题

436

帖子

0

精华

高级会员

Rank: 4

积分
541
金钱
541
注册时间
2012-8-6
在线时间
2 小时
发表于 2012-10-29 20:18:06 | 显示全部楼层
美女好
回复 支持 反对

使用道具 举报

22

主题

107

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
215
金钱
215
注册时间
2012-4-17
在线时间
0 小时
发表于 2013-4-1 15:06:47 | 显示全部楼层
lz 把抽象的问题很形象的表达出来了,通俗易懂,这么长时间了 期待 LZ 的更新....
回复 支持 反对

使用道具 举报

3

主题

12

帖子

0

精华

新手上路

积分
44
金钱
44
注册时间
2013-3-23
在线时间
0 小时
发表于 2013-4-1 16:10:52 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
期待楼主更新哦
正能量he加速度;长远的计划he明确的方向。
回复 支持 反对

使用道具 举报

1

主题

2

帖子

0

精华

新手入门

积分
26
金钱
26
注册时间
2013-3-24
在线时间
0 小时
发表于 2013-4-9 23:11:53 | 显示全部楼层
期待中......
回复 支持 反对

使用道具 举报

0

主题

52

帖子

0

精华

初级会员

Rank: 2

积分
83
金钱
83
注册时间
2013-5-30
在线时间
3 小时
发表于 2013-10-10 10:51:44 | 显示全部楼层
怎么没有更新了呢!期待中!
做自己喜欢做的的事,爱自己所爱的人!
回复 支持 反对

使用道具 举报

35

主题

154

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
362
金钱
362
注册时间
2014-7-30
在线时间
49 小时
发表于 2014-8-25 12:41:26 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
原子哥要给论坛里面像楼主这样的人多点论坛权利,乐于分享的人,是脱离了低级趣味的人
我就是我,是颜色不一样的烟火。
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-11-1 10:38

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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