OpenEdv-开源电子网

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

μc/os怎样在A任务里,让B任务立刻进入下一次循环,不去执行剩下的包含很多次延时的代码?

[复制链接]

81

主题

1002

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1876
金钱
1876
注册时间
2014-9-10
在线时间
208 小时
发表于 2014-12-19 19:31:10 | 显示全部楼层 |阅读模式
5金钱

ucos ii:
怎样在A任务里,让B任务立刻进入下一次循环,不再去执行剩下的包含很多次延时的代码?

具体情况是这样:
B任务里有多次延时,需要10秒以上时间完成。
A任务中停止条件具备,需要立刻重新开启下一次B任务,并向B发送信号。
此时发现B任务还在跑前面没跑完的部分,等好久才回到while开头判断新的信号。

期望实现:A任务中停止条件产生时,B立刻丢弃剩余代码,就像continue的功能。准备迎接下一次开启信号到来。

最佳答案

查看完整内容[请看2#楼]

UCOS III 怎样让一个没有运行完成的任务重新开始 http://www.openedv.com/posts/list/43478.htm 这就是你想要的
小小蜗牛
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

6

主题

46

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
305
金钱
305
注册时间
2014-3-24
在线时间
39 小时
发表于 2014-12-19 19:31:11 | 显示全部楼层
UCOS III 怎样让一个没有运行完成的任务重新开始
http://www.openedv.com/posts/list/43478.htm
这就是你想要的
回复

使用道具 举报

70

主题

6697

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
12691
金钱
12691
注册时间
2012-11-26
在线时间
3710 小时
发表于 2014-12-19 20:33:18 | 显示全部楼层
没用过 
学无止境
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2014-12-19 22:25:29 | 显示全部楼层
这个不好处理啊。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

81

主题

1002

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1876
金钱
1876
注册时间
2014-9-10
在线时间
208 小时
 楼主| 发表于 2014-12-20 08:31:55 | 显示全部楼层
回复【3楼】正点原子:
---------------------------------
不好处理,就是麻烦点了?有思路没?
小小蜗牛
回复

使用道具 举报

81

主题

1002

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1876
金钱
1876
注册时间
2014-9-10
在线时间
208 小时
 楼主| 发表于 2014-12-20 10:10:28 | 显示全部楼层
回复【3楼】正点原子:
---------------------------------
我有个笨办法就是,在B中每句延时后都先判断是否有停止信号,停止就continue。这样子搞可以保证后面不用执行吧


这样的话得写近二十个判断。。。
小小蜗牛
回复

使用道具 举报

81

主题

1002

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1876
金钱
1876
注册时间
2014-9-10
在线时间
208 小时
 楼主| 发表于 2014-12-20 14:13:53 | 显示全部楼层
没人吗????

停车坐爱枫林晚,霜叶红于二月花。
小小蜗牛
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2014-12-21 00:10:43 | 显示全部楼层
在任务主循环加入一个判断吧, 通过一个判断去执行是否重新运行。 太多判断了,也很麻烦。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

28

主题

1489

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1656
金钱
1656
注册时间
2013-7-24
在线时间
1 小时
发表于 2014-12-21 16:32:47 | 显示全部楼层
修改等待方式,事件驱动
于20150522停用该账号:http://www.microstar.club
回复

使用道具 举报

81

主题

1002

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1876
金钱
1876
注册时间
2014-9-10
在线时间
208 小时
 楼主| 发表于 2014-12-22 09:26:28 | 显示全部楼层
回复【7楼】正点原子:
---------------------------------
我用了八楼的建议。
回复【8楼】styleno1:
---------------------------------
用了八楼建议。
回复【9楼】第九度:
---------------------------------
谢谢,可以用的。
小小蜗牛
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-11-23 09:23

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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