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

📄 main.lis

📁  PSoC(可编程片上系统)是Cypress半导体公司生产的包含有8位微处理器核和数字与模拟混合的信号阵列芯片
💻 LIS
字号:
 0000                   cpu LMM
                        .module main.c
                        .area text(rom, con, rel)
 0000                   .dbfile ./main.c
 0000                   .dbfunc e main _main fV
 0000           _main::
 0000                   .dbline -1
 0000                   .dbline 22
 0000           ; //----------------------------------------------------------------------------
 0000           ; // C main line
 0000           ; //----------------------------------------------------------------------------
 0000           ; 
 0000           ; #include <m8c.h>          // part specific constants and macros
 0000           ; #include "PSoCAPI.h"      // PSoC API definitions for all User Modules
 0000           ; 
 0000           ; #include "driverdecl.h"
 0000           ; #include "CMXSystem.h"
 0000           ; #include "CMXSystemExtern.h"
 0000           ; #include "TransferFunction.h"
 0000           ; 
 0000           ; #include "cmx.h"
 0000           ; #include "ProjectProperties.h"
 0000           ; #include "Custom.h"
 0000           ; 
 0000           ; // Channel includes
 0000           ; // CSD_00 Include
 0000           ; #include "CMX_CSD_CHAN.h"
 0000           ; 
 0000           ; void main()
 0000           ; {
 0000                   .dbline 24
 0000           ;     // Initialize Project
 0000           ;     M8C_EnableGInt;                            // Turn on interrupts 
 0000 7101                      or  F, 01h
 0002           
 0002                   .dbline 25
 0002           ;     I2C_CFG &= 0xFC;                           // Disable I2C in case it's not used.
 0002 41D6FC            and REG[0xd6],-4
 0005                   .dbline 26
 0005           ;     SystemTimer_Start();
 0005 10                push X
 0006 7C0000            xcall _SystemTimer_Start
 0009                   .dbline 27
 0009           ;     SystemTimer_SetInterval(SystemTimer_64_HZ);
 0009 5008              mov A,8
 000B 7C0000            xcall _SystemTimer_SetInterval
 000E                   .dbline 28
 000E           ;     SystemTimer_EnableInt();
 000E 7C0000            xcall _SystemTimer_EnableInt
 0011                   .dbline 32
 0011           ; 
 0011           ;     // Initialize Channels
 0011           ;     // CSD_00 Initialization  
 0011           ;       CSD_Start();
 0011 7C0000            xcall _CSD_Start
 0014 20                pop X
 0015                   .dbline 35
 0015           ; 
 0015           ;     // Initialize Variables
 0015           ;       SystemVars.ReadOnlyVars.pse_LED_state = 0;
 0015 62D000            mov REG[0xd0],>_SystemVars
 0018 550000            mov [_SystemVars],0
 001B                   .dbline 36
 001B           ;       SystemVars.ReadOnlyVars.pse_Slider_Position = 0;
 001B 550100            mov [_SystemVars+1],0
 001E                   .dbline 37
 001E           ;       SystemVars.ReadOnlyVars.pse_Slider_Tuning0_Difference = 0;
 001E 550300            mov [_SystemVars+2+1],0
 0021 550200            mov [_SystemVars+2],0
 0024                   .dbline 38
 0024           ;       SystemVars.ReadOnlyVars.pse_Slider_Tuning1_Difference = 0;
 0024 550500            mov [_SystemVars+4+1],0
 0027 550400            mov [_SystemVars+4],0
 002A                   .dbline 39
 002A           ;       SystemVars.ReadOnlyVars.pse_Slider_Tuning2_Difference = 0;
 002A 550700            mov [_SystemVars+6+1],0
 002D 550600            mov [_SystemVars+6],0
 0030                   .dbline 40
 0030           ;       SystemVars.ReadOnlyVars.pse_Slider_Tuning3_Difference = 0;
 0030 550900            mov [_SystemVars+8+1],0
 0033 550800            mov [_SystemVars+8],0
 0036                   .dbline 41
 0036           ;       SystemVars.ReadOnlyVars.pse_Slider_Tuning4_Difference = 0;
 0036 550B00            mov [_SystemVars+10+1],0
 0039 550A00            mov [_SystemVars+10],0
 003C                   .dbline 42
 003C           ;       SystemVars.ReadOnlyVars.pse_Slider_Tuning5_Difference = 0;
 003C 550D00            mov [_SystemVars+12+1],0
 003F 550C00            mov [_SystemVars+12],0
 0042                   .dbline 43
 0042           ;       SystemVars.ReadOnlyVars.pse_Slider_Tuning6_Difference = 0;
 0042 550F00            mov [_SystemVars+14+1],0
 0045 550E00            mov [_SystemVars+14],0
 0048                   .dbline 46
 0048           ; 
 0048           ;     // Driver instantiations
 0048           ; CMX_CSDPROPERTY_Instantiate(&pse_CSDProperties);
 0048 5000              mov A,>_pse_CSDProperties
 004A 08                push A
 004B 5000              mov A,<_pse_CSDProperties
 004D 08                push A
 004E 7C0000            xcall _CMX_CSDPROPERTY_Instantiate
 0051                   .dbline 47
 0051           ; CMX_DIO_Instantiate(&pse_LED_BLUE);
 0051 5000              mov A,>_pse_LED_BLUE
 0053 08                push A
 0054 5000              mov A,<_pse_LED_BLUE
 0056 08                push A
 0057 7C0000            xcall _CMX_DIO_Instantiate
 005A 38FC              add SP,-4
 005C                   .dbline 48
 005C           ; CMX_DIO_Instantiate(&pse_LED_RED);
 005C 5000              mov A,>_pse_LED_RED
 005E 08                push A
 005F 5000              mov A,<_pse_LED_RED
 0061 08                push A
 0062 7C0000            xcall _CMX_DIO_Instantiate
 0065                   .dbline 49
 0065           ; CMX_DIO_Instantiate(&pse_LED_GREEN);
 0065 5000              mov A,>_pse_LED_GREEN
 0067 08                push A
 0068 5000              mov A,<_pse_LED_GREEN
 006A 08                push A
 006B 7C0000            xcall _CMX_DIO_Instantiate
 006E 38FC              add SP,-4
 0070                   .dbline 50
 0070           ; CMX_RGBLED_Instantiate(&pse_LED);
 0070 5000              mov A,>_pse_LED
 0072 08                push A
 0073 5000              mov A,<_pse_LED
 0075 08                push A
 0076 7C0000            xcall _CMX_RGBLED_Instantiate
 0079                   .dbline 51
 0079           ; CMX_CSDSLIDER_Instantiate(&pse_Slider);
 0079 5000              mov A,>_pse_Slider
 007B 08                push A
 007C 5000              mov A,<_pse_Slider
 007E 08                push A
 007F 7C0000            xcall _CMX_CSDSLIDER_Instantiate
 0082 38FC              add SP,-4
 0084                   .dbline 54
 0084           ; 
 0084           ;     // Custom initization code.
 0084           ;     CustomInit();
 0084 7C0000            xcall _CustomInit
 0087 80EF              xjmp L22
 0089           L21:
 0089                   .dbline 58
 0089                   .dbline 61
 0089 10                push X
 008A 5700              mov X,0
 008C 5001              mov A,1
 008E 7C0000            xcall _SystemTimer_SyncWait
 0091 20                pop X
 0092                   .dbline 65
 0092 5000              mov A,>_pse_Slider
 0094 08                push A
 0095 5000              mov A,<_pse_Slider
 0097 08                push A
 0098 7C0000            xcall _CMX_CSDSLIDER_GetValue
 009B 62D000            mov REG[0xd0],>_SystemVars
 009E 5301              mov [_SystemVars+1],A
 00A0                   .dbline 67
 00A0 5000              mov A,>_pse_Slider_CSD_Slider00
 00A2 08                push A
 00A3 5000              mov A,<_pse_Slider_CSD_Slider00
 00A5 08                push A
 00A6 7C0000            xcall _CMX_CSDSLIDER_GetDifference
 00A9 38FC              add SP,-4
 00AB 62D000            mov REG[0xd0],>__r0
 00AE 5100              mov A,[__r1]
 00B0 08                push A
 00B1 5100              mov A,[__r0]
 00B3 62D000            mov REG[0xd0],>_SystemVars
 00B6 5302              mov [_SystemVars+2],A
 00B8 18                pop A
 00B9 5303              mov [_SystemVars+2+1],A
 00BB                   .dbline 68
 00BB 5000              mov A,>_pse_Slider_CSD_Slider01
 00BD 08                push A
 00BE 5000              mov A,<_pse_Slider_CSD_Slider01
 00C0 08                push A
 00C1 7C0000            xcall _CMX_CSDSLIDER_GetDifference
 00C4 38FE              add SP,-2
 00C6 62D000            mov REG[0xd0],>__r0
 00C9 5100              mov A,[__r1]
 00CB 08                push A
 00CC 5100              mov A,[__r0]
 00CE 62D000            mov REG[0xd0],>_SystemVars
 00D1 5304              mov [_SystemVars+4],A
 00D3 18                pop A
 00D4 5305              mov [_SystemVars+4+1],A
 00D6                   .dbline 69
 00D6 5000              mov A,>_pse_Slider_CSD_Slider02
 00D8 08                push A
 00D9 5000              mov A,<_pse_Slider_CSD_Slider02
 00DB 08                push A
 00DC 7C0000            xcall _CMX_CSDSLIDER_GetDifference
 00DF 38FE              add SP,-2
 00E1 62D000            mov REG[0xd0],>__r0
 00E4 5100              mov A,[__r1]
 00E6 08                push A
 00E7 5100              mov A,[__r0]
 00E9 62D000            mov REG[0xd0],>_SystemVars
 00EC 5306              mov [_SystemVars+6],A
 00EE 18                pop A
 00EF 5307              mov [_SystemVars+6+1],A
 00F1                   .dbline 70
 00F1 5000              mov A,>_pse_Slider_CSD_Slider03
 00F3 08                push A
 00F4 5000              mov A,<_pse_Slider_CSD_Slider03
 00F6 08                push A
 00F7 7C0000            xcall _CMX_CSDSLIDER_GetDifference
 00FA 38FE              add SP,-2
 00FC 62D000            mov REG[0xd0],>__r0
 00FF 5100              mov A,[__r1]
 0101 08                push A
 0102 5100              mov A,[__r0]
 0104 62D000            mov REG[0xd0],>_SystemVars
 0107 5308              mov [_SystemVars+8],A
 0109 18                pop A
 010A 5309              mov [_SystemVars+8+1],A
 010C                   .dbline 71
 010C 5000              mov A,>_pse_Slider_CSD_Slider04
 010E 08                push A
 010F 5000              mov A,<_pse_Slider_CSD_Slider04
 0111 08                push A
 0112 7C0000            xcall _CMX_CSDSLIDER_GetDifference
 0115 38FE              add SP,-2
 0117 62D000            mov REG[0xd0],>__r0
 011A 5100              mov A,[__r1]
 011C 08                push A
 011D 5100              mov A,[__r0]
 011F 62D000            mov REG[0xd0],>_SystemVars
 0122 530A              mov [_SystemVars+10],A
 0124 18                pop A
 0125 530B              mov [_SystemVars+10+1],A
 0127                   .dbline 72
 0127 5000              mov A,>_pse_Slider_CSD_Slider05
 0129 08                push A
 012A 5000              mov A,<_pse_Slider_CSD_Slider05
 012C 08                push A
 012D 7C0000            xcall _CMX_CSDSLIDER_GetDifference
 0130 38FE              add SP,-2
 0132 62D000            mov REG[0xd0],>__r0
 0135 5100              mov A,[__r1]
 0137 08                push A
 0138 5100              mov A,[__r0]
 013A 62D000            mov REG[0xd0],>_SystemVars
 013D 530C              mov [_SystemVars+12],A
 013F 18                pop A
 0140 530D              mov [_SystemVars+12+1],A
 0142                   .dbline 73
 0142 5000              mov A,>_pse_Slider_CSD_Slider06
 0144 08                push A
 0145 5000              mov A,<_pse_Slider_CSD_Slider06
 0147 08                push A
 0148 7C0000            xcall _CMX_CSDSLIDER_GetDifference
 014B 38FE              add SP,-2
 014D 62D000            mov REG[0xd0],>__r0
 0150 5100              mov A,[__r1]
 0152 08                push A
 0153 5100              mov A,[__r0]
 0155 62D000            mov REG[0xd0],>_SystemVars
 0158 530E              mov [_SystemVars+14],A
 015A 18                pop A
 015B 530F              mov [_SystemVars+14+1],A
 015D                   .dbline 78
 015D 7C0000            xcall _CustomPostInputUpdate
 0160                   .dbline 81
 0160 7C0000            xcall _TransferFunction
 0163                   .dbline 84
 0163 7C0000            xcall _CustomPreOutputUpdate
 0166                   .dbline 87
 0166 62D000            mov REG[0xd0],>_SystemVars
 0169 5100              mov A,[_SystemVars]
 016B 08                push A
 016C 5000              mov A,>_pse_LED
 016E 08                push A
 016F 5000              mov A,<_pse_LED
 0171 08                push A
 0172 7C0000            xcall _CMX_RGBLED_SetValue
 0175 38FD              add SP,-3
 0177                   .dbline 90
 0177           L22:
 0177                   .dbline 57
 0177 8F11              xjmp L21
 0179           X0:
 0179                   .dbline -2
 0179                   .dbline 91
 0179           ;     // End Initialize Project
 0179           ; 
 0179           ;       while(1)
 0179           ;       {
 0179           ;         // Sync loop sample rate
 0179           ; #if ( SAMPLE_DIVIDER  )
 0179           ;         SystemTimer_SyncWait(SAMPLE_DIVIDER, SystemTimer_WAIT_RELOAD);
 0179           ; #endif
 0179           ; 
 0179           ;               // update input variables
 0179           ;               SystemVars.ReadOnlyVars.pse_Slider_Position = CMX_CSDSLIDER_GetValue(&pse_Slider);
 0179           ; #if 1
 0179           ;                       SystemVars.ReadOnlyVars.pse_Slider_Tuning0_Difference = CMX_CSDSLIDER_GetDifference(&pse_Slider_CSD_Slider00);
 0179           ;       SystemVars.ReadOnlyVars.pse_Slider_Tuning1_Difference = CMX_CSDSLIDER_GetDifference(&pse_Slider_CSD_Slider01);
 0179           ;       SystemVars.ReadOnlyVars.pse_Slider_Tuning2_Difference = CMX_CSDSLIDER_GetDifference(&pse_Slider_CSD_Slider02);
 0179           ;       SystemVars.ReadOnlyVars.pse_Slider_Tuning3_Difference = CMX_CSDSLIDER_GetDifference(&pse_Slider_CSD_Slider03);
 0179           ;       SystemVars.ReadOnlyVars.pse_Slider_Tuning4_Difference = CMX_CSDSLIDER_GetDifference(&pse_Slider_CSD_Slider04);
 0179           ;       SystemVars.ReadOnlyVars.pse_Slider_Tuning5_Difference = CMX_CSDSLIDER_GetDifference(&pse_Slider_CSD_Slider05);
 0179           ;       SystemVars.ReadOnlyVars.pse_Slider_Tuning6_Difference = CMX_CSDSLIDER_GetDifference(&pse_Slider_CSD_Slider06);
 0179           ; 
 0179           ; #endif
 0179           ; 
 0179           ;         // Custom Post Input function
 0179           ;         CustomPostInputUpdate();
 0179           ; 
 0179           ;               // run transfer function and update output variables
 0179           ;               TransferFunction();
 0179           ; 
 0179           ;         // CustomPreOutputUpdate();
 0179           ;         CustomPreOutputUpdate();
 0179           ; 
 0179           ;               // set outputs
 0179           ;       CMX_RGBLED_SetValue(&pse_LED, (BYTE)SystemVars.ReadOnlyVars.pse_LED_state);
 0179           ;               
 0179           ; 
 0179           ;       }
 0179           ; }
 0179           L12:
 0179                   .dbline 0 ; func end
 0179 8FFF              jmp .
 017B                   .dbend

⌨️ 快捷键说明

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