搜索
bottom↓
回复: 8
打印 上一主题 下一主题

请教下安富莱ucosiii 例程中在开始任务中加while 的问题?

[复制链接]

出0入0汤圆

跳转到指定楼层
1
发表于 2021-7-21 14:16:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
看了不少ucosiii 的例程 mian 函数在调用开始 start_task的任务后 就释放了 吗
之后就不会再进入start_task 任务了,但是这个例程中有个while 语句不断检测按键扫描,
程序还能执行到这里吗

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入42汤圆

2
发表于 2021-7-21 14:24:51 | 只看该作者
AppTaskStart()任务是在main()函数里创建的任务吧,任务只要没有被删除,就能继续执行,不存在释放之说

出0入0汤圆

3
 楼主| 发表于 2021-7-21 15:24:10 | 只看该作者
my_avr 发表于 2021-7-21 14:24
AppTaskStart()任务是在main()函数里创建的任务吧,任务只要没有被删除,就能继续执行,不存在释放之说 ...

执行到红色
/* 启动多任务系统,控制权交给uC/OS-III */
    OSStart(&err); 之后就不在执行上边的创建信号 和创建任务的 动作了?  
换个说法当切换任务回到  AppTaskStart,   就执行后边扫描控制按键的程序,前边的 创建任务和信号怎么处理 不做处理吗?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出100入143汤圆

4
发表于 2021-7-21 16:23:37 | 只看该作者
main函数OSStart之后的语句不会执行了,OSStart之后就跳转到AppTaskStart任务开始执行其他操作;另外你要明白每个任务最终都是while(1)循环,不同任务由OS执行分时复用MCU

出0入42汤圆

5
发表于 2021-7-21 16:25:44 来自手机 | 只看该作者
jiangzhimin 发表于 2021-7-21 15:24
执行到红色
/* 启动多任务系统,控制权交给uC/OS-III */
    OSStart(&err); 之后就不在执行上边的创建信 ...

开始执行AppTaskStart任务的按键扫描程序的话,前面创建的任务和信号量也正常运行啊,由内核调度。AppTaskStart任务和由这个任务创建的任务是一样的,没有区别,都由内核调度

出0入8汤圆

6
发表于 2021-7-21 16:41:01 | 只看该作者
jiangzhimin 发表于 2021-7-21 15:24
执行到红色
/* 启动多任务系统,控制权交给uC/OS-III */
    OSStart(&err); 之后就不在执行上边的创建信 ...

要是执行不了的话,那就不是多任务系统了。把多任务有条不紊的跑起来,是 OS 的活儿。去看下 ucos 的手册。

出0入0汤圆

7
 楼主| 发表于 2021-7-21 16:45:18 | 只看该作者
security 发表于 2021-7-21 16:41
要是执行不了的话,那就不是多任务系统了。把多任务有条不紊的跑起来,是 OS 的活儿。去看下 ucos 的手册 ...

就是每次执行一次AppTaskStart  前面创建的任务和信号量再创建一次,感觉没有必要,也行是ucos手册没有看仔细吧。

出0入8汤圆

8
发表于 2021-7-21 16:51:28 | 只看该作者
本帖最后由 security 于 2021-7-21 16:53 编辑
jiangzhimin 发表于 2021-7-21 16:45
就是每次执行一次AppTaskStart  前面创建的任务和信号量再创建一次,感觉没有必要,也行是ucos手册没有看 ...


不会的,后续任务会一直在 while (1) 循环,不会再跑到上面去创建任务和信号量。
也就是跑起来后,再每次执行一次 AppTaskStart ,都是在 while 那边。
就跟中断一样,在哪一点被中断,中断处理完,会再回到那一点继续跑。(把这句话中的中断,替换为其他任务,再看看)

出20入26汤圆

9
发表于 2021-7-22 02:23:04 来自手机 | 只看该作者
这个也是一个任务,没有删除就会存在,每次跑到这个任务也只在while里跑,跟其它任务一样的。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-20 18:35

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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