完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
一,代码如下--------------------------------------------------------------/*********************************************************************/
其中配置定时中断间隔=5ms,tiMESHARING = 5 void setsys_task(void)_task_ 0 { SetBit(P5M,0,1); SetBit(P5M,1,1); SetBit(P4M,6,1); LED1 = 0; LED2 = 0; LED3 = 0; os_create_task(1); os_create_task(2); os_create_task(3); os_delete_task(0); } void blinkled1_task(void)_task_ 1 { while(1) { LED1 = ~LED1; os_wait(K_TMO,15,0); // os_wait(K_IVL,15,0); } } void blinkled2_tsak(void)_task_ 2 { while(1) { LED2 = ~LED2; } } void blinkled3_tsak(void)_task_ 3 { while(1) { LED3 = ~LED3; } } --------------------------------------------------------------/*********************************************************************/ 二,用示波器观察LED1波形变化 1)------------>当在task1中加入 os_wait(K_TMO,15,0); 波形规整(黄色)如图 LED1每隔100ms闪烁一次,而我认为应该间隔15*5ms+25ms+25ms闪动一次。 2)------------>当在task1中加入 os_wait(K_IVL,15,0); 波形不规整(黄色)如图 三,懂的朋友帮忙给点指点,另外我也搜索网络了,网络的资料很少,大部分内容都是重复的, 千万篇一律,如果我的问题表述不清楚,请在下面留言讨论,让我们大家一起进步,谢谢。 |
|
相关推荐
2个回答
|
|
其实os_wait();函数收到K_TMO或者K_IVL信号后并不会立即执行,而是等到其他任务轮询时间用尽后才开始执行,而当其他任务过重时os_wait信号被屏蔽了。--------------------------------------------------->看下图<------------------------------------------
/******************************************************************/ 每个任务的Timer=0时就处于timeout状态,也就是处于ready状态等待运行,当其他任务重时需要频繁运行而且又采用轮询的方式运行时就会出现这样的情况。 -----假如运行task2时,task1已经处于ready状态,但是task2运行完后还要运行task3,这就导致task1还需要等待task3的时间片耗完才能运行,因此就会出现周期不规整的情况。 |
|
|
|
无人敢答?
|
|
|
|
只有小组成员才能发言,加入小组>>
3309 浏览 9 评论
2988 浏览 16 评论
3490 浏览 1 评论
9050 浏览 16 评论
4085 浏览 18 评论
1171浏览 3评论
602浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
594浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2331浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1894浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-20 05:30 , Processed in 1.241840 second(s), Total 84, Slave 64 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号