//() 函数void OSSemPend( OS_EVENT*pevent , INT16U timeout , INT8U * perr ){INT8U pend_stat ;==#if OS_CRITICAL_METHOD 3OS_CPU_SR cpu_sr = 0 ;#endif>#if OS_ARG_CHK_EN0if ( perr == ( INT8U *) 0) {return ;}
在ucos的中断函数中是每次写中断函数都需要OSIntEnter()和OSIntExit() 用来判断中断嵌套层数和进行任务调度,有些情况是这样的,例如有的书上的程序中有RTC中断服务函数,但是并没有调用操作系统的进入中断服务函数OSIntEnter()和退出中断服务函数OSIntExit(),解释是因为在RTC中断服务函数中没有调用任何操作...
(1)、OSSemPend()和OSSemPost()必须成对出现在一个任务中。如楼主上面的代码。ossempend(rondamsem,0...