📄 rtxconf.a51
字号:
INT_ENTRY 2
INT_ENTRY 3
INT_ENTRY 4
INT_ENTRY 5
INT_ENTRY 6
ELSEIF (?RTX_SYSTEM_TIMER = 1)
; Do NOT include the Timer 1 Vector (INT-3)
INT_ENTRY 0
INT_ENTRY 1
INT_ENTRY 2
INT_ENTRY 4
INT_ENTRY 5
INT_ENTRY 6
ENDIF
; Select the Timer 2 configuration.
;
?RTX_TIMER2_TYPE EQU ?RTX_T2_NONE
; The following table attaches the interrupt numbers (0..31) to the
; corresponding bits in the interrupt enable masks of the specific
; processor.
; All three interrupt enable register contents must be defined
; for every interrupt number (even when the specific processor contains
; only one interrupt mask).
; Syntax: DB IE-content, IE1-content, IE2-content
;
?RTX?RTX_INT_TO_BIT_TABLE?RTXCONF SEGMENT CODE
RSEG ?RTX?RTX_INT_TO_BIT_TABLE?RTXCONF
?RTX_INT_TO_BIT_TABLE_BASE:
DB 01H, 00H, 00H ; INT_0
DB 02H, 00H, 00H ; INT_1, Timer 0
DB 04H, 00H, 00H ; INT_2
DB 08H, 00H, 00H ; INT_3, Timer 1
DB 10H, 00H, 00H ; INT_4
DB 20H, 00H, 00H ; INT_5
DB 40H, 00H, 00H ; INT_6
; Define the greatest supported interrupt number
;
?RTX_MAX_INT_NBR EQU 6
; Enter Idle Mode Macro
; Used whenever entering idle state. Peripherals stay active.
; Leaved after interrupt.
;
PCON DATA 87H
ENTER_IDLE MACRO
ORL PCON, #01H ; Set idle mode
ENDM
; Define the register addresses to set the MSB of the page address.
;
?RTX_PAGE_OUT_REG DATA 0A0H ; write directly to Port 2
ELSEIF (?RTX_CPU_TYPE = 13)
; Define the number and addresses of the interrupt enable registers.
; Set the not used registers to the same address as ?RTX_IE
;
INT_EN_MASK_NUMBER EQU 2
?RTX_IE DATA 0A8H
?RTX_IEN1 DATA 0A7H
?RTX_IEN2 DATA 0A8H ; not used
; Generate the interrupt entry points supported by the peripherals
; of the selected CPU type.
;
IF (?RTX_SYSTEM_TIMER = 0)
; Do NOT include the Timer 0 Vector (INT-1)
INT_ENTRY 0
INT_ENTRY 2
INT_ENTRY 3
INT_ENTRY 4
INT_ENTRY 5
INT_ENTRY 6
INT_ENTRY 7
INT_ENTRY 8
INT_ENTRY 9
INT_ENTRY 10
INT_ENTRY 11
INT_ENTRY 12
INT_ENTRY 13
INT_ENTRY 14
ELSEIF (?RTX_SYSTEM_TIMER = 1)
; Do NOT include the Timer 1 Vector (INT-3)
INT_ENTRY 0
INT_ENTRY 1
INT_ENTRY 2
INT_ENTRY 4
INT_ENTRY 5
INT_ENTRY 6
INT_ENTRY 7
INT_ENTRY 8
INT_ENTRY 9
INT_ENTRY 10
INT_ENTRY 11
INT_ENTRY 12
INT_ENTRY 13
INT_ENTRY 14
ELSEIF (?RTX_SYSTEM_TIMER = 2)
; Do NOT include the Timer 2 Vector (INT-5)
INT_ENTRY 0
INT_ENTRY 1
INT_ENTRY 2
INT_ENTRY 3
INT_ENTRY 4
INT_ENTRY 6
INT_ENTRY 7
INT_ENTRY 8
INT_ENTRY 9
INT_ENTRY 10
INT_ENTRY 11
INT_ENTRY 12
INT_ENTRY 13
INT_ENTRY 14
ENDIF
; Select the Timer 2 configuration.
;
?RTX_TIMER2_TYPE EQU ?RTX_T2_STANDARD
; The following table attaches the interrupt numbers (0..31) to the
; corresponding bits in the interrupt enable masks of the specific
; processor.
; All three interrupt enable register contents must be defined
; for every interrupt number (even when the specific processor contains
; only one interrupt mask).
; Syntax: DB IE-content, IE1-content, IE2-content
;
?RTX?RTX_INT_TO_BIT_TABLE?RTXCONF SEGMENT CODE
RSEG ?RTX?RTX_INT_TO_BIT_TABLE?RTXCONF
?RTX_INT_TO_BIT_TABLE_BASE:
DB 01H, 00H, 00H ; INT_0
DB 02H, 00H, 00H ; INT_1, Timer 0
DB 04H, 00H, 00H ; INT_2
DB 08H, 00H, 00H ; INT_3, Timer 1
DB 10H, 00H, 00H ; INT_4
DB 20H, 00H, 00H ; INT_5, Timer 2
DB 40H, 00H, 00H ; INT_6
DB 00H, 80H, 00H ; INT_7
DB 00H, 02H, 00H ; INT_8
DB 00H, 01H, 00H ; INT_9
DB 00H, 04H, 00H ; INT_10
DB 00H, 08H, 00H ; INT_11
DB 00H, 10H, 00H ; INT_12
DB 00H, 20H, 00H ; INT_13
DB 00H, 40H, 00H ; INT_14
; Define the greatest supported interrupt number
;
?RTX_MAX_INT_NBR EQU 14
; Enter Idle Mode Macro
; Used whenever entering idle state. Peripherals stay active.
; Leaved after interrupt.
;
PCON DATA 87H
ENTER_IDLE MACRO
ORL PCON, #01H ; Set idle mode
ENDM
; Define the register addresses to set the MSB of the page address.
;
?RTX_PAGE_OUT_REG DATA 0A0H ; write directly to Port 2
ELSEIF (?RTX_CPU_TYPE = 14)
; Define the number and addresses of the interrupt enable registers.
; Set the not used registers to the same address as ?RTX_IE
;
INT_EN_MASK_NUMBER EQU 2
?RTX_IE DATA 0A8H
?RTX_IEN1 DATA 0A7H
?RTX_IEN2 DATA 0A8H ; not used
; Generate the interrupt entry points supported by the peripherals
; of the selected CPU type.
;
IF (?RTX_SYSTEM_TIMER = 0)
; Do NOT include the Timer 0 Vector (INT-1)
INT_ENTRY 0
INT_ENTRY 2
INT_ENTRY 3
INT_ENTRY 4
INT_ENTRY 5
INT_ENTRY 6
INT_ENTRY 14
ELSEIF (?RTX_SYSTEM_TIMER = 1)
; Do NOT include the Timer 1 Vector (INT-3)
INT_ENTRY 0
INT_ENTRY 1
INT_ENTRY 2
INT_ENTRY 4
INT_ENTRY 5
INT_ENTRY 6
INT_ENTRY 14
ELSEIF (?RTX_SYSTEM_TIMER = 2)
; Do NOT include the Timer 2 Vector (INT-5)
INT_ENTRY 0
INT_ENTRY 1
INT_ENTRY 2
INT_ENTRY 3
INT_ENTRY 4
INT_ENTRY 6
INT_ENTRY 14
ENDIF
; Select the Timer 2 configuration.
;
?RTX_TIMER2_TYPE EQU ?RTX_T2_STANDARD
; The following table attaches the interrupt numbers (0..31) to the
; corresponding bits in the interrupt enable masks of the specific
; processor.
; All three interrupt enable register contents must be defined
; for every interrupt number (even when the specific processor contains
; only one interrupt mask).
; Syntax: DB IE-content, IE1-content, IE2-content
;
?RTX?RTX_INT_TO_BIT_TABLE?RTXCONF SEGMENT CODE
RSEG ?RTX?RTX_INT_TO_BIT_TABLE?RTXCONF
?RTX_INT_TO_BIT_TABLE_BASE:
DB 01H, 00H, 00H ; INT_0
DB 02H, 00H, 00H ; INT_1, Timer 0
DB 04H, 00H, 00H ; INT_2
DB 08H, 00H, 00H ; INT_3, Timer 1
DB 10H, 00H, 00H ; INT_4
DB 20H, 00H, 00H ; INT_5, Timer 2
DB 40H, 00H, 00H ; INT_6
DB 00H, 00H, 00H ; not used
DB 00H, 00H, 00H ; not used
DB 00H, 00H, 00H ; not used
DB 00H, 00H, 00H ; not used
DB 00H, 00H, 00H ; not used
DB 00H, 00H, 00H ; not used
DB 00H, 00H, 00H ; not used
DB 00H, 40H, 00H ; INT_14
; Define the greatest supported interrupt number
;
?RTX_MAX_INT_NBR EQU 14
; Enter Idle Mode Macro
; Used whenever entering idle state. Peripherals stay active.
; Leaved after interrupt.
;
PCON DATA 87H
ENTER_IDLE MACRO
ORL PCON, #01H ; Set idle mode
ENDM
; Define the register addresses to set the MSB of the page address.
;
?RTX_PAGE_OUT_REG DATA 0A0H ; write directly to Port 2
ELSEIF (?RTX_CPU_TYPE = 15)
; Define the number and addresses of the interrupt enable registers.
; Set the not used registers to the same address as ?RTX_IE
;
INT_EN_MASK_NUMBER EQU 1
?RTX_IE DATA 0A8H
?RTX_IEN1 DATA 0A8H
?RTX_IEN2 DATA 0A8H ; not used
; Generate the interrupt entry points supported by the peripherals
; of the selected CPU type.
;
IF (?RTX_SYSTEM_TIMER = 0)
; Do NOT include the Timer 0 Vector (INT-1)
INT_ENTRY 0
INT_ENTRY 2
INT_ENTRY 3
INT_ENTRY 4
INT_ENTRY 5
ELSEIF (?RTX_SYSTEM_TIMER = 1)
; Do NOT include the Timer 1 Vector (INT-3)
INT_ENTRY 0
INT_ENTRY 1
INT_ENTRY 2
INT_ENTRY 4
INT_ENTRY 5
ENDIF
; Select the Timer 2 configuration.
;
?RTX_TIMER2_TYPE EQU ?RTX_T2_NONE
; The following table attaches the interrupt numbers (0..31) to the
; corresponding bits in the interrupt enable masks of the specific
; processor.
; All three interrupt enable register contents must be defined
; for every interrupt number (even when the specific processor contains
; only one interrupt mask).
; Syntax: DB IE-content, IE1-content, IE2-content
;
?RTX?RTX_INT_TO_BIT_TABLE?RTXCONF SEGMENT CODE
RSEG ?RTX?RTX_INT_TO_BIT_TABLE?RTXCONF
?RTX_INT_TO_BIT_TABLE_BASE:
DB 01H, 00H, 00H ; INT_0
DB 02H, 00H, 00H ; INT_1, Timer 0
DB 04H, 00H, 00H ; INT_2
DB 08H, 00H, 00H ; INT_3, Timer 1
DB 10H, 00H, 00H ; INT_4
DB 40H, 00H, 00H ; INT_5
; Define the greatest supported interrupt number
;
?RTX_MAX_INT_NBR EQU 5
; Enter Idle Mode Macro
; Used whenever entering idle state. Peripherals stay active.
; Leaved after interrupt.
;
PCON DATA 87H ; not used
ENTER_IDLE MACRO
NOP
ENDM
; Define the register addresses to set the MSB of the page address.
;
?RTX_PAGE_OUT_REG DATA 0A0H ; write directly to Port 2
ELSEIF (?RTX_CPU_TYPE = 16)
; Define the number and addresses of the interrupt enable registers.
; Set the not used registers to the same address as ?RTX_IE
;
INT_EN_MASK_NUMBER EQU 2
?RTX_IE DATA 0A8H
?RTX_IEN1 DATA 0E8H
?RTX_IEN2 DATA 0A8H ; not used
; Generate the interrupt entry points supported by the peripherals
; of the selected CPU type.
;
IF (?RTX_SYSTEM_TIMER = 0)
; Do NOT include the Timer 0 Vector (INT-1)
INT_ENTRY 0
INT_ENTRY 2
INT_ENTRY 3
INT_ENTRY 4
INT_ENTRY 5
INT_ENTRY 7
INT_ENTRY 8
INT_ENTRY 9
INT_ENTRY 10
INT_ENTRY 11
INT_ENTRY 12
ELSEIF (?RTX_SYSTEM_TIMER = 1)
; Do NOT include the Timer 1 Vector (INT-3)
INT_ENTRY 0
INT_ENTRY 1
INT_ENTRY 2
INT_ENTRY 4
INT_ENTRY 5
INT_ENTRY 7
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -