完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
ucosiii 调用外部中断时如果用延时函数的话是不是不能用OStimeDlyHMSM()延时啊?我用下面函数的时候没反应,但是换成delay_ms()函数时按下按键就能亮了。
void EXTI4_IRQHandler(void) { // OS_ERR err; OSIntEnter(); if(KEY0==0) { LED1=0; delay_ms(200); //OSTimeDlyHMSM(0,0,0,500,OS_OPT_TIME_HMSM_STRICT,&err); //Ñóê±500ms LED1=1; } EXTI_ClearITPendingBit(EXTI_Line4); OSIntExit(); } //调用delay_ms()函数 void EXTI4_IRQHandler(void) { OS_ERR err; OSIntEnter(); if(KEY0==0) { LED1=0; //delay_ms(200); OSTimeDlyHMSM(0,0,0,500,OS_OPT_TIME_HMSM_STRICT,&err); //Ñóê±500ms LED1=1; } EXTI_ClearITPendingBit(EXTI_Line4); OSIntExit(); } //调用OSTimeDlyHMSM()函数。 求大神解答! |
|
相关推荐
4个回答
|
|
|
OSTimeDlyHMSM()会导致任务进入阻塞态,但是中断服务函数不是任务!压根就没有阻塞这一说,所以肯定不能在中断服务函数中使用OSTimeDlyHMSM()!
|
|
|
|
|
|
那就是在ucosiii下,中断函数中如果有延时的话在这段延时之内就不能进行任务切换了?
|
|
|
|
|
|
中断里面不能嵌套任务吧
|
|
|
|
|
|
中断内会锁定任务调度器
|
|
|
|
|
只有小组成员才能发言,加入小组>>
1018 浏览 1 评论
1849 浏览 0 评论
1830 浏览 1 评论
3254 浏览 5 评论
3581 浏览 9 评论
1021浏览 1评论
1850浏览 1评论
如何知道嵌入式电子控制单元 (ECU) 中的RAM使用情况?
1360浏览 1评论
1852浏览 0评论
1178浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 00:43 , Processed in 0.926603 second(s), Total 80, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
1799