RISC中关中断应该用原子操作,避免多任务环境造成错误

This commit is contained in:
2026-05-22 21:24:45 +08:00
parent ab11821c0c
commit f957224afd
4 changed files with 14 additions and 4 deletions
+9
View File
@@ -20,6 +20,15 @@ uint32_t RISCV_get_MSTATUS(void)
return (result);
}
uint32_t RISCV_get_set_MSTATUS(uint32_t value){
uint32_t result;
__ASM volatile("csrrw %0, mstatus, %1"
: "=r"(result)
:"r"(value)
:"memory");
return (result);
}
/*********************************************************************
* @fn RISCV_set_MSTATUS
*