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

📄 main.lis

📁 测量脉搏的源码 Cypress公司使用 CY27443 完成相关的功能
💻 LIS
📖 第 1 页 / 共 4 页
字号:
 01BD 5100              mov A,[__r0]
 01BF 08                push A
 01C0 10                push X
 01C1 5003              mov A,3
 01C3 08                push A
 01C4 50E7              mov A,-25
 01C6 08                push A
 01C7 52FC              mov A,[X-4]
 01C9 0102              add A,2
 01CB 5300              mov [__r1],A
 01CD 52FB              mov A,[X-5]
 01CF 0900              adc A,0
 01D1 3E00              mvi A,[__r1]
 01D3 5300              mov [__r0],A
 01D5 3E00              mvi A,[__r1]
 01D7 5300              mov [__r1],A
 01D9 5100              mov A,[__r0]
 01DB 08                push A
 01DC 5100              mov A,[__r1]
 01DE 08                push A
 01DF 9E1F              xcall _strfrm
 01E1 5100              mov A,[__r0]
 01E3 08                push A
 01E4 5100              mov A,[__r1]
 01E6 08                push A
 01E7 7C0000            xcall _LcdStr
 01EA 38F8              add SP,-8
 01EC 800C              xjmp L25
 01EE           L24:
 01EE                   .dbline 99
 01EE           ;   if (params->min) LcdStr(strfrm(params->min, MAX_VALUE, buffer)); else LcdCStr(INFO_BLANK_NUMBER);
 01EE 50DD              mov A,>L23
 01F0 08                push A
 01F1 50DD              mov A,<L23
 01F3 08                push A
 01F4 7C0000            xcall _LcdCStr
 01F7 38FE              add SP,-2
 01F9           L25:
 01F9                   .dbline 101
 01F9           ;   
 01F9           ;   LcdGoto(POS_DATA_COL, POS_MAX_ROW); 
 01F9 5002              mov A,2
 01FB 08                push A
 01FC 5023              mov A,35
 01FE 08                push A
 01FF 7C0000            xcall _LcdGoto
 0202 38FE              add SP,-2
 0204                   .dbline 102
 0204 52FC              mov A,[X-4]
 0206 0104              add A,4
 0208 5300              mov [__r1],A
 020A 52FB              mov A,[X-5]
 020C 0900              adc A,0
 020E 3E00              mvi A,[__r1]
 0210 5300              mov [__r0],A
 0212 3E00              mvi A,[__r1]
 0214 3C0000            cmp [__r0],0
 0217 B005              jnz X6
 0219 3900              cmp A,0
 021B A032              jz L26
 021D           X6:
 021D                   .dbline 102
 021D 5100              mov A,[__r0]
 021F 08                push A
 0220 10                push X
 0221 5003              mov A,3
 0223 08                push A
 0224 50E7              mov A,-25
 0226 08                push A
 0227 52FC              mov A,[X-4]
 0229 0104              add A,4
 022B 5300              mov [__r1],A
 022D 52FB              mov A,[X-5]
 022F 0900              adc A,0
 0231 3E00              mvi A,[__r1]
 0233 5300              mov [__r0],A
 0235 3E00              mvi A,[__r1]
 0237 5300              mov [__r1],A
 0239 5100              mov A,[__r0]
 023B 08                push A
 023C 5100              mov A,[__r1]
 023E 08                push A
 023F 9DBF              xcall _strfrm
 0241 5100              mov A,[__r0]
 0243 08                push A
 0244 5100              mov A,[__r1]
 0246 08                push A
 0247 7C0000            xcall _LcdStr
 024A 38F8              add SP,-8
 024C 800C              xjmp L27
 024E           L26:
 024E                   .dbline 102
 024E           ;   if (params->max) LcdStr(strfrm(params->max, MAX_VALUE, buffer)); else LcdCStr(INFO_BLANK_NUMBER);
 024E 50DD              mov A,>L23
 0250 08                push A
 0251 50DD              mov A,<L23
 0253 08                push A
 0254 7C0000            xcall _LcdCStr
 0257 38FE              add SP,-2
 0259           L27:
 0259                   .dbline 104
 0259           ;   
 0259           ;   LcdGoto(POS_DATA_COL, POS_MODE_ROW);   
 0259 5003              mov A,3
 025B 08                push A
 025C 5023              mov A,35
 025E 08                push A
 025F 7C0000            xcall _LcdGoto
 0262 38FE              add SP,-2
 0264                   .dbline 105
 0264           ;   CHECKBIT(params->flags, FLAG_MODE_BIT)?(LcdCStr(INFO_MODE_INSTANT)):(LcdCStr(INFO_MODE_AVERAGE));    
 0264 52FC              mov A,[X-4]
 0266 0108              add A,8
 0268 5300              mov [__r1],A
 026A 52FB              mov A,[X-5]
 026C 0900              adc A,0
 026E 3E00              mvi A,[__r1]
 0270 5300              mov [__r0],A
 0272 470004            tst [__r0],4
 0275 A00E              jz L30
 0277 50D8              mov A,>L28
 0279 08                push A
 027A 50D8              mov A,<L28
 027C 08                push A
 027D 7C0000            xcall _LcdCStr
 0280 38FE              add SP,-2
 0282 800C              xjmp L31
 0284           L30:
 0284 50D3              mov A,>L29
 0286 08                push A
 0287 50D3              mov A,<L29
 0289 08                push A
 028A 7C0000            xcall _LcdCStr
 028D 38FE              add SP,-2
 028F           L31:
 028F                   .dbline 107
 028F           ;   
 028F           ;   LcdGoto(POS_DATA_COL, POS_GAIN_ROW); 
 028F 5004              mov A,4
 0291 08                push A
 0292 5023              mov A,35
 0294 08                push A
 0295 7C0000            xcall _LcdGoto
 0298                   .dbline 108
 0298           ;   LcdStr(strfrm(params->gain, MAX_VALUE, buffer));   
 0298 5100              mov A,[__r0]
 029A 08                push A
 029B 10                push X
 029C 5003              mov A,3
 029E 08                push A
 029F 50E7              mov A,-25
 02A1 08                push A
 02A2 52FC              mov A,[X-4]
 02A4 0106              add A,6
 02A6 5300              mov [__r1],A
 02A8 52FB              mov A,[X-5]
 02AA 0900              adc A,0
 02AC 3E00              mvi A,[__r1]
 02AE 5300              mov [__r1],A
 02B0 5000              mov A,0
 02B2 08                push A
 02B3 5100              mov A,[__r1]
 02B5 08                push A
 02B6 9D48              xcall _strfrm
 02B8 38F8              add SP,-8
 02BA 5100              mov A,[__r0]
 02BC 08                push A
 02BD 5100              mov A,[__r1]
 02BF 08                push A
 02C0 7C0000            xcall _LcdStr
 02C3                   .dbline 110
 02C3           ;   
 02C3           ;   LcdGoto(POS_DATA_COL, POS_STATUS_ROW); 
 02C3 5005              mov A,5
 02C5 08                push A
 02C6 5023              mov A,35
 02C8 08                push A
 02C9 7C0000            xcall _LcdGoto
 02CC 38FC              add SP,-4
 02CE                   .dbline 111
 02CE           ;   CHECKBIT(params->flags, FLAG_ERROR_BIT)?(LcdCStr(INFO_STATUS_ERROR)):(LcdCStr(INFO_STATUS_WORK));
 02CE 52FC              mov A,[X-4]
 02D0 0108              add A,8
 02D2 5300              mov [__r1],A
 02D4 52FB              mov A,[X-5]
 02D6 0900              adc A,0
 02D8 3E00              mvi A,[__r1]
 02DA 5300              mov [__r0],A
 02DC 470001            tst [__r0],1
 02DF A00E              jz L34
 02E1 50CD              mov A,>L32
 02E3 08                push A
 02E4 50CD              mov A,<L32
 02E6 08                push A
 02E7 7C0000            xcall _LcdCStr
 02EA 38FE              add SP,-2
 02EC 800C              xjmp L35
 02EE           L34:
 02EE 50C7              mov A,>L33
 02F0 08                push A
 02F1 50C7              mov A,<L33
 02F3 08                push A
 02F4 7C0000            xcall _LcdCStr
 02F7 38FE              add SP,-2
 02F9           L35:
 02F9                   .dbline 113
 02F9           ;   
 02F9           ;   LcdVBargraph(POS_BARGRAPH, POS_BARGRAPH_START, POS_BARGRAPH_STOP, params->swing);
 02F9 52FC              mov A,[X-4]
 02FB 0107              add A,7
 02FD 5300              mov [__r1],A
 02FF 52FB              mov A,[X-5]
 0301 0900              adc A,0
 0303 3E00              mvi A,[__r1]
 0305 08                push A
 0306 5005              mov A,5
 0308 08                push A
 0309 5000              mov A,0
 030B 08                push A
 030C 504B              mov A,75
 030E 08                push A
 030F 7C0000            xcall _LcdVBargraph
 0312 38FC              add SP,-4
 0314                   .dbline -2
 0314                   .dbline 114
 0314           ; }
 0314           L12:
 0314 38FB              add SP,-5
 0316 20                pop X
 0317                   .dbline 0 ; func end
 0317 7F                ret
 0318                   .dbsym l buffer 0 A[5:5]c
 0318                   .dbsym l params -5 pX
 0318                   .dbend
                        .area data(ram, con, rel)
 0000                   .dbfile ./main.c
 0000           L37:
 0000                   .blkb 1
                        .area idata
 0000 00                .byte 0
                        .area data(ram, con, rel)
 0001                   .dbfile ./main.c
                        .area text(rom, con, rel)
 0318                   .dbfile ./main.c
 0318                   .dbfunc e ReadButtons _ReadButtons fc
 0318                   .dbsym s last_read L37 c
 0318           ;         result -> X+1
 0318           ;           temp -> X+0
 0318           _ReadButtons::
 0318                   .dbline -1
 0318 10                push X
 0319 4F                mov X,SP
 031A 3802              add SP,2
 031C                   .dbline 117
 031C           ; 
 031C           ; BYTE ReadButtons(void)
 031C           ; {
 031C                   .dbline 119
 031C           ;   static BYTE last_read = 0;
 031C           ;   BYTE temp, result = 0;
 031C 560100            mov [X+1],0
 031F                   .dbline 121
 031F           ;   
 031F           ;   BUTTONS_PORT |= BIT(BUTTON_MODE_BIT) | BIT(BUTTON_RESET_BIT);
 031F 430828            or REG[8],40
 0322                   .dbline 122
 0322           ;   temp = BUTTONS_PORT & (BIT(BUTTON_MODE_BIT) | BIT(BUTTON_RESET_BIT));
 0322 5D08              mov A,REG[8]
 0324 2128              and A,40
 0326 5400              mov [X+0],A
 0328                   .dbline 124
 0328           ;   
 0328           ;   result = (temp ^ last_read) & (~temp);  
 0328 5200              mov A,[X+0]
 032A 3200              xor A,[L37]
 032C 5300              mov [__r0],A
 032E 5200              mov A,[X+0]
 0330 73                cpl A
 0331 5300              mov [__r2],A
 0333 5100              mov A,[__r0]
 0335 2200              and A,[__r2]
 0337 5401              mov [X+1],A
 0339                   .dbline 125
 0339           ;   last_read = temp; 
 0339 5200              mov A,[X+0]
 033B 5300              mov [L37],A
 033D                   .dbline 127
 033D           ;   
 033D           ;   return result;
 033D 5201              mov A,[X+1]
 033F                   .dbline -2
 033F           L36:
 033F 38FE              add SP,-2
 0341 20                pop X
 0342                   .dbline 0 ; func end
 0342 7F                ret
 0343                   .dbsym l result 1 c
 0343                   .dbsym l temp 0 c
 0343                   .dbend
 0343                   .dbfunc e main _main fV
 0343           _main::
 0343                   .dbline -1
 0343 10                push X
 0344 4F                mov X,SP
 0345 3802              add SP,2
 0347                   .dbline 133
 0347           ; }
 0347           ; 
 0347           ; 
 0347           ; 
 0347           ; void main()
 0347           ; {        
 0347                   .dbline 134
 0347           ;   In_PGA_Start(In_PGA_HIGHPOWER);
 0347 10                push X
 0348 5003              mov A,3
 034A 7C0000            xcall _In_PGA_Start
 034D                   .dbline 135
 034D           ;   In_PGA_SetGain(In_PGA_G1_00);
 034D 50F8              mov A,-8
 034F 7C0000            xcall _In_PGA_SetGain
 0352                   .dbline 137
 0352           ;   
 0352           ;   Carrier_Timer_Start();    
 0352 7C0000            xcall _Carrier_Timer_Start
 0355                   .dbline 138
 0355           ;   Mixer_Start(Mixer_HIGHPOWER);
 0355 5003              mov A,3
 0357 7C0000            xcall _Mixer_Start
 035A                   .dbline 140
 035A           ;   
 035A           ;   In_BPF_Start(In_BPF_HIGHPOWER);
 035A 5003              mov A,3
 035C 7C0000            xcall _In_BPF_Start
 035F 20                pop X
 0360                   .dbline 147
 0360           ;   
 0360           ; #if DEBUG  
 0360           ;   Exchange_Start();
 0360           ; #endif  
 0360           ;   
 0360           ;   //AMD_CR1 |= 0x01; -- global output bus driven
 0360           ;   AMD_CR1 |= 0x04; // -- comparator bus driven
 0360 7110              or F,0x10  ; iopage = 1

⌨️ 快捷键说明

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