OpenEdv-开源电子网

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

关于UCOSIII延时的一个问题

[复制链接]

9

主题

47

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1779
金钱
1779
注册时间
2015-4-24
在线时间
680 小时
发表于 2015-7-24 15:27:02 | 显示全部楼层 |阅读模式
5金钱
在学习UCOSIII时间片轮询调度实验室时候,原子哥的两个任务用的延时都是OSTimeDlyHMSM(0,0,1,0,OS_OPT_TIME_HMSM_STRICT,&err)来延时1s,我把第一个OSTimeDlyHMSM换成了OSTimeDly(200,OS_OPT_TIME_PERIODIC,&err);本以为这样应该也是延时1秒,时基是5ms ,5ms*200应该是1秒吧,结果是第一个任务跑的比第二个快了,而当设置成OSTimeDly(201,OS_OPT_TIME_PERIODIC,&err)时,任务一任务二才同步。。我想问的是为什么是201而不是200呢?这两天刚开始接触UCOS,希望大神们能帮忙解答

最佳答案

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

不会的啊,我测试了,都是同步的啊, 你下载下面这个代码改一下试试看。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

88

主题

7377

帖子

5

精华

资深版主

Rank: 8Rank: 8

积分
14980
金钱
14980
注册时间
2013-11-13
在线时间
1823 小时
发表于 2015-7-24 15:27:03 | 显示全部楼层
不会的啊,我测试了,都是同步的啊, 你下载下面这个代码改一下试试看。

例6-3 UCOSIII时间片轮转调度.rar

866.61 KB, 下载次数: 601

开往春天的手扶拖拉机
回复

使用道具 举报

81

主题

1002

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1876
金钱
1876
注册时间
2014-9-10
在线时间
208 小时
发表于 2015-7-24 16:13:02 | 显示全部楼层
帮顶。。。。
小小蜗牛
回复

使用道具 举报

9

主题

47

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1779
金钱
1779
注册时间
2015-4-24
在线时间
680 小时
 楼主| 发表于 2015-7-24 21:51:09 | 显示全部楼层
回复【3楼】zuozhongkai:
---------------------------------
你把第一个任务的OSTimeDlyHMSM(0,0,1,0,OS_OPT_TIME_HMSM_STRICT,&err);用OSTimeDly(200,OS_OPT_TIME_PERIODIC,&err)试试,你看看一分钟之后的变化,然后你再把200该成201,再试试。。。。。。。。我的测试是
OSTimeDlyHMSM(0,0,1,0,OS_OPT_TIME_HMSM_STRICT,&err)=OSTimeDly(201,OS_OPT_TIME_PERIODIC,&err)
不知道为什么。
回复

使用道具 举报

88

主题

7377

帖子

5

精华

资深版主

Rank: 8Rank: 8

积分
14980
金钱
14980
注册时间
2013-11-13
在线时间
1823 小时
发表于 2015-7-25 10:50:07 | 显示全部楼层
你用OSTimeDlyHMSM()函数的时候第五个参数用的OS_OPT_TIME_HMSM_STRICT,用函数OSTimeDly()的时候第二个参数却用的OS_OPT_PERIODIC,而我任务二里面的OSTimeDlyHMSM()第五个参数是OS_OPT_TIME_STRICRT,你要两个任务看起来完全同步那么延时函数的参数就必须设置的一样,OSTimeDlyHMSM()和OSTimeDly()有三种工作模式:相对模式,周期模式和绝对模式。其中OS_OPT_TIME_DLY代表相对模式,OS_OPT_TIME_PERIODIC代表周期模式,OS_OPT_TIME_MATCH代表绝对模式,OS_OPT_TIME_TIMEOUT和OS_OPT_TIME_DLY一样的。你两个任务用的不同的延时模式他们的效果能一样吗?
开往春天的手扶拖拉机
回复

使用道具 举报

9

主题

47

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1779
金钱
1779
注册时间
2015-4-24
在线时间
680 小时
 楼主| 发表于 2015-7-25 18:10:13 | 显示全部楼层
回复【5楼】zuozhongkai:
---------------------------------
恩恩,明白了,是我搞错了....今天遇到一个硬件上的问题,在swd模式下载的时候出现invalid rom table,但是在jtag模式下就能下载,好费解,昨天用的还好好地呢。。
回复

使用道具 举报

88

主题

7377

帖子

5

精华

资深版主

Rank: 8Rank: 8

积分
14980
金钱
14980
注册时间
2013-11-13
在线时间
1823 小时
发表于 2015-7-25 18:21:06 | 显示全部楼层
我也遇到过invalid rom table这种问题,自己瞎折腾几次就好了
开往春天的手扶拖拉机
回复

使用道具 举报

9

主题

47

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1779
金钱
1779
注册时间
2015-4-24
在线时间
680 小时
 楼主| 发表于 2015-7-25 20:40:15 | 显示全部楼层
回复【7楼】zuozhongkai:
---------------------------------
论坛上说串口檫除FLASH,我不知道怎么用串口檫除FLASH啊???
回复

使用道具 举报

6

主题

45

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
313
金钱
313
注册时间
2016-12-3
在线时间
47 小时
发表于 2017-1-12 10:04:13 | 显示全部楼层
zuozhongkai 发表于 2015-7-24 15:27
不会的啊,我测试了,都是同步的啊, 你下载下面这个代码改一下试试看。

例程很好,注释清晰的解释了ucosIII中的延时函数,赞一个!
回复

使用道具 举报

54

主题

1008

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2384
金钱
2384
注册时间
2012-11-22
在线时间
403 小时
发表于 2017-1-13 08:58:44 | 显示全部楼层
FAIRY 发表于 2015-7-25 18:10
回复【5楼】zuozhongkai:
---------------------------------
恩恩,明白了,是我搞错了....今天遇到一个硬 ...

降低SWD速度,减小线长。
态度决定一切
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-21 21:55

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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