
ucos
李嗷纳多
这个作者很懒,什么都没留下…
展开
-
信号量与消息队列的区别
出现信号量与消息队列的原因:全局变量可以承载通信的内容,但接受方任务需要不断检测此全局变量的值。所以产生了信号量与消息队列。信号量 :可以通知接收方某个事件的发生,但无法传递具体事件内容,形象的说就像我们只拨通别人的手机而不与之通话消息队列 : 可以通知接收方某个事件的发生,但并告知接收方事件内容,形象的说就像我们既拨通别人的手机又与之通话...原创 2018-05-23 16:44:28 · 4642 阅读 · 1 评论 -
环形buffer 环形数组等原理例程
环形存储原理:(用一个类来说明)环形buff是先进先出,有两个指针,一个指示在尾部放数据,一个指示在首部取出数据,最开始都在0的位置,比如用在串口接受一个数据时,并不马上处理,用的时候再取出。class RingBuffer{private: uint8_t* Buffer; //类似一个数组的指针 uint16_t Size; //数据大...原创 2018-05-23 17:47:39 · 2251 阅读 · 0 评论 -
初步认识ucos2的TCB任务控制块与OS_STK任务堆栈的关系
只看关键的函数,在OS任务创建函数里的两个关键函数: psp = OSTaskStkInit(task, p_arg, ptos, opt); //初始化任务堆栈 err = OS_TCBInit(prio, psp, pbos, id, stk_size, pext, opt);//TCB 初始化第一个是初始化任务堆栈,C语言的特点,任务切换需要保存r0到r15这些寄存器...原创 2018-05-31 11:44:24 · 2729 阅读 · 0 评论 -
基于stm32f103VET的ucosIII/ucos3工程keil5
资源下载:https://download.youkuaiyun.com/download/m0_37738150/10485793内容与效果:基于stm32f103VET的ucosIII/ucos3工程keil5,可以直接编译下载。创建了两个任务,在主任务中创建子任务,可以看到两个LED灯闪,可以继续添加任务。实验代码未全面测试,挪用项目需谨慎。关键步骤:1.下载keil5自带software pack,名...原创 2018-06-19 14:16:13 · 3544 阅读 · 1 评论 -
ucos3消息队列的应用(stm32f103),keil5工程压缩包
压缩包下载链接:见下方评论处。说明:两个重要的函数,见图中红色方框,task1发送一串数据,task2一直等待数据的到来,到来后通过串口一发送出来,通过串口助手观察。Attention!在完成过程中,发现在stm32使用时,需要先初始化等等一系列复杂的东西,请留意。...原创 2018-06-26 16:42:04 · 938 阅读 · 1 评论