|
WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
|

宏定义 | |
| #define | dsb() __asm__ __volatile__("fence":::"memory") |
| #define | isb() __asm__ __volatile__("fence":::"memory") |
| #define | nop() __asm__ __volatile__("nop"); |
| #define | wfi() __asm__ __volatile__("wfi") |
| #define | get_int_status() !(read_csr(mstatus) & MSTATUS_MIE) |
| #define | int_enter_lock() clear_csr(mstatus, MSTATUS_MIE) |
| #define | int_exit_lock() set_csr(mstatus, MSTATUS_MIE) |
| #define | int_disable_fault_exception() |
| #define | int_enable_fault_exception() |
| #define | get_temp_lr(temp_lr) __asm volatile("mv %0, x1" : "=r"(temp_lr)) |
| #define | get_temp_pc(temp_pc) __asm volatile("csrr %0, mepc" : "=r"(temp_pc)) |
| #define | get_temp_sp(temp_sp) __asm volatile("mv %0, sp" : "=r"(temp_sp)) |
| #define dsb | ( | ) | __asm__ __volatile__("fence":::"memory") |
| #define get_int_status | ( | ) | !(read_csr(mstatus) & MSTATUS_MIE) |
| #define get_temp_lr | ( | temp_lr | ) | __asm volatile("mv %0, x1" : "=r"(temp_lr)) |
| #define get_temp_pc | ( | temp_pc | ) | __asm volatile("csrr %0, mepc" : "=r"(temp_pc)) |
| #define get_temp_sp | ( | temp_sp | ) | __asm volatile("mv %0, sp" : "=r"(temp_sp)) |
| #define int_disable_fault_exception | ( | ) |
| #define int_enable_fault_exception | ( | ) |
| #define int_enter_lock | ( | ) | clear_csr(mstatus, MSTATUS_MIE) |
| #define int_exit_lock | ( | ) | set_csr(mstatus, MSTATUS_MIE) |
| #define isb | ( | ) | __asm__ __volatile__("fence":::"memory") |
| #define nop | ( | ) | __asm__ __volatile__("nop"); |
| #define wfi | ( | ) | __asm__ __volatile__("wfi") |