OpenEdv-开源电子网

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

请教一个问题C语言的用法

[复制链接]

50

主题

134

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
358
金钱
358
注册时间
2014-5-21
在线时间
84 小时
发表于 2016-7-11 20:48:22 | 显示全部楼层 |阅读模式
1金钱
是这样的:在UCOS中。如果在某个子函数中使用了return,程序执行到rerurn时,返回到了哪里?谢谢

最佳答案

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

谁调用就返回给谁
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

9

主题

103

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
228
金钱
228
注册时间
2016-7-4
在线时间
47 小时
发表于 2016-7-11 20:48:23 | 显示全部楼层
回复

使用道具 举报

3

主题

794

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
1502
金钱
1502
注册时间
2015-3-3
在线时间
460 小时
发表于 2016-7-11 21:02:26 | 显示全部楼层
谁调用这个函数就返回给谁
回复

使用道具 举报

9

主题

507

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3347
金钱
3347
注册时间
2013-4-10
在线时间
333 小时
发表于 2016-7-12 02:18:41 | 显示全部楼层
个人觉得,这个指令跟多任务不多作务是一样的作用, 如果是在任务中调用子函数当然只反回调用的任务, 如果是在任务函数中调用,其结果PC指针一定会指向这个任务结束的位置,至于要反回哪里,只有UCOS开发者才知道了!
回复

使用道具 举报

19

主题

430

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1341
金钱
1341
注册时间
2016-4-22
在线时间
187 小时
发表于 2016-7-12 08:42:38 | 显示全部楼层
返回哪里跟ucos没有关系,谁调用就返回调用的函数继续执行。task如果没有手动执行任务切换一般也不会切换任务,自然一直执行下去。
ucos是抢占式多任务系统,会一直执行优先级最高的,除非你的任务里面在恰当的地方执行了任务切换,不然永远只会执行下去。
ps:调用系统的延时函数,或者开发板提供的delay_ms等也能引起任务切换。
伤情最是晚凉天,憔悴斯人不堪怜。
邀酒摧肠三杯醉,寻香惊梦五更寒。
钗头凤斜卿有泪,荼蘼花了我无缘。
小楼寂寞新雨月,也难如钩也难圆。
回复

使用道具 举报

0

主题

5

帖子

0

精华

新手上路

积分
39
金钱
39
注册时间
2016-7-9
在线时间
7 小时
发表于 2016-7-12 08:49:43 | 显示全部楼层
谁调用就给谁
回复

使用道具 举报

56

主题

520

帖子

0

精华

高级会员

Rank: 4

积分
964
金钱
964
注册时间
2014-11-18
在线时间
160 小时
发表于 2016-7-12 13:59:45 | 显示全部楼层
就是退出这个函数 继续往下执行啊
自己选择的路,成家前走完。
回复

使用道具 举报

26

主题

201

帖子

0

精华

高级会员

Rank: 4

积分
606
金钱
606
注册时间
2013-12-14
在线时间
125 小时
发表于 2016-7-12 14:58:44 | 显示全部楼层
任务中使用return,你就等着进硬件错误中断吧。
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-16 17:20

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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