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

📄 macoh.lis

📁 工控计数器ICCAVR的MAGE8程序LED数码显示+4键
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 0126 30E0              ldi R19,>_timeset+8
 0128 00E6              ldi R16,96
 012A 10E0              ldi R17,0
 012C 00D0              rcall _EEPROMReadBytes_extIO
 012E                   .dbline 121
 012E           ;       EEPROM_READ(0x93,Contdata);
 012E 84E0              ldi R24,4
 0130 90E0              ldi R25,0
 0132 9983              std y+1,R25
 0134 8883              std y+0,R24
 0136 20E0              ldi R18,<_Contdata
 0138 30E0              ldi R19,>_Contdata
 013A 03E9              ldi R16,147
 013C 10E0              ldi R17,0
 013E 00D0              rcall _EEPROMReadBytes_extIO
 0140                   .dbline 122
 0140           ;       EEPROM_READ(0xa0,lockda);
 0140 82E0              ldi R24,2
 0142 90E0              ldi R25,0
 0144 9983              std y+1,R25
 0146 8883              std y+0,R24
 0148 20E0              ldi R18,<_lockda
 014A 30E0              ldi R19,>_lockda
 014C 00EA              ldi R16,160
 014E 10E0              ldi R17,0
 0150 00D0              rcall _EEPROMReadBytes_extIO
 0152                   .dbline 123
 0152           ;       EEPROM_READ(0xb0, kt[0]);
 0152 81E0              ldi R24,1
 0154 90E0              ldi R25,0
 0156 9983              std y+1,R25
 0158 8883              std y+0,R24
 015A 20E0              ldi R18,<_kt
 015C 30E0              ldi R19,>_kt
 015E 00EB              ldi R16,176
 0160 10E0              ldi R17,0
 0162 00D0              rcall _EEPROMReadBytes_extIO
 0164                   .dbline 124
 0164           ;       if(negdata==0) negaon_off=0;
 0164 20900000          lds R2,_negdata
 0168 2220              tst R2
 016A 69F4              brne L6
 016C                   .dbline 124
 016C 40E0              ldi R20,0
 016E 50E0              ldi R21,0
 0170 60E0              ldi R22,0
 0172 70E0              ldi R23,0
 0174 50930900          sts _negaon_off+1,R21
 0178 40930800          sts _negaon_off,R20
 017C 70930B00          sts _negaon_off+2+1,R23
 0180 60930A00          sts _negaon_off+2,R22
 0184 0CC0              rjmp L7
 0186           L6:
 0186                   .dbline 125
 0186           ;       else                negaon_off=-100000;
 0186 40E6              ldi R20,96
 0188 59E7              ldi R21,121
 018A 6EEF              ldi R22,254
 018C 7FEF              ldi R23,255
 018E 50930900          sts _negaon_off+1,R21
 0192 40930800          sts _negaon_off,R20
 0196 70930B00          sts _negaon_off+2+1,R23
 019A 60930A00          sts _negaon_off+2,R22
 019E           L7:
 019E                   .dbline 126
 019E           ;       if(intemp==1)            { PORTD|= BIT(4);}
 019E 80910200          lds R24,_intemp
 01A2 8130              cpi R24,1
 01A4 09F4              brne L8
 01A6                   .dbline 126
 01A6                   .dbline 126
 01A6 5C9A              sbi 0xb,4
 01A8                   .dbline 126
 01A8           L8:
 01A8                   .dbline 127
 01A8           ;       if(intemp>=2)            { PORTD|= BIT(5);}
 01A8 80910200          lds R24,_intemp
 01AC 8230              cpi R24,2
 01AE 08F0              brlo L10
 01B0                   .dbline 127
 01B0                   .dbline 127
 01B0 5D9A              sbi 0xb,5
 01B2                   .dbline 127
 01B2           L10:
 01B2                   .dbline 128
 01B2           ;       sandchar_display(co,co);
 01B2 20E0              ldi R18,<_co
 01B4 30E0              ldi R19,>_co
 01B6 00E0              ldi R16,<_co
 01B8 10E0              ldi R17,>_co
 01BA 2DD9              rcall _sandchar_display
 01BC                   .dbline 129
 01BC           ;       display_flash(135,0,1); 
 01BC 81E0              ldi R24,1
 01BE 8883              std y+0,R24
 01C0 2227              clr R18
 01C2 07E8              ldi R16,135
 01C4 31D9              rcall _display_flash
 01C6                   .dbline 130
 01C6           ;     SEI(); 
 01C6 7894              sei
 01C8                   .dbline -2
 01C8           L1:
 01C8 2296              adiw R28,2
 01CA 00D0              rcall pop_gset2
 01CC                   .dbline 0 ; func end
 01CC 0895              ret
 01CE                   .dbend
 01CE                   .dbfunc e menu _menu fV
 01CE           ;         intm_m -> R10
 01CE           ;        reset_m -> R14
 01CE           ;            ccc -> R12
 01CE           ;        timebit -> R10
 01CE           ;         pontmp -> R10
 01CE           ;          tdbit -> y+17
 01CE           ;           in_m -> R12
 01CE           ;           cbit -> y+16
 01CE           ;           fbit -> y+15
                        .even
 01CE           _menu::
 01CE 00D0              rcall push_gset5
 01D0 6297              sbiw R28,18
 01D2                   .dbline -1
 01D2                   .dbline 134
 01D2           ; }
 01D2           ; //--------------------------------------------------------------------------------------------------------------------------------------------按键菜单
 01D2           ; void menu(void)                                        
 01D2           ; {          
 01D2                   .dbline 137
 01D2           ; unsigned        char     pontmp,timebit, fbit,cbit,tdbit,ccc;
 01D2           ; unsigned        char     reset_m,in_m,intm_m; 
 01D2           ; pontmp=pontdata;
 01D2 A0900400          lds R10,_pontdata
 01D6                   .dbline 138
 01D6           ; fbit=0;  cbit=5 ; tdbit=0; timebit=0;
 01D6 0024              clr R0
 01D8 0F86              std y+15,R0
 01DA                   .dbline 138
 01DA 85E0              ldi R24,5
 01DC 888B              std y+16,R24
 01DE                   .dbline 138
 01DE 098A              std y+17,R0
 01E0                   .dbline 138
 01E0 AA24              clr R10
 01E2                   .dbline 139
 01E2           ; key=GetKey();
 01E2 84DB              rcall _GetKey
 01E4 00939900          sts _key,R16
 01E8                   .dbline 140
 01E8           ; keybit=0; keytime=0;
 01E8 2224              clr R2
 01EA 20920000          sts _keybit,R2
 01EE                   .dbline 140
 01EE 3324              clr R3
 01F0 30920100          sts _keytime+1,R3
 01F4 20920000          sts _keytime,R2
 01F8                   .dbline 141
 01F8           ; switch (key)
 01F8 A02E              mov R10,R16
 01FA BB24              clr R11
 01FC C501              movw R24,R10
 01FE 8C30              cpi R24,12
 0200 E0E0              ldi R30,0
 0202 9E07              cpc R25,R30
 0204 09F4              brne X26
 0206 DEC7              rjmp L307
 0208           X26:
 0208 8CE0              ldi R24,12
 020A 8A15              cp R24,R10
 020C 9B05              cpc R25,R11
 020E 34F0              brlt L358
 0210           L357:
 0210 C501              movw R24,R10
 0212 8730              cpi R24,7
 0214 E0E0              ldi R30,0
 0216 9E07              cpc R25,R30
 0218 99F0              breq L16
 021A AFC8              rjmp L12
 021C           L358:
 021C C501              movw R24,R10
 021E 8331              cpi R24,19
 0220 E0E0              ldi R30,0
 0222 9E07              cpc R25,R30
 0224 09F4              brne X27
 0226 D0C7              rjmp L308
 0228           X27:
 0228 8331              cpi R24,19
 022A E0E0              ldi R30,0
 022C 9E07              cpc R25,R30
 022E 0CF4              brge X28
 0230 A4C8              rjmp L12
 0232           X28:
 0232           L359:
 0232 C501              movw R24,R10
 0234 8731              cpi R24,23
 0236 E0E0              ldi R30,0
 0238 9E07              cpc R25,R30
 023A 09F4              brne X29
 023C 83C2              rjmp L103
 023E           X29:
 023E 9DC8              rjmp L12
 0240           X0:
 0240                   .dbline 142
 0240           ;                {
 0240           L16:
 0240                   .dbline 144
 0240           ;                  case   set:
 0240           ;                  sandcnd_display(psx,timeset[0],0);
 0240 2224              clr R2
 0242 2A82              std y+2,R2
 0244 40900200          lds R4,_timeset+2
 0248 50900300          lds R5,_timeset+2+1
 024C 20900000          lds R2,_timeset
 0250 30900100          lds R3,_timeset+1
 0254 4882              std y+0,R4
 0256 5982              std y+1,R5
 0258 9101              movw R18,R2
 025A 00E0              ldi R16,<_psx
 025C 10E0              ldi R17,>_psx
 025E C0D8              rcall _sandcnd_display
 0260 6FC2              rjmp L18
 0262           L17:
 0262                   .dbline 146
 0262           ;                  while(1)
 0262           ;                  {
 0262                   .dbline 147
 0262           ;             o=psx;
 0262 80E0              ldi R24,<_psx
 0264 90E0              ldi R25,>_psx
 0266 90939100          sts _o+1,R25
 026A 80939000          sts _o,R24
 026E                   .dbline 148
 026E           ;                       o[1]=10;
 026E 8AE0              ldi R24,10
 0270 E0919000          lds R30,_o
 0274 F0919100          lds R31,_o+1
 0278 8183              std z+1,R24
 027A                   .dbline 149
 027A           ;                       o[2]=10;
 027A E0919000          lds R30,_o
 027E F0919100          lds R31,_o+1
 0282 8283              std z+2,R24
 0284                   .dbline 150
 0284           ;                   key=display_flash(fbit,cbit,2); 
 0284 82E0              ldi R24,2
 0286 8883              std y+0,R24
 0288 2889              ldd R18,y+16
 028A 0F85              ldd R16,y+15
 028C CDD8              rcall _display_flash
 028E 00939900          sts _key,R16
 0292                   .dbline 151
 0292           ;                       psx[2]=12;      
 0292 8CE0              ldi R24,12
 0294 80934400          sts _psx+2,R24
 0298                   .dbline 152
 0298           ;                   switch (key)
 0298 202E              mov R2,R16
 029A 3324              clr R3
 029C 3C82              std y+4,R3
 029E 2B82              std y+3,R2
 02A0 C101              movw R24,R2
 02A2 8331              cpi R24,19
 02A4 E0E0              ldi R30,0
 02A6 9E07              cpc R25,R30
 02A8 09F4              brne X30
 02AA 8EC7              rjmp L55
 02AC           X30:
 02AC 83E1              ldi R24,19
 02AE 8215              cp R24,R2
 02B0 9305              cpc R25,R3
 02B2 B4F0              brlt L102
 02B4           L101:
 02B4 8B81              ldd R24,y+3
 02B6 9C81              ldd R25,y+4
 02B8 8730              cpi R24,7
 02BA E0E0              ldi R30,0
 02BC 9E07              cpc R25,R30
 02BE C1F0              breq L24
 02C0 8B30              cpi R24,11
 02C2 E0E0              ldi R30,0
 02C4 9E07              cpc R25,R30
 02C6 09F4              brne X31
 02C8 1FC2              rjmp L94
 02CA           X31:
 02CA 8D30              cpi R24,13
 02CC E0E0              ldi R30,0
 02CE 9E07              cpc R25,R30
 02D0 09F4              brne X32
 02D2 F2C1              rjmp L89
 02D4           X32:
 02D4 8E30              cpi R24,14
 02D6 E0E0              ldi R30,0
 02D8 9E07              cpc R25,R30
 02DA 09F4              brne X33
 02DC CAC1              rjmp L84
 02DE           X33:
 02DE 30C2              rjmp L21

⌨️ 快捷键说明

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