mirror of
https://gitee.com/cosyos/cosyos.git
synced 2026-02-05 19:39:42 +08:00
@@ -271,8 +271,8 @@ MCU的核心价值在于中断的使用,实现对紧急事件的及时响应
|
||||
* **中断本地服务**
|
||||
是指在用户中断中调用并在本地直接执行的服务,需要互斥访问机制相配合。
|
||||
* **中断挂起服务**
|
||||
是指在用户中断中调用的服务不在本地直接执行,而是把服务的相关信息存入局部的结构体中,
|
||||
再把结构体指针存入中断挂起服务缓存,再触发PendSV,而后在PendSV中执行。
|
||||
是指在用户中断中调用的服务不在本地直接执行,而是把服务的相关内容存入局部的结构体中,
|
||||
再把结构体指针存入中断挂起服务缓存队列(PendSV_FIFO),再触发PendSV,而后在PendSV中执行。
|
||||
|
||||
### 互斥访问机制
|
||||
* 用户中断中读全局变量 <br>
|
||||
@@ -288,7 +288,7 @@ MCU的核心价值在于中断的使用,实现对紧急事件的及时响应
|
||||
互斥访问:如果队列正在被访问,将返回失败(NULL)。<br>
|
||||
|
||||
### 中断挂起服务缓存
|
||||
CosyOS-II 中断挂起服务缓存队列,已实现所有内核的MCU均为先入先出队列(FIFO)。<br>
|
||||
CosyOS-II 中断挂起服务缓存队列(PendSV_FIFO),已实现所有内核的MCU均为先入先出队列(FIFO)。<br>
|
||||
中断挂起服务缓存队列,有必要先入先出吗?答案是确定的,原因在于当中断并发时,服务的执行顺序要符合“不同中断间可能存在的”和“同一中断中必然存在的”提请服务的时序关系。再有,“入队列”与“出队列”的过程必须是原子操作,“操作流”不能被打断。<br>
|
||||
|
||||
### 中断使用注意事项
|
||||
|
||||
Reference in New Issue
Block a user