⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 adc10.lis

📁 sypress psoc express 驱动led发光的应用程序.
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 0000           
 0000           ADC10_OFF:                             equ  0
 0001           ADC10_ON:                              equ  1
 0000           
 0000           ;--------------------------------------------------
 0000           ; Registers Address Constants for ADC10
 0000           ;--------------------------------------------------
 0000           
 0001           ADC10_LOWRANGE:                        equ  01h
 0003           ADC10_FULLRANGE:                       equ  03h
 0000           
 0000           ;--------------------------------------------------
 0000           ; Deprecated:
 0001           ADC10_LOWPOWER:                        equ  01h
 0003           ADC10_FULLPOWER:                       equ  03h
 0000           ;--------------------------------------------------
 0000           
 0003           ADC10_CAL_VBG:                         equ  03h
 0007           ADC10_CAL_AMUXBUS:                     equ  07h
 0010           ADC10_CAL_P0_0:                        equ  10h
 0090           ADC10_CAL_P0_1:                        equ  90h
 0014           ADC10_CAL_P0_2:                        equ  14h
 0091           ADC10_CAL_P0_3:                        equ  91h
 0018           ADC10_CAL_P0_4:                        equ  18h
 0092           ADC10_CAL_P0_5:                        equ  92h
 001C           ADC10_CAL_P0_6:                        equ  1Ch
 0093           ADC10_CAL_P0_7:                        equ  93h
 0000           
 0000           
 0084           ADC10_ASE_CR0:  equ 84h
 0076           ADC10_ACE_CR1:  equ 76h
 0077           ADC10_ACE_CR2:  equ 77h
 0069           ADC10_ADC_CR:   equ 69h
 00E6           ADC10_ADC_TR:   equ e6h
 0000           
 0020           ADC10_CNT_FN:   equ 20h
 0021           ADC10_CNT_IN:   equ 21h
 0022           ADC10_CNT_OUT:  equ 22h
 0020           ADC10_CNT_DR0:  equ 20h
 0021           ADC10_CNT_DR1:  equ 21h
 0022           ADC10_CNT_DR2:  equ 22h
 0023           ADC10_CNT_CR0:  equ 23h
 0000           
 0000           
 0000           ;-----------------------------------------------
 0000           ;  Global Symbols
 0000           ;-----------------------------------------------
 0000           
                export _ADC10_Start
                export  ADC10_Start
                export _ADC10_Stop
                export  ADC10_Stop
                export _ADC10_StartADC
                export  ADC10_StartADC
                export _ADC10_StopADC
                export  ADC10_StopADC
                export _ADC10_fIsDataAvailable
                export  ADC10_fIsDataAvailable
                export _ADC10_iGetData
                export  ADC10_iGetData
                export _ADC10_ClearFlag
                export  ADC10_ClearFlag
                export _ADC10_iGetDataClearFlag
                export  ADC10_iGetDataClearFlag
                export _ADC10_iCal
                export  ADC10_iCal
                
                AREA UserModules (ROM, REL)
 0000           .SECTION
 0000           ;-----------------------------------------------------------------------------
 0000           ;  FUNCTION NAME: ADC10_Start
 0000           ;
 0000           ;  DESCRIPTION:
 0000           ;  Applies power setting to the module's analog blocks
 0000           ;
 0000           ;-----------------------------------------------------------------------------
 0000           ;
 0000           ;  ARGUMENTS:  A:= Range Informatio
 0000           ; 
 0000           ;  RETURNS:    Nothing
 0000           ;
 0000           ;-----------------------------------------------------------------------------
 0000            ADC10_Start:
 0000           _ADC10_Start:
                   IF ( RAM_USE_CLASS_1 & RAM_USE_CLASS_1 )
                   ; Nothing to do
                   ENDIF ; RAM_USE_CLASS_1
                
                   IF ( RAM_USE_CLASS_1 & RAM_USE_CLASS_2 )
                      IF ( SYSTEM_IDXPG_TRACKS_IDX_PP )
                   IF ( SYSTEM_LARGE_MEMORY_MODEL )
                      or   F, FLAG_PGMODE_01b
                   ENDIF ;  SYSTEM_LARGE_MEMORY_MODEL
                      ENDIF
                   ENDIF ; RAM_USE_CLASS_2
                
                   IF ( RAM_USE_CLASS_1 & RAM_USE_CLASS_3 )
                      IF ( SYSTEM_IDXPG_TRACKS_STK_PP )
                   IF ( SYSTEM_LARGE_MEMORY_MODEL )
                      and  F, ~FLAG_PGMODE_01b
                   ENDIF ;  SYSTEM_LARGE_MEMORY_MODEL
                      ENDIF
                   ENDIF ; RAM_USE_CLASS_3
                
                   IF ( RAM_USE_CLASS_1 & RAM_USE_CLASS_4 )
                   ; Nothing to do
                   ENDIF ; RAM_USE_CLASS_4
                
                //Turn on Power to analog block
 0000 6077         mov   reg[ADC10_ACE_CR2],A
 0002           ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 0002           ; This code check to see if the Column clock should be set to SysClk Direct
 0002 7110          or    F, FLAG_XIO_MASK
 0004 492280          tst  reg[ADC10_CNT_OUT],80h
 0007 A004            jz   SkipSetClock
 0009 436B40          or   reg[6Bh], ((ADC10_ACE_CR1 - 72h)* 0fh)+ 04h
 000C              SkipSetClock:
 000C 70EF          and   F, ~FLAG_XIO_MASK
 000E 626422       mov   reg[CMP_CR0],(((ADC10_ACE_CR1 -72h)/4)*11h)+11h;specify column interrupt
 0011 62E622       mov   reg[DEC_CR0],(((ADC10_ACE_CR1 -72h)/4)*11h)+11h;gate the comp1
 0014           
 0014 626222       mov   reg[PWM_CR], (PWM_High+PWM_Low)              
 0017           //Turn on Power to ADC Control
 0017 436901       or    reg[ADC10_ADC_CR], ADC10_ON
 001A           
                   IF ( RAM_USE_CLASS_1 & RAM_USE_CLASS_1 )
                   ; Nothing to do
                   ENDIF ; RAM_USE_CLASS_1
                
                   IF ( RAM_USE_CLASS_1 & RAM_USE_CLASS_2 )
                   IF ( SYSTEM_LARGE_MEMORY_MODEL )
                   IF ( SYSTEM_IDXPG_TRACKS_STK_PP )
                   IF ( SYSTEM_LARGE_MEMORY_MODEL )
                      and   F, ~FLAG_PGMODE_MASK        ; NOTE: transition thru 00b state
                      or    F,  FLAG_PGMODE_MASK & FLAG_PGMODE_11b
                   ENDIF
                   ENDIF ;  PGMODE LOCKED
                   IF ( SYSTEM_IDXPG_TRACKS_IDX_PP )
                   IF ( SYSTEM_LARGE_MEMORY_MODEL )
                      and   F, ~FLAG_PGMODE_MASK        ; NOTE: transition thru 00b state
                      or    F,  FLAG_PGMODE_MASK & FLAG_PGMODE_10b
                   ENDIF
                   ENDIF ; PGMODE FREE
                   ENDIF ; SYSTEM_LARGE_MEMORY_MODEL
                   ENDIF ; RAM_USE_CLASS_2
                
                   IF ( RAM_USE_CLASS_1 & RAM_USE_CLASS_3 )
                   IF ( SYSTEM_LARGE_MEMORY_MODEL )
                   IF ( SYSTEM_IDXPG_TRACKS_STK_PP )
                   IF ( SYSTEM_LARGE_MEMORY_MODEL )
                      and   F, ~FLAG_PGMODE_MASK        ; NOTE: transition thru 00b state
                      or    F,  FLAG_PGMODE_MASK & FLAG_PGMODE_11b
                   ENDIF
                   ENDIF ;  PGMODE LOCKED
                   IF ( SYSTEM_IDXPG_TRACKS_IDX_PP )
                   IF ( SYSTEM_LARGE_MEMORY_MODEL )
                      and   F, ~FLAG_PGMODE_MASK        ; NOTE: transition thru 00b state
                      or    F,  FLAG_PGMODE_MASK & FLAG_PGMODE_10b
                   ENDIF
                   ENDIF ; PGMODE FREE
                   ENDIF ; SYSTEM_LARGE_MEMORY_MODEL
                   ENDIF ; RAM_USE_CLASS_3
                
                   IF ( RAM_USE_CLASS_1 & RAM_USE_CLASS_4 )
                   ; Nothing to do
                   ENDIF ; RAM_USE_CLASS_4
                
 001A 7F           ret
 001B           .ENDSECTION
 001B           
 001B           .SECTION
 001B           ;-----------------------------------------------------------------------------
 001B           ;  FUNCTION NAME: ADC10_Stop
 001B           ;
 001B           ;  DESCRIPTION:
 001B           ;  Removes power setting to the module's analog blocks.
 001B           ;
 001B           ;-----------------------------------------------------------------------------
 001B           ;
 001B           ;  ARGUMENTS: None
 001B           ;
 001B           ;  RETURNS:   Nothing
 001B           ;
 001B           ;-----------------------------------------------------------------------------
 001B            ADC10_Stop:
 001B           _ADC10_Stop:
                   IF ( RAM_USE_CLASS_1 & RAM_USE_CLASS_1 )
                   ; Nothing to do
                   ENDIF ; RAM_USE_CLASS_1
                
                   IF ( RAM_USE_CLASS_1 & RAM_USE_CLASS_2 )
                      IF ( SYSTEM_IDXPG_TRACKS_IDX_PP )
                   IF ( SYSTEM_LARGE_MEMORY_MODEL )
                      or   F, FLAG_PGMODE_01b
                   ENDIF ;  SYSTEM_LARGE_MEMORY_MODEL
                      ENDIF
                   ENDIF ; RAM_USE_CLASS_2
                
                   IF ( RAM_USE_CLASS_1 & RAM_USE_CLASS_3 )
                      IF ( SYSTEM_IDXPG_TRACKS_STK_PP )
                   IF ( SYSTEM_LARGE_MEMORY_MODEL )
                      and  F, ~FLAG_PGMODE_01b
                   ENDIF ;  SYSTEM_LARGE_MEMORY_MODEL
                      ENDIF
                   ENDIF ; RAM_USE_CLASS_3
                
                   IF ( RAM_USE_CLASS_1 & RAM_USE_CLASS_4 )
                   ; Nothing to do
                   ENDIF ; RAM_USE_CLASS_4
                
                //Turn off Power to analog block
 001B 4177FE       and   reg[ADC10_ACE_CR2],~ADC10_ON
 001E           //Turn off Power to ADC Control
 001E 4169FE       and   reg[ADC10_ADC_CR], ~ADC10_ON
 0021           ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 0021 7110          or    F, FLAG_XIO_MASK
 0023 492280          tst  reg[ADC10_CNT_OUT],80h
 0026 A004            jz   SkipClearClock
 0028 416BBF          and  reg[6Bh], ~(((ADC10_ACE_CR1 - 72h)* 0fh)+ 04h)
 002B              SkipClearClock:
 002B 70EF          and   F, ~FLAG_XIO_MASK
 002D           ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
                   IF ( RAM_USE_CLASS_1 & RAM_USE_CLASS_1 )
                   ; Nothing to do
                   ENDIF ; RAM_USE_CLASS_1
                
                   IF ( RAM_USE_CLASS_1 & RAM_USE_CLASS_2 )
                   IF ( SYSTEM_LARGE_MEMORY_MODEL )

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -