📄 cmx_csdslider.lis
字号:
0000 cpu LMM
.module cmx_csdslider.c
.area text(rom, con, rel)
0000 .dbfile ./cmx_csdslider.c
0000 .dbfunc e CMX_CSDSLIDER_Instantiate _CMX_CSDSLIDER_Instantiate fV
0000 ; pPBlock -> X-5
0000 _CMX_CSDSLIDER_Instantiate::
0000 .dbline -1
0000 10 push X
0001 4F mov X,SP
0002 .dbline 36
0002 ; //*****************************************************************************
0002 ; //*****************************************************************************
0002 ; // FILENAME: CMX_CSDSLIDER.c
0002 ; // Version: 1.1.0.3, Updated on 2007/06/14 at 10:32:12
0002 ; // Application: PSoC Express 2.0
0002 ; //
0002 ; // DESCRIPTION: This Driver provides accomodation for capsense slider.
0002 ; //
0002 ; //
0002 ; //-----------------------------------------------------------------------------
0002 ; // Copyright (c) Cypress MicroSystems 2006. All Rights Reserved.
0002 ; //*****************************************************************************
0002 ; //*****************************************************************************
0002 ; #include "m8c.h"
0002 ; #include "CMX_CSDSLIDER.h"
0002 ; #include "cmx.h"
0002 ;
0002 ; //-----------------------------------------------------------------------------
0002 ; // FUNCTION NAME: CSDSLIDER_Instantiate(const CMX_CSDSLIDER_ParameterBlock * pPBlock)
0002 ; //
0002 ; // DESCRIPTION: CSDSLIDER Initialization.
0002 ; //
0002 ; //-----------------------------------------------------------------------------
0002 ; //
0002 ; // ARGUMENTS: parameter block
0002 ; //
0002 ; // RETURNS:
0002 ; //
0002 ; // SIDE EFFECTS:
0002 ; //
0002 ; // THEORY of OPERATION or PROCEDURE: Empty and placed here for further
0002 ; // compatibility
0002 ; //
0002 ; ////////////////////////////////////////////////////////////////////////////////
0002 ; void CMX_CSDSLIDER_Instantiate(const CMX_CSDSLIDER_ParameterBlock * pPBlock)
0002 ; {
0002 .dbline 37
0002 ; CSD_SetScanMode(pPBlock->pCSDSliderSettings->ScanSpeed, pPBlock->pCSDSliderSettings->Resolution); // Set Scan Mode
0002 62D000 mov REG[0xd0],>__r0
0005 52FC mov A,[X-4]
0007 0101 add A,1
0009 5300 mov [__r1],A
000B 52FB mov A,[X-5]
000D 0900 adc A,0
000F 10 push X
0010 08 push A
0011 5800 mov X,[__r1]
0013 28 romx
0014 5300 mov [__r0],A
0016 18 pop A
0017 75 inc X
0018 0900 adc A,0
001A 28 romx
001B 5300 mov [__r1],A
001D 20 pop X
001E 0101 add A,1
0020 5300 mov [__r3],A
0022 5100 mov A,[__r0]
0024 0900 adc A,0
0026 10 push X
0027 5800 mov X,[__r3]
0029 28 romx
002A 20 pop X
002B 10 push X
002C 08 push A
002D 5100 mov A,[__r0]
002F 10 push X
0030 5800 mov X,[__r1]
0032 28 romx
0033 20 pop X
0034 20 pop X
0035 7C0000 xcall _CSD_SetScanMode
0038 20 pop X
0039 .dbline 38
0039 ; CSD_SetRefValue(pPBlock->pCSDSliderSettings->RefValue); // Set Reference Value
0039 62D000 mov REG[0xd0],>__r0
003C 52FC mov A,[X-4]
003E 0101 add A,1
0040 5300 mov [__r1],A
0042 52FB mov A,[X-5]
0044 0900 adc A,0
0046 10 push X
0047 08 push A
0048 5800 mov X,[__r1]
004A 28 romx
004B 5300 mov [__r0],A
004D 18 pop A
004E 75 inc X
004F 0900 adc A,0
0051 28 romx
0052 5300 mov [__r1],A
0054 20 pop X
0055 060002 add [__r1],2
0058 0E0000 adc [__r0],0
005B 5100 mov A,[__r0]
005D 10 push X
005E 5800 mov X,[__r1]
0060 28 romx
0061 20 pop X
0062 10 push X
0063 7C0000 xcall _CSD_SetRefValue
0066 20 pop X
0067 .dbline 39
0067 ; CSD_InitializeGroupBaselines(pPBlock->bInstanceID);
0067 62D000 mov REG[0xd0],>__r0
006A 52FC mov A,[X-4]
006C 5300 mov [__r1],A
006E 52FB mov A,[X-5]
0070 10 push X
0071 5800 mov X,[__r1]
0073 28 romx
0074 20 pop X
0075 10 push X
0076 7C0000 xcall _CSD_InitializeGroupBaselines
0079 20 pop X
007A .dbline -2
007A .dbline 40
007A ; }
007A L4:
007A 20 pop X
007B .dbline 0 ; func end
007B 7F ret
007C .dbsym l pPBlock -5 pX
007C .dbend
007C .dbfunc e CMX_CSDSLIDER_GetValue _CMX_CSDSLIDER_GetValue fc
007C ; bPos -> X+1
007C ; bInstanceID -> X+0
007C ; pPBlock -> X-5
007C _CMX_CSDSLIDER_GetValue::
007C .dbline -1
007C 10 push X
007D 4F mov X,SP
007E 3802 add SP,2
0080 .dbline 60
0080 ;
0080 ; //-----------------------------------------------------------------------------
0080 ; // FUNCTION NAME: CSDSLIDER_GetValue(const CMX_CSDSLIDER_ParameterBlock * pPBlock)
0080 ; //
0080 ; // DESCRIPTION:
0080 ; // Get current button status from the base driver.
0080 ; //
0080 ; //-----------------------------------------------------------------------------
0080 ; //
0080 ; // ARGUMENTS: parameter block
0080 ; //
0080 ; // RETURNS: BYTE
0080 ; //
0080 ; // THEORY of OPERATION or PROCEDURE: Sets the appropriate Scan Mode and
0080 ; // the Ref Value and scans every sensor in the group. Then updates
0080 ; // baseline for the current slider group and gets the finger position.
0080 ; //
0080 ; ///////////////////////////////////////////////////////////////////////////////
0080 ; BYTE CMX_CSDSLIDER_GetValue(const CMX_CSDSLIDER_ParameterBlock * pPBlock)
0080 ; {
0080 .dbline 64
0080 ; BYTE bInstanceID;
0080 ; BYTE bPos;
0080 ;
0080 ; bInstanceID = pPBlock->bInstanceID;
0080 62D000 mov REG[0xd0],>__r0
0083 52FC mov A,[X-4]
0085 5300 mov [__r1],A
0087 52FB mov A,[X-5]
0089 10 push X
008A 5800 mov X,[__r1]
008C 28 romx
008D 20 pop X
008E 5400 mov [X+0],A
0090 .dbline 66
0090 ;
0090 ; CSD_SetScanMode(pPBlock->pCSDSliderSettings->ScanSpeed, pPBlock->pCSDSliderSettings->Resolution); // Set Scan Mode
0090 52FC mov A,[X-4]
0092 0101 add A,1
0094 5300 mov [__r1],A
0096 52FB mov A,[X-5]
0098 0900 adc A,0
009A 10 push X
009B 08 push A
009C 5800 mov X,[__r1]
009E 28 romx
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -