-
从环境说到搭建第一个工程
请注意,此文默认读者已经对DSP及CCS V3.3环境有一定的了解了,知道cmd文件的配置,知道新建工程,编译并连接仿真器下载!如果你对这些还都不熟悉,...
-
Delay的变通,不要浪费Delay
前两天在做一个项目,说白了程序很简单,控制一大堆电磁阀,和上位机通信。根据上位机的命令控制不同的电磁阀动作。其中...
-
1.printf/sprintf入口参数必须是u16类型,否则打印结果不正确,很奇怪2.u32位类型的判断if ((val%0x1000) == 0)此判断前必须强制...
-
第一篇 Ucos介绍
我们使用的平台是PC机
第一篇 Ucos介绍
这个大家都知道。呵呵。考虑到咱们学习的完整性还是在这里唠叨一下。让大家...
-
c
uC/OS-II 中最多可以支持64 个任务,分别对应优先级0~63,其中0 为最高优先级。63为最低级,系统保留了4个最高优先级的任务和4个最低优先级的...
-
时间管理
uC/OS-II的时间管理是通过定时中断来实现的,该定时中断一般为10毫秒或100毫秒发生一次(这个时间片段是OS的作者推荐的,大家可以参考邵贝贝翻译的...
-
内存管理
在ANSI C中是使用malloc和free两个函数来动态分配和释放内存。例如在Linux系统中就是这样。但在嵌入式实时系统中,多次这样的操作会导致...
-
任务间通信与同步
对一个多任务的操作系统来说,任务间的通信和同步是必不可少的。uC/OS-II中提供了4种同步对象,分别是信号量,邮箱,消息队列和事件。所有这些同...
-
在这一章中我们主要讨论UcosII的源码调试环境,为了给大家一个共同的学习平台,我搜集整理了一写资料,就是以X86为平台,使用BC31(这个堪称骨灰级的编译器)来调...
-
让自己的第一个任务Run起来
前面已经给大家介绍了如何在PC机上调试Ucos,方法和需要的软件都介绍给大家了,相信有兴趣的朋友已经安装调试了,下面咱们就让自己...
-
Ucos的运行是基于任务运行的,为了能够好的使用Ucos我们先要对Ucos的任务的概念做一个理解
在学习UCOS任务前我们先对我们以前使用的模式做一个回顾--前后台模式。
&l...
-
不可剥夺型内核
不可剥夺型内核要求每个任务自我放弃CPU 的所有权。 不可剥夺型调度法也称作合作型多任务,各个任务彼此合作共享一个 CPU。异步事件还是由中断服务来处理。中断服务...
-
任务调度是内核的主要职责之一,就是要决定该轮到哪个任务运行了。多数实时内核是基于优先级调度法的,Ucos也不例外。每个任务根据其重要程度的不同被赋予一定的优先级。基于优先级的调度法...
-
前面我们对Ucos的基础知识做了了解,其中有些地方由于邵贝贝翻译的树上讲解的很少我就没有班门弄斧,大家可以结合那本书来看。有问题或不明白的在这里讨论,欢迎大家剔除问...
-
任务的资源主要包括以下几部分,ECB控制块、任务堆栈、任务代码及与CPU共用的寄存器和CPU的使用权
<ignore_js_op>
<igno...
-
一:信号量的理解: (1)信号量可以分为两种:一种是二值信号量(0和1),一种是N值信号量(计数式信号量)。 &nb...
-
在Ucos的信号量使用过程中,我们经常会用的是二值信号量,而在二值信号两种用的醉的情况就是互斥信号量。互斥信号是本身是一种二进制信号,具有超出ucos-II提供的一般信号机制的特性...
-
Ucos互斥信号量操作函数分析
//建立并初始化一个互斥型信号量(优先级继承优先级(PIP)、出错代码指针)OS_EVENT *OSMute...
-
释放一个互斥信号量:OSMutexPost()关键代码剖析:INT8U OSMutexPost (OS_EVENT *pevent){ ...
-
今天我们就看看事件标志组的使用和管理吧
事件标志组(event flag)包含两部分:
typedef struct
{
INT8U OSFlagType;...