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

📄 public.lis

📁 ATmega128和ads7864实现ATP闭环控制
💻 LIS
📖 第 1 页 / 共 4 页
字号:
 0662 8A01              movw R16,R20
 0664 9B01              movw R18,R22
 0666 0E940000          xcall empy32u
 066A 1801              movw R2,R16
 066C 2901              movw R4,R18
 066E F601              movw R30,R12
 0670 6180              ldd R6,z+1
 0672 7724              clr R7
 0674 8824              clr R8
 0676 9924              clr R9
 0678 260C              add R2,R6
 067A 371C              adc R3,R7
 067C 481C              adc R4,R8
 067E 591C              adc R5,R9
 0680 41E0              ldi R20,1
 0682 50E0              ldi R21,0
 0684 60E0              ldi R22,0
 0686 70E0              ldi R23,0
 0688 241A              sub R2,R20
 068A 350A              sbc R3,R21
 068C 460A              sbc R4,R22
 068E 570A              sbc R5,R23
 0690 FE01              movw R30,R28
 0692 2082              std z+0,R2
 0694 3182              std z+1,R3
 0696 4282              std z+2,R4
 0698 5382              std z+3,R5
 069A                   .dbline 135
 069A           ;       ulMonth2=((unsigned long)ny2[0])*((unsigned long)12)+ny2[1]-1;
 069A F501              movw R30,R10
 069C 2080              ldd R2,z+0
 069E 3324              clr R3
 06A0 4424              clr R4
 06A2 5524              clr R5
 06A4 4CE0              ldi R20,12
 06A6 50E0              ldi R21,0
 06A8 60E0              ldi R22,0
 06AA 70E0              ldi R23,0
 06AC 5A92              st -y,R5
 06AE 4A92              st -y,R4
 06B0 3A92              st -y,R3
 06B2 2A92              st -y,R2
 06B4 8A01              movw R16,R20
 06B6 9B01              movw R18,R22
 06B8 0E940000          xcall empy32u
 06BC 1801              movw R2,R16
 06BE 2901              movw R4,R18
 06C0 F501              movw R30,R10
 06C2 6180              ldd R6,z+1
 06C4 7724              clr R7
 06C6 8824              clr R8
 06C8 9924              clr R9
 06CA 260C              add R2,R6
 06CC 371C              adc R3,R7
 06CE 481C              adc R4,R8
 06D0 591C              adc R5,R9
 06D2 41E0              ldi R20,1
 06D4 50E0              ldi R21,0
 06D6 60E0              ldi R22,0
 06D8 70E0              ldi R23,0
 06DA 241A              sub R2,R20
 06DC 350A              sbc R3,R21
 06DE 460A              sbc R4,R22
 06E0 570A              sbc R5,R23
 06E2 FE01              movw R30,R28
 06E4 2482              std z+4,R2
 06E6 3582              std z+5,R3
 06E8 4682              std z+6,R4
 06EA 5782              std z+7,R5
 06EC                   .dbline 136
 06EC           ;       if(ulMonth1>ulMonth2)   return (ulMonth1-ulMonth2);
 06EC FE01              movw R30,R28
 06EE 2480              ldd R2,z+4
 06F0 3580              ldd R3,z+5
 06F2 4680              ldd R4,z+6
 06F4 5780              ldd R5,z+7
 06F6 FE01              movw R30,R28
 06F8 6080              ldd R6,z+0
 06FA 7180              ldd R7,z+1
 06FC 8280              ldd R8,z+2
 06FE 9380              ldd R9,z+3
 0700 2614              cp R2,R6
 0702 3704              cpc R3,R7
 0704 4804              cpc R4,R8
 0706 5904              cpc R5,R9
 0708 88F4              brsh L36
 070A                   .dbline 136
 070A FE01              movw R30,R28
 070C 2480              ldd R2,z+4
 070E 3580              ldd R3,z+5
 0710 4680              ldd R4,z+6
 0712 5780              ldd R5,z+7
 0714 FE01              movw R30,R28
 0716 6080              ldd R6,z+0
 0718 7180              ldd R7,z+1
 071A 8280              ldd R8,z+2
 071C 9380              ldd R9,z+3
 071E 6218              sub R6,R2
 0720 7308              sbc R7,R3
 0722 8408              sbc R8,R4
 0724 9508              sbc R9,R5
 0726 8301              movw R16,R6
 0728 9401              movw R18,R8
 072A 04C0              xjmp L35
 072C           L36:
 072C                   .dbline 137
 072C           ;       else    return 0;
 072C 00E0              ldi R16,0
 072E 10E0              ldi R17,0
 0730 20E0              ldi R18,0
 0732 30E0              ldi R19,0
 0734                   .dbline -2
 0734           L35:
 0734 2896              adiw R28,8
 0736 0E940000          xcall pop_gset4
 073A                   .dbline 0 ; func end
 073A 0895              ret
 073C                   .dbsym l ulMonth2 4 l
 073C                   .dbsym l ulMonth1 0 l
 073C                   .dbsym r ny2 10 pc
 073C                   .dbsym r ny1 12 pc
 073C                   .dbend
 073C                   .dbfunc e SpanYear _SpanYear fl
 073C           ;             n2 -> R18,R19
 073C           ;             n1 -> R16,R17
                        .even
 073C           _SpanYear::
 073C 0E940000          xcall push_gset2
 0740                   .dbline -1
 0740                   .dbline 141
 0740           ; }
 0740           ; 
 0740           ; unsigned long SpanYear(unsigned char * n1,unsigned char * n2)         
 0740           ; {
 0740                   .dbline 142
 0740           ;       if(*n1>*n2)     return (*n1-*n2);
 0740 F901              movw R30,R18
 0742 2080              ldd R2,z+0
 0744 F801              movw R30,R16
 0746 3080              ldd R3,z+0
 0748 2314              cp R2,R3
 074A 90F4              brsh L39
 074C                   .dbline 142
 074C F901              movw R30,R18
 074E 2080              ldd R2,z+0
 0750 3324              clr R3
 0752 F801              movw R30,R16
 0754 4080              ldd R4,z+0
 0756 5524              clr R5
 0758 4218              sub R4,R2
 075A 5308              sbc R5,R3
 075C 1201              movw R2,R4
 075E 4424              clr R4
 0760 37FC              sbrc R3,7
 0762 4094              com R4
 0764 5524              clr R5
 0766 47FC              sbrc R4,7
 0768 5094              com R5
 076A 8101              movw R16,R2
 076C 9201              movw R18,R4
 076E 04C0              xjmp L38
 0770           L39:
 0770                   .dbline 143
 0770           ;       else    return 0;
 0770 00E0              ldi R16,0
 0772 10E0              ldi R17,0
 0774 20E0              ldi R18,0
 0776 30E0              ldi R19,0
 0778                   .dbline -2
 0778           L38:
 0778 0E940000          xcall pop_gset2
 077C                   .dbline 0 ; func end
 077C 0895              ret
 077E                   .dbsym r n2 18 pc
 077E                   .dbsym r n1 16 pc
 077E                   .dbend
 077E                   .dbfunc e delay _delay fV
 077E           ;          ticks -> R16
                        .even
 077E           _delay::
 077E                   .dbline -1
 077E                   .dbline 153
 077E           ; }
 077E           ; 
 077E           ; 
 077E           ; // delay time=ticks * 6 +15 clock time tosc
 077E           ; // the fosc=11.0592MHz in this application,
 077E           ; // when ticks=0x00:   1.356us
 077E           ; // when ticks=0xFF:   139.7us
 077E           ; 
 077E           ;  void delay(unsigned char ticks)
 077E           ;   {
 077E           L42:
 077E                   .dbline 154
 077E           L43:
 077E                   .dbline 154
 077E           ;       while(ticks--);
 077E 202E              mov R2,R16
 0780 3324              clr R3
 0782 0150              subi R16,1
 0784 2220              tst R2
 0786 D9F7              brne L42
 0788                   .dbline -2
 0788           L41:
 0788                   .dbline 0 ; func end
 0788 0895              ret
 078A                   .dbsym r ticks 16 c
 078A                   .dbend
 078A                   .dbfunc e delayus _delayus fV
 078A           ;          ticks -> R16
                        .even
 078A           _delayus::
 078A                   .dbline -1
 078A                   .dbline 159
 078A           ;   }
 078A           ; 
 078A           ; //
 078A           ;  void delayus(unsigned char ticks)
 078A           ;   {
 078A           L46:
 078A                   .dbline 160
 078A           L47:
 078A                   .dbline 160
 078A           ;       while(ticks--);
 078A 202E              mov R2,R16
 078C 3324              clr R3
 078E 0150              subi R16,1
 0790 2220              tst R2
 0792 D9F7              brne L46
 0794                   .dbline -2
 0794           L45:
 0794                   .dbline 0 ; func end
 0794 0895              ret
 0796                   .dbsym r ticks 16 c
 0796                   .dbend
 0796                   .dbfunc e delayms _delayms fV
 0796           ;              i -> R20
 0796           ;              j -> R22
 0796           ;              k -> R10
 0796           ;          ticks -> R16
                        .even
 0796           _delayms::
 0796 0E940000          xcall push_gset3
 079A                   .dbline -1
 079A                   .dbline 164
 079A           ;   }
 079A           ; 
 079A           ;   void delayms(unsigned char ticks)
 079A           ;   {
 079A                   .dbline 166
 079A           ;       unsigned char i,j,k;
 079A           ;       for(i=0;i<ticks;i++)
 079A 4427              clr R20
 079C 0FC0              xjmp L53
 079E           L50:
 079E                   .dbline 167
 079E           ;       {
 079E                   .dbline 168
 079E           ;               for(j=0;j<10;j++)
 079E 6627              clr R22
 07A0 0AC0              xjmp L57
 07A2           L54:
 07A2                   .dbline 169
 07A2           ;               {       
 07A2                   .dbline 170
 07A2           ;                       k=182;
 07A2 86EB              ldi R24,182
 07A4 A82E              mov R10,R24
 07A6           L58:
 07A6                   .dbline 171
 07A6           L59:
 07A6                   .dbline 171
 07A6 2A2C              mov R2,R10
 07A8 3324              clr R3
 07AA 822D              mov R24,R2
 07AC 8150              subi R24,1
 07AE A82E              mov R10,R24
 07B0 2220              tst R2
 07B2 C9F7              brne L58
 07B4                   .dbline 172
 07B4           L55:
 07B4                   .dbline 168
 07B4 6395              inc R22
 07B6           L57:
 07B6                   .dbline 168
 07B6 6A30              cpi R22,10
 07B8 A0F3              brlo L54
 07BA                   .dbline 173
 07BA           L51:
 07BA                   .dbline 166
 07BA 4395              inc R20
 07BC           L53:
 07BC                   .dbline 166
 07BC 4017              cp R20,R16
 07BE 78F3              brlo L50
 07C0                   .dbline -2
 07C0           L49:
 07C0 0E940000          xcall pop_gset3
 07C4                   .dbline 0 ; func end
 07C4 0895              ret
 07C6                   .dbsym r i 20 c
 07C6                   .dbsym r j 22 c
 07C6                   .dbsym r k 10 c
 07C6                   .dbsym r ticks 16 c
 07C6                   .dbend
 07C6                   .dbfunc e c_wd _c_wd fV
                        .even
 07C6           _c_wd::
 07C6                   .dbline -1
 07C6                   .dbline 178
 07C6           ;                       while(k--);     //about 100us
 07C6           ;               }
 07C6           ;       }
 07C6           ;   }
 07C6           ; 
 07C6           ; 
 07C6           ; void c_wd(void)
 07C6           ; {
 07C6                   .dbline 179
 07C6           ;       SETBIT(PORTC, BIT1);
 07C6 A99A              sbi 0x15,1
 07C8                   .dbline 180
 07C8           ;       NOP();
 07C8 0000              nop
 07CA                   .dbline 181
 07CA           ;       NOP();
 07CA 0000              nop
 07CC                   .dbline 182
 07CC           ;       CLEARBIT(PORTC, BIT1);
 07CC A998              cbi 0x15,1
 07CE                   .dbline -2
 07CE           L61:
 07CE                   .dbline 0 ; func end
 07CE 0895              ret
 07D0                   .dbend
                        .area bss(ram, con, rel)
 0000                   .dbfile D:\ATP_AVR\Public.c
 0000           _RECORD::
 0000                   .blkb 1048
 0418                   .dbsym e RECORD _RECORD A[1048:1048]c
 0418           _ucChannelConfig::
 0418                   .blkb 80
 0468                   .dbsym e ucChannelConfig _ucChannelConfig A[80:80]c
 0468           _ucSystemConfig::
 0468                   .blkb 80
 04B8                   .dbsym e ucSystemConfig _ucSystemConfig A[80:80]c
 04B8           _TREC::
 04B8                   .blkb 4
 04BC                   .dbsym e TREC _TREC A[4:4]c
 04BC           _FTREC::
 04BC                   .blkb 4
 04C0                   .dbsym e FTREC _FTREC A[4:4]c
 04C0           _ucNowValuePerCOM::
 04C0                   .blkb 8
 04C8                   .dbsym e ucNowValuePerCOM _ucNowValuePerCOM A[8:8]c
 04C8           _ucNowValuePer::
 04C8                   .blkb 8
 04D0                   .dbsym e ucNowValuePer _ucNowValuePer A[8:8]c
 04D0           _ucDTTime::
 04D0                   .blkb 6
 04D6                   .dbsym e ucDTTime _ucDTTime A[6:6]c
 04D6           _ucLastFlashTime::
 04D6                   .blkb 6
 04DC                   .dbsym e ucLastFlashTime _ucLastFlashTime A[6:6]c
 04DC           _ucNowTime::
 04DC                   .blkb 6
 04E2                   .dbsym e ucNowTime _ucNowTime A[6:6]c
 04E2           _ucUpDownTime::
 04E2                   .blkb 12
 04EE                   .dbsym e ucUpDownTime _ucUpDownTime A[12:12]c

⌨️ 快捷键说明

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