mirror of
https://gitee.com/cosyos/cosyos.git
synced 2026-09-21 04:43:40 +08:00
+5
-2
@@ -115,8 +115,11 @@ do{ \
|
||||
|
||||
// <i> 方案二、互斥访问机制
|
||||
// <i> 该方案适用于所有ARM内核,可实现全局不关总中断、零中断延迟。
|
||||
// <i> 缺点是在默认情况下,系统会全局占用寄存器r7专用于互斥访问,这使得大部分函数都将无法使用r7。
|
||||
// <i> 详情参见相关说明。
|
||||
// <i> 缺点是在默认情况下、为提高易用性,系统会自动声明“全局寄存器变量r7”专用于互斥访问,这使得全局所有非库函数都将无法使用r7。
|
||||
// <i> 为了追求更好的性能,您可采用手动声明方式:
|
||||
// <i> 1、注释掉 port_cmx.h 文件中的自动声明;
|
||||
// <i> 2、把所有调用中断挂起服务_FIFO的中断函数,统一放在一个C文件中,并在该文件中一次性声明全局寄存器变量r7。
|
||||
// <i> 如在 stm32f0xx_it.c 文件中,在所有中断函数上方加入 register void **mPendSV_FIFO_Rx __ASM("r7");
|
||||
|
||||
// <i> 方案三、关闭总中断
|
||||
// <i> 该方案适用于所有ARM内核,并具有极短的、确定的关闭总中断时间(包括再次开启总中断在内,不超过10个指令周期)。
|
||||
|
||||
Reference in New Issue
Block a user