spimint.lis
来自「Cypress cy7c63318 鼠标开发板的源代码」· LIS 代码 · 共 564 行 · 第 1/3 页
LIS
564 行
0000 ENDIF ; PGMODE LOCKED
0000 IF ( SYSTEM_IDXPG_TRACKS_IDX_PP )
0000 RAM_CHANGE_PAGE_MODE FLAG_PGMODE_10b ; LMM with independent IndexPage
0000 ENDIF ; PGMODE FREE
0000 ENDIF ; SYSTEM_LARGE_MEMORY_MODEL
0000 macro RAM_X_POINTS_TO_STACKPAGE
0000 IF ( SYSTEM_LARGE_MEMORY_MODEL )
0000 or F, FLAG_PGMODE_01b
0000 ENDIF ; SYSTEM_LARGE_MEMORY_MODEL
0000 macro RAM_X_POINTS_TO_INDEXPAGE
0000 IF ( SYSTEM_LARGE_MEMORY_MODEL )
0000 and F, ~FLAG_PGMODE_01b
0000 ENDIF ; SYSTEM_LARGE_MEMORY_MODEL
0000 macro RAM_PROLOGUE( ACTUAL_CLASS )
0000
0000 IF ( @ACTUAL_CLASS & RAM_USE_CLASS_1 )
0000 ; Nothing to do
0000 ENDIF ; RAM_USE_CLASS_1
0000
0000 IF ( @ACTUAL_CLASS & RAM_USE_CLASS_2 )
0000 IF ( SYSTEM_IDXPG_TRACKS_IDX_PP )
0000 RAM_X_POINTS_TO_STACKPAGE ; exit native paging mode!
0000 ENDIF
0000 ENDIF ; RAM_USE_CLASS_2
0000
0000 IF ( @ACTUAL_CLASS & RAM_USE_CLASS_3 )
0000 IF ( SYSTEM_IDXPG_TRACKS_STK_PP )
0000 RAM_X_POINTS_TO_INDEXPAGE ; exit native paging mode!
0000 ENDIF
0000 ENDIF ; RAM_USE_CLASS_3
0000
0000 IF ( @ACTUAL_CLASS & RAM_USE_CLASS_4 )
0000 ; Nothing to do
0000 ENDIF ; RAM_USE_CLASS_4
0000
0000 macro RAM_EPILOGUE( ACTUAL_CLASS )
0000
0000 IF ( @ACTUAL_CLASS & RAM_USE_CLASS_1 )
0000 ; Nothing to do
0000 ENDIF ; RAM_USE_CLASS_1
0000
0000 IF ( @ACTUAL_CLASS & RAM_USE_CLASS_2 )
0000 RAM_RESTORE_NATIVE_PAGING
0000 ENDIF ; RAM_USE_CLASS_2
0000
0000 IF ( @ACTUAL_CLASS & RAM_USE_CLASS_3 )
0000 RAM_RESTORE_NATIVE_PAGING
0000 ENDIF ; RAM_USE_CLASS_3
0000
0000 IF ( @ACTUAL_CLASS & RAM_USE_CLASS_4 )
0000 ; Nothing to do
0000 ENDIF ; RAM_USE_CLASS_4
0000
0000 macro REG_PRESERVE( IOReg )
0000 mov A, reg[ @IOReg ]
0000 push A
0000 macro REG_RESTORE( IOReg )
0000 pop A
0000 mov reg[ @IOReg ], A
0000 macro ISR_PRESERVE_PAGE_POINTERS
0000 IF ( SYSTEM_LARGE_MEMORY_MODEL )
0000 REG_PRESERVE CUR_PP
0000 REG_PRESERVE IDX_PP
0000 REG_PRESERVE MVR_PP
0000 REG_PRESERVE MVW_PP
0000 ENDIF
0000 macro ISR_RESTORE_PAGE_POINTERS
0000 IF ( SYSTEM_LARGE_MEMORY_MODEL )
0000 REG_RESTORE MVW_PP
0000 REG_RESTORE MVR_PP
0000 REG_RESTORE IDX_PP
0000 REG_RESTORE CUR_PP
0000 ENDIF
0000 SPIM_MOSI_P15: EQU 0
0001 SPIM_MOSI_P16: EQU 1
0001 SPIM_MIS0_P15: EQU 1
0000 SPIM_MISO_P16: EQU 0
0000
0000 ;--------------------------------------------------
0000 ; Register constants and masks
0000 ;--------------------------------------------------
0080 SPIM_SWAP: EQU 0x80
0008 SPIM_SPIM_MODE_0: EQU 0x08 // MODE 0 - Leading edge latches data - pos clock
0000 SPIM_SPIM_MODE_1: EQU 0x00 // MODE 1 - Leading edge latches data - neg clock
000C SPIM_SPIM_MODE_2: EQU 0x0C // MODE 2 - Trailing edge latches data - pos clock
0008 SPIM_SPIM_MODE_3: EQU 0x08 // MODE 3 - Trailing edge latches data - neg clock
0040 SPIM_SPIM_LSB_FIRST: EQU 0x40 // LSB bit transmitted/received first
0000 SPIM_SPIM_MSB_FIRST: EQU 0x00 // MSB bit transmitted/received first
0000
0000 ;---------------------------
0000 ; SPIM Status register masks
0000 ;---------------------------
0000
0000 ;--------------------------------------------------
0000 ; Registers used by SPIM
0000 ;--------------------------------------------------
0000
0000 ; end of file SPIM.inc
0000
0000
0000 ;-----------------------------------------------
0000 ; Global Symbols
0000 ;-----------------------------------------------
export _SPIM_TX_ISR
export _SPIM_RX_ISR
AREA InterruptRAM (RAM,REL,CON)
;@PSoC_UserCode_INIT@ (Do not change this line.)
;---------------------------------------------------
; Insert your custom declarations below this banner
;---------------------------------------------------
;------------------------
; Includes
;------------------------
;------------------------
; Constant Definitions
;------------------------
;------------------------
; Variable Allocation
;------------------------
;---------------------------------------------------
; Insert your custom declarations above this banner
;---------------------------------------------------
;@PSoC_UserCode_END@ (Do not change this line.)
AREA text (ROM, REL)
;-----------------------------------------------------------------------------
; FUNCTION NAME: _SPIM_TX_ISR
;
; DESCRIPTION: Unless modified, this implements only a null handler stub.
;
;-----------------------------------------------------------------------------
;
0000 _SPIM_TX_ISR:
0000
0000 ;@PSoC_UserCode_TX@ (Do not change this line.)
0000 ;---------------------------------------------------
0000 ; Insert your custom code below this banner
0000 ;---------------------------------------------------
0000 ; NOTE: interrupt service routines must preserve
0000 ; the values of the A and X CPU registers.
0000
0000 ;---------------------------------------------------
0000 ; Insert your custom code above this banner
0000 ;---------------------------------------------------
0000 ;@PSoC_UserCode_END@ (Do not change this line.)
0000
0000 7E reti
0001
0001 ;-----------------------------------------------------------------------------
0001 ; FUNCTION NAME: _SPIM_RX_ISR
0001 ;
0001 ; DESCRIPTION: Unless modified, this implements only a null handler stub.
0001 ;
0001 ;-----------------------------------------------------------------------------
0001 ;
0001
0001 _SPIM_RX_ISR:
0001
0001 ;@PSoC_UserCode_RX@ (Do not change this line.)
0001 ;---------------------------------------------------
0001 ; Insert your custom code below this banner
0001 ;---------------------------------------------------
0001 ; NOTE: interrupt service routines must preserve
0001 ; the values of the A and X CPU registers.
0001
0001 ;---------------------------------------------------
0001 ; Insert your custom code above this banner
0001 ;---------------------------------------------------
0001 ;@PSoC_UserCode_END@ (Do not change this line.)
0001
0001 7E reti
0002
0002
0002 ; end of file SPIMINT.asm
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?