WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
载入中...
搜索中...
未找到
VECTORS

结构体

struct  task_context_t
 
struct  exc_context_t
 
struct  exc_info
 

宏定义

#define ISR_VECTOR_MAX_SUPPORTED   (BUTT_IRQN - 1)
 Defined to be the highest ISR_VECTOR supported by the core
 
#define LOCIEN_IRQ_NUM   32
 
#define LOCIPRI_IRQ_NUM   8
 
#define LOCIPRI_IRQ_BITS   4
 
#define LOCIPRI_DEFAULT_VAL   0x11111111 /* The default interrupt priority is 1. */
 
#define INTERRUPT_PRIO_HIGHEST   7
 
#define INTERRUPT_PRIO_LOWEST   1
 
#define RISCV_SYS_VECTOR_CNT   26
 
#define RISCV_MIE_IRQ_VECTOR_CNT   6
 
#define RISCV_CUSTOM_IRQ_VECTOR_CNT   60
 
#define RISCV_LOCAL_IRQ_VECTOR_CNT   (RISCV_MIE_IRQ_VECTOR_CNT + RISCV_SYS_VECTOR_CNT)
 
#define RISCV_VECTOR_CNT   (RISCV_LOCAL_IRQ_VECTOR_CNT + RISCV_CUSTOM_IRQ_VECTOR_CNT)
 

类型定义

typedef struct exc_info exc_info_t
 

枚举

enum  isr_vector_t {
  USER_SOFTWARE_INT_IRQN = 0 , SUPERVISOR_SOFTWARE_INT_IRQN = 1 , RESERVED_INT2_IRQN = 2 , MACHINE_SOFTWARE_INT_IRQN = 3 ,
  USER_TIMER_INT_IRQN = 4 , SUPERVISOR_TIMER_INT_IRQN = 5 , RESERVED_INT6_IRQN = 6 , MACHINE_TIMER_INT_IRQN = 7 ,
  USER_EXTERNAL_INT_IRQN = 8 , SUPERVISOR_EXTERNAL_INT_IRQN = 9 , RESERVED_INT10_IRQN = 10 , MACHINE_EXTERNAL_INT_IRQN = 11 ,
  NON_MASKABLE_INT_IRQN = 12 , RESERVED_INT13_IRQN = 13 , RESERVED_INT14_IRQN = 14 , RESERVED_INT15_IRQN = 15 ,
  ISR_VECTOR_IRQ_0 = 16 , ISR_VECTOR_IRQ_1 , ISR_VECTOR_IRQ_2 , ISR_VECTOR_IRQ_3 ,
  ISR_VECTOR_IRQ_4 , ISR_VECTOR_IRQ_5 , ISR_VECTOR_IRQ_6 , ISR_VECTOR_IRQ_7 ,
  ISR_VECTOR_IRQ_8 , ISR_VECTOR_IRQ_9 , ISR_VECTOR_IRQ_10 , ISR_VECTOR_IRQ_11 ,
  ISR_VECTOR_IRQ_12 , ISR_VECTOR_IRQ_13 , ISR_VECTOR_IRQ_14 , ISR_VECTOR_IRQ_15 ,
  ISR_VECTOR_IRQ_16 , ISR_VECTOR_IRQ_17 , ISR_VECTOR_IRQ_18 , ISR_VECTOR_IRQ_19 ,
  ISR_VECTOR_IRQ_20 , ISR_VECTOR_IRQ_21 , ISR_VECTOR_IRQ_22 , ISR_VECTOR_IRQ_23 ,
  ISR_VECTOR_IRQ_24 , ISR_VECTOR_IRQ_25 , ISR_VECTOR_IRQ_26 , ISR_VECTOR_IRQ_27 ,
  ISR_VECTOR_IRQ_28 , ISR_VECTOR_IRQ_29 , ISR_VECTOR_IRQ_30 , ISR_VECTOR_IRQ_31 ,
  ISR_VECTOR_IRQ_32 , ISR_VECTOR_IRQ_33 , ISR_VECTOR_IRQ_34 , ISR_VECTOR_IRQ_35 ,
  ISR_VECTOR_IRQ_36 , ISR_VECTOR_IRQ_37 , ISR_VECTOR_IRQ_38 , ISR_VECTOR_IRQ_39 ,
  ISR_VECTOR_IRQ_40 , ISR_VECTOR_IRQ_41 , ISR_VECTOR_IRQ_42 , ISR_VECTOR_IRQ_43 ,
  ISR_VECTOR_IRQ_44 , ISR_VECTOR_IRQ_45 , ISR_VECTOR_IRQ_46 , ISR_VECTOR_IRQ_47 ,
  ISR_VECTOR_IRQ_48 , ISR_VECTOR_IRQ_49 , ISR_VECTOR_IRQ_50 , ISR_VECTOR_IRQ_51 ,
  ISR_VECTOR_IRQ_52 , ISR_VECTOR_IRQ_53 , ISR_VECTOR_IRQ_54 , ISR_VECTOR_IRQ_55 ,
  ISR_VECTOR_IRQ_56 , ISR_VECTOR_IRQ_57 , ISR_VECTOR_IRQ_58 , ISR_VECTOR_IRQ_59 ,
  ISR_VECTOR_IRQ_60 , ISR_VECTOR_IRQ_61 , ISR_VECTOR_IRQ_62 , ISR_VECTOR_IRQ_63 ,
  ISR_VECTOR_IRQ_64 , ISR_VECTOR_IRQ_65 , ISR_VECTOR_IRQ_66 , ISR_VECTOR_IRQ_67 ,
  ISR_VECTOR_IRQ_68 , ISR_VECTOR_IRQ_69 , ISR_VECTOR_IRQ_70 , ISR_VECTOR_IRQ_71 ,
  ISR_VECTOR_IRQ_72 , ISR_VECTOR_IRQ_73 , ISR_VECTOR_IRQ_74 , ISR_VECTOR_IRQ_75 ,
  ISR_VECTOR_IRQ_76 , ISR_VECTOR_IRQ_77 , ISR_VECTOR_IRQ_78 , ISR_VECTOR_IRQ_79 ,
  ISR_VECTOR_IRQ_80 , ISR_VECTOR_IRQ_81
}
 Interrupt vector identifiers 更多...
 

函数

const isr_functionisr_get_ramexceptiontable_addr (void)
 Get the ram exception table address.
 
void reserve_handler (void)
 Reserve handler process.
 
void default_handler (void)
 Default handler process.
 
void exc_info_display (const exc_info_t *exc)
 Print exception info.
 

详细描述

宏定义说明

◆ INTERRUPT_PRIO_HIGHEST

#define INTERRUPT_PRIO_HIGHEST   7

Highest priority of a hardware interrupt.

◆ INTERRUPT_PRIO_LOWEST

#define INTERRUPT_PRIO_LOWEST   1

Lowest priority of a hardware interrupt.

◆ ISR_VECTOR_MAX_SUPPORTED

#define ISR_VECTOR_MAX_SUPPORTED   (BUTT_IRQN - 1)

Defined to be the highest ISR_VECTOR supported by the core

◆ LOCIEN_IRQ_NUM

#define LOCIEN_IRQ_NUM   32

◆ LOCIPRI_DEFAULT_VAL

#define LOCIPRI_DEFAULT_VAL   0x11111111 /* The default interrupt priority is 1. */

◆ LOCIPRI_IRQ_BITS

#define LOCIPRI_IRQ_BITS   4

◆ LOCIPRI_IRQ_NUM

#define LOCIPRI_IRQ_NUM   8

◆ RISCV_CUSTOM_IRQ_VECTOR_CNT

#define RISCV_CUSTOM_IRQ_VECTOR_CNT   60

Count of HimiDeer local interrupt vector 6~76, enabled by custom CSR locie0~2.

◆ RISCV_LOCAL_IRQ_VECTOR_CNT

#define RISCV_LOCAL_IRQ_VECTOR_CNT   (RISCV_MIE_IRQ_VECTOR_CNT + RISCV_SYS_VECTOR_CNT)

Count of HimiDeer local IRQ interrupt vector.

◆ RISCV_MIE_IRQ_VECTOR_CNT

#define RISCV_MIE_IRQ_VECTOR_CNT   6

Count of HimiDeer local interrupt vector 0 - 5, enabled by CSR mie 26 -31 bit.

◆ RISCV_SYS_VECTOR_CNT

#define RISCV_SYS_VECTOR_CNT   26

Count of HimiDeer system interrupt vector.

◆ RISCV_VECTOR_CNT

#define RISCV_VECTOR_CNT   (RISCV_LOCAL_IRQ_VECTOR_CNT + RISCV_CUSTOM_IRQ_VECTOR_CNT)

Count of himideer interrupt vector.

类型定义说明

◆ exc_info_t

typedef struct exc_info exc_info_t

枚举类型说明

◆ isr_vector_t

Interrupt vector identifiers

枚举值
USER_SOFTWARE_INT_IRQN 
SUPERVISOR_SOFTWARE_INT_IRQN 
RESERVED_INT2_IRQN 
MACHINE_SOFTWARE_INT_IRQN 
USER_TIMER_INT_IRQN 
SUPERVISOR_TIMER_INT_IRQN 
RESERVED_INT6_IRQN 
MACHINE_TIMER_INT_IRQN 
USER_EXTERNAL_INT_IRQN 
SUPERVISOR_EXTERNAL_INT_IRQN 
RESERVED_INT10_IRQN 
MACHINE_EXTERNAL_INT_IRQN 
NON_MASKABLE_INT_IRQN 
RESERVED_INT13_IRQN 
RESERVED_INT14_IRQN 
RESERVED_INT15_IRQN 
ISR_VECTOR_IRQ_0 
ISR_VECTOR_IRQ_1 
ISR_VECTOR_IRQ_2 
ISR_VECTOR_IRQ_3 
ISR_VECTOR_IRQ_4 
ISR_VECTOR_IRQ_5 
ISR_VECTOR_IRQ_6 
ISR_VECTOR_IRQ_7 
ISR_VECTOR_IRQ_8 
ISR_VECTOR_IRQ_9 
ISR_VECTOR_IRQ_10 
ISR_VECTOR_IRQ_11 
ISR_VECTOR_IRQ_12 
ISR_VECTOR_IRQ_13 
ISR_VECTOR_IRQ_14 
ISR_VECTOR_IRQ_15 
ISR_VECTOR_IRQ_16 
ISR_VECTOR_IRQ_17 
ISR_VECTOR_IRQ_18 
ISR_VECTOR_IRQ_19 
ISR_VECTOR_IRQ_20 
ISR_VECTOR_IRQ_21 
ISR_VECTOR_IRQ_22 
ISR_VECTOR_IRQ_23 
ISR_VECTOR_IRQ_24 
ISR_VECTOR_IRQ_25 
ISR_VECTOR_IRQ_26 
ISR_VECTOR_IRQ_27 
ISR_VECTOR_IRQ_28 
ISR_VECTOR_IRQ_29 
ISR_VECTOR_IRQ_30 
ISR_VECTOR_IRQ_31 
ISR_VECTOR_IRQ_32 
ISR_VECTOR_IRQ_33 
ISR_VECTOR_IRQ_34 
ISR_VECTOR_IRQ_35 
ISR_VECTOR_IRQ_36 
ISR_VECTOR_IRQ_37 
ISR_VECTOR_IRQ_38 
ISR_VECTOR_IRQ_39 
ISR_VECTOR_IRQ_40 
ISR_VECTOR_IRQ_41 
ISR_VECTOR_IRQ_42 
ISR_VECTOR_IRQ_43 
ISR_VECTOR_IRQ_44 
ISR_VECTOR_IRQ_45 
ISR_VECTOR_IRQ_46 
ISR_VECTOR_IRQ_47 
ISR_VECTOR_IRQ_48 
ISR_VECTOR_IRQ_49 
ISR_VECTOR_IRQ_50 
ISR_VECTOR_IRQ_51 
ISR_VECTOR_IRQ_52 
ISR_VECTOR_IRQ_53 
ISR_VECTOR_IRQ_54 
ISR_VECTOR_IRQ_55 
ISR_VECTOR_IRQ_56 
ISR_VECTOR_IRQ_57 
ISR_VECTOR_IRQ_58 
ISR_VECTOR_IRQ_59 
ISR_VECTOR_IRQ_60 
ISR_VECTOR_IRQ_61 
ISR_VECTOR_IRQ_62 
ISR_VECTOR_IRQ_63 
ISR_VECTOR_IRQ_64 
ISR_VECTOR_IRQ_65 
ISR_VECTOR_IRQ_66 
ISR_VECTOR_IRQ_67 
ISR_VECTOR_IRQ_68 
ISR_VECTOR_IRQ_69 
ISR_VECTOR_IRQ_70 
ISR_VECTOR_IRQ_71 
ISR_VECTOR_IRQ_72 
ISR_VECTOR_IRQ_73 
ISR_VECTOR_IRQ_74 
ISR_VECTOR_IRQ_75 
ISR_VECTOR_IRQ_76 
ISR_VECTOR_IRQ_77 
ISR_VECTOR_IRQ_78 
ISR_VECTOR_IRQ_79 
ISR_VECTOR_IRQ_80 
ISR_VECTOR_IRQ_81 

函数说明

◆ default_handler()

void default_handler ( void  )

Default handler process.

◆ exc_info_display()

void exc_info_display ( const exc_info_t exc)

Print exception info.

参数
excException info.

◆ isr_get_ramexceptiontable_addr()

const isr_function * isr_get_ramexceptiontable_addr ( void  )

Get the ram exception table address.

返回
The ram exception table address.

◆ reserve_handler()

void reserve_handler ( void  )

Reserve handler process.