📄 csdhl.lis
字号:
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 CSD_WITH_PWM: equ 0h
0002 CSD_REF_VALUE: equ 0x2
0001 CSD_FEEDBACK_PIN: equ 0x1
0000 CSD_FEEDBACK_P1_1: equ 0
0001 CSD_FEEDBACK_P3_1: equ 1
0002 CSD_FEEDBACK_P1_5: equ 2
0000
0001 CSD_CAPACITOR_PIN: equ 1
0001 CSD_CAPACITOR_P0_1: equ 1
0002 CSD_CAPACITOR_P0_3: equ 2
0000
0001 CSD_AUTORESET: equ 1
0000
0000 ;--------------------------------------------------
0000 ; Constants for Scan Speed values
0000 ;--------------------------------------------------
0000 CSD_ULTRA_FAST_SPEED: equ 0x00
0001 CSD_FAST_SPEED: equ 0x01
0002 CSD_NORMAL_SPEED: equ 0x02
0003 CSD_SLOW_SPEED: equ 0x03
0000
0000 ;--------------------------------------------------
0000 ; Constants for Resolution values
0000 ;--------------------------------------------------
0009 CSD_MIN_RESOLUTION: equ 9
0010 CSD_MAX_RESOLUTION: equ 16
0000
0000 ;--------------------------------------------------
0000 ; Constants for CSD API's
0000 ;--------------------------------------------------
0000
0010 CSD_ButtonCount: equ 10h
0000 CSD_SliderCount: equ 0h
0010 CSD_TotalSensorCount: equ 10h
0000
0010 CSD_BUTTONS_EXIST: equ 10h
0000 CSD_SLIDERS_EXIST: equ 0h
0000
000F CSD_HYSTERESIS: equ fh
0001 CSD_Debounce: equ 1h
0014 CSD_LowBaselineReset: equ 14h
0000
004B CSD_FINGER_THRESHOLD: equ 4bh
0028 CSD_NOISE_THRESHOLD: equ 28h
0028 CSD_NEGATIVE_NOISE_THRESHOLD: equ 28h
0064 CSD_BASELINE_UPDATE_THRESHOLD: equ 64h
0000
0000 ;--------------------------------------------------
0000 ; Registers Address Constants for CSD
0000 ;--------------------------------------------------
0000
0020 CSD_CNT_FUNC_REG: equ 20h ; CNT Function Reg
0021 CSD_CNT_IN_REG: equ 21h ; CNT Input Reg
0022 CSD_CNT_OUT_REG: equ 22h ; CNT Output Reg
0020 CSD_CNT_COUNTER_REG: equ 20h ; CNT Counter Reg
0021 CSD_CNT_PERIOD_REG: equ 21h ; CNT Period Reg
0022 CSD_CNT_COMPARE_REG: equ 22h ; CNT Compare Reg
0023 CSD_CNT_CONTROL_REG: equ 23h ; CNT Control Reg
0000
0024 CSD_PRS_FUNC_LSB_REG: equ 24h ; PRS LSB Function Reg
0025 CSD_PRS_IN_LSB_REG: equ 25h ; PRS LSB Input Reg
0026 CSD_PRS_OUT_LSB_REG: equ 26h ; PRS LSB Output Reg
0027 CSD_PRS_CONTROL_LSB_REG: equ 27h ; PRS LSB Control Reg
0024 CSD_PRS_SHIFT_LSB_REG: equ 24h ; PRS LSB Shift Reg
0025 CSD_PRS_POLY_LSB_REG: equ 25h ; PRS LSB Polynomial Reg
0026 CSD_PRS_SEED_LSB_REG: equ 26h ; PRS LSB Seed Reg
0000
0028 CSD_PRS_FUNC_MSB_REG: equ 28h ; PRS MSB Function Reg
0029 CSD_PRS_IN_MSB_REG: equ 29h ; PRS MSB Input Reg
002A CSD_PRS_OUT_MSB_REG: equ 2ah ; PRS MSB Output Reg
002B CSD_PRS_CONTROL_MSB_REG: equ 2bh ; PRS MSB Control Reg
0028 CSD_PRS_SHIFT_MSB_REG: equ 28h ; PRS MSB Shift Reg
0029 CSD_PRS_POLY_MSB_REG: equ 29h ; PRS MSB Polynimial Reg
002A CSD_PRS_SEED_MSB_REG: equ 2ah ; PRS MSB Seed Reg
0000
0076 CSD_ACE_CONTROL1_REG: equ 76h ; CMP Control Reg
0077 CSD_ACE_CONTROL2_REG: equ 77h ; CMP Control Reg
0000
0084 CSD_ASE_CONTROL_REG: equ 84h ; CMP_REF Conrol Reg
00E6 CSD_ADC_TRIM_REG: equ e6h ; ADC Trim Register
0069 CSD_ADC_CONTROL_REG: equ 69h ; ADC Control Reg
0000
0000
0000 DR_OFFSET: equ 00h
0000 DM0_OFFSET: equ 00h ; Bank 1
0001 DM1_OFFSET: equ 01h ; Bank 1
0003 DM2_OFFSET: equ 03h ; Bank 0
00D8 MUX_OFFSET: equ MUX_CR0 ; Bank 1
0000
0000 ;--------------------------------------------------
0000 ; CSD Macro 'Functions'
0000 ;--------------------------------------------------
0000
0000 macro CSD_Counter_Start_M
0000 or reg[CSD_CNT_CONTROL_REG], CSD_CNT_CONTROL_REG_START_BIT
0000 macro CSD_Counter_Stop_M
0000 and reg[CSD_CNT_CONTROL_REG], ~CSD_CNT_CONTROL_REG_START_BIT
0000 macro CSD_Counter_EnableInt_M
0000 M8C_EnableIntMask CSD_CNT_INT_REG, CSD_CNT_INT_MASK
0000 macro CSD_Counter_DisableInt_M
0000 M8C_DisableIntMask CSD_CNT_INT_REG, CSD_CNT_INT_MASK
00E0 CSD_CMP_CMPIntReg: equ 0e0h
0004 CSD_CMP_CMPIntMask: equ 04h
0000
0000 CSD_CMP_OFF: equ 0
0001 CSD_CMP_ON: equ 1
0000
0000 ;--------------------------------------------------
0000 ; Constants for CSD_Counter API's.
0000 ;--------------------------------------------------
0000
0001 CSD_CNT_CONTROL_REG_START_BIT: equ 0x01 ; Control register start bit
00E1 CSD_CNT_INT_REG: equ 0x0e1
0001 CSD_CNT_INT_MASK: equ 0x01
0000
0000 ;--------------------------------------------------
0000 ; Constants for CSD_Counter user defined values
0000 ;--------------------------------------------------
0000
00FF CSD_CNT_PERIOD: equ 0xff
0000 CSD_CNT_COMPARE_VALUE: equ 0x00
0000
0000 ; end of file CSD.inc
0000
0000 ;-----------------------------------------------
0000 ; Global Symbols
0000 ;-----------------------------------------------
0000
export _CSD_UpdateSensorBaseline
export CSD_UpdateSensorBaseline
export _CSD_InitializeSensorBaseline
export CSD_InitializeSensorBaseline
export _CSD_bIsSensorActive
export CSD_bIsSensorActive
export _CSD_bIsAnySensorActive
export CSD_bIsAnySensorActive
export _CSD_SetDefaultFingerThresholds
export CSD_SetDefaultFingerThresholds
export _CSD_InitializeBaselines
export CSD_InitializeBaselines
export _CSD_UpdateAllBaselines
export CSD_UpdateAllBaselines
IF CSD_SLIDERS_EXIST
export _CSD_wGetCentroidPos
export CSD_wGetCentroidPos
ENDIF
;-----------------------------------------------
; Variable Allocation
;-----------------------------------------------
AREA InterruptRAM (RAM, REL, CON)
0000 _CSD_bNoiseThreshold:
0000 CSD_bNoiseThreshold: BLK 1
0001 _CSD_bNegativeNoiseThreshold:
0001 CSD_bNegativeNoiseThreshold: BLK 1
0002 _CSD_bBaselineUpdateThreshold:
0002 CSD_bBaselineUpdateThreshold: BLK 1
0003 _CSD_bHysteresis:
0003 CSD_bHysteresis: BLK 1
0004 _CSD_bDebounce:
0004 CSD_bDebounce: BLK 1
0005 _CSD_bLowBaselineReset:
0005 CSD_bLowBaselineReset: BLK 1
0006
export _CSD_bNoiseThreshold
export CSD_bNoiseThreshold
export _CSD_bNegativeNoiseThreshold:
export CSD_bNegativeNoiseThreshold:
export _CSD_bBaselineUpdateThreshold:
export CSD_bBaselineUpdateThreshold:
export _CSD_bHysteresis:
export CSD_bHysteresis:
export _CSD_bDebounce:
export CSD_bDebounce:
export _CSD_bLowBaselineReset:
export CSD_bLowBaselineReset:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -