🔥作者简介: 一个平凡而乐于分享的小比特,中南民族大学通信工程专业研究生,研究方向无线联邦学习 🎬擅长领域:驱动开发,嵌入式软件开发,BSP开发 ❄️作者主页:一个平凡而乐于分享的小比特的个人主页 ✨收录专栏:UCOS-III,本专栏为UCOS-III学习记录 欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖💖
函数:
临界区调用格式:
CPU_SR_ALLOC();
/* 非临界区代码 */
CPU_CRITICAL_ENTER();
{
...... /* 临界区代码 */
}
CPU_CRITICAL_EXIT();
/* 非临界区代码 */特点:
注意:调度锁只是将调度器关闭,并不影响中断的执行,中断依旧正常触发,只是不会执行任务切换
函数:
任务调度锁使用格式:
OS_ERR err;
OSSchedLock(&err); /* 调度器上锁 */
{
/* 操作代码 */
}
OSSchedUnlock(&err); /* 调度器解锁 */特点:
临界段代码保护&任务调度锁区别: