这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » UCOS_II学习札记(一)

共8条 1/1 1 跳转至

UCOS_II学习札记(一)

高工
2013-05-25 08:52:38     打赏

首先按照教程一步一步将系统移植到目标板上,然后开始了系统的学习。

      在系统的main函数内必须首先对操作系统和目标板进行初始化,1、OS_Init()因为在运行OS_Start()必须要先创建一个任务,第二步就是建立任务OSTaskCreate(),第三步就是运行OS_Start()函数。

     另外一个需要注意的就是系统时钟节拍函数,用户必须在多任务系统启动以后再开启时钟节拍器,也就是在调用OS_Start()之后。

时间管理:

    操作系统的时间管理是通过定时中断来实现的。中断的时间间隔是固定不变的,该中断也成为一个时钟节拍。操作系统提供了两个时间延时函数,OSTimeDly()和OSTimeDlyHMSM();调用以上两个函数会使操作系统进行一次任务调度,并且执行下一个优先级最高的就绪任务。同样可以调用取消延时函数来随时取消延时,以达到应用的目的。

任务之间的通信与同步

     对于一个多任务操作系统来说,任务之间的通信与同步是必不可少的,os提供了四种同步对象,信号量、邮箱、消息队列和事件。所有这些同步量都有创建、等待、发送和查询的街口用于实现进程间的通信和同步。

事件控制块ESB:

    所有的通信信号都被看成是事件,对事件进行的操作包括1、初始化一个事件控制块OSEventWaitListInit();2、将一个任务置就绪OSEventTaskRdy();3、将一个任务置等待该事件发生的状态OSEventWait();4、由于等待超时而将任务置就绪OSEventTO();

信号量:

     信号量由两部分组成,信号量的计数值和等待该信号任务的等待任务表。在多系统中用于:控制共享资源的使用,标志事件的发生,使两个任务的行为同步。

邮箱:

 操作系统的另一种通信机制,可以使一个任务或中断子程序向另一个任务发送一个指针型的变量。该指针指向了一个包含特定消息的数据结构。为了在操作系统中使用邮箱,必须将OS_MBOX_EN置位。

消息队列:

     也是操作系统的一种通信机制,可以使一个人物或是中断子程序向另一个任务发送以指针方式定义的变量。具体的应用有所不同,每个指针指向的数据结构变量也有所不同。

内存管理:

     将连续的大块内存按分区管理。每个分区中包含多个大小相同的内存块,但是不同分区之间内存块大小可以不同。

“读书是一种心态,分享是一种快乐”, “读书 • 快乐”有奖读书活动与您携手相伴。




关键词: UCOS_II     读书笔记    

院士
2013-05-25 21:19:02     打赏
2楼
写得不错,楼主要再接再厉……

高工
2013-05-25 22:26:40     打赏
3楼
承蒙老大多多指点啊,在此表示感谢:3Q,嘿嘿嘿

专家
2013-06-01 15:54:11     打赏
4楼
嗯 不错  最近也在学习UCOS    推荐一本卢有亮老师的《嵌入式实时操作系统 uC/OS原理与实践  还有相应的视频教程

高工
2013-06-01 17:04:34     打赏
5楼
看过了,感觉不怎么好懂,看的周慈航的和任哲的另外参考一下邵贝贝,哈哈哈天下文章一大和谐啊

专家
2013-06-01 17:21:50     打赏
6楼
还是先把这本理解了再说     有什么不懂随时可以问作者的噢  

高工
2013-06-01 17:35:53     打赏
7楼
还能联系到作者啊,话说这个真心不错,哈哈哈

专家
2013-06-01 21:43:31     打赏
8楼
必须的   哈哈   

共8条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]