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

📄 httpserv.lis

📁 单片机C语言程序设计实训100例--基于AVR+PROTEUS仿真
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 0204 9B83              std y+3,R25
 0206 AC83              std y+4,R26
 0208 BD83              std y+5,R27
 020A 20900000          lds R2,_html_mt
 020E 30900100          lds R3,_html_mt+1
 0212 3982              std y+1,R3
 0214 2882              std y+0,R2
 0216 9601              movw R18,R12
 0218 8501              movw R16,R10
 021A 0E940000          xcall _NutHttpSendHeaderBottom
 021E                   .dbline 377
 021E           ; 
 021E           ;     /* Send HTML header. */
 021E           ;     fputs_P(head, stream);
 021E 9501              movw R18,R10
 0220 00E0              ldi R16,<L46
 0222 10E0              ldi R17,>L46
 0224 0E940000          xcall _fputs_P
 0228                   .dbline 378
 0228           ;     for (tdp = nutThreadList; tdp; tdp = tdp->td_next) {
 0228 40910000          lds R20,_nutThreadList
 022C 50910100          lds R21,_nutThreadList+1
 0230 50C0              xjmp L57
 0232           L54:
 0232                   .dbline 378
 0232                   .dbline 379
 0232           ;         fprintf_P(stream, tfmt, (uptr_t) tdp, tdp->td_name, tdp->td_priority,
 0232 8FEE              ldi R24,239
 0234 9EEB              ldi R25,190
 0236 ADEA              ldi R26,173
 0238 BEED              ldi R27,222
 023A FA01              movw R30,R20
 023C 7396              adiw R30,19
 023E AF93              push R26
 0240 BF93              push R27
 0242 A081              ldd R26,z+0
 0244 B181              ldd R27,z+1
 0246 FD01              movw R30,R26
 0248 BF91              pop R27
 024A AF91              pop R26
 024C 2080              ldd R2,z+0
 024E 3180              ldd R3,z+1
 0250 4280              ldd R4,z+2
 0252 5380              ldd R5,z+3
 0254 2816              cp R2,R24
 0256 3906              cpc R3,R25
 0258 4A06              cpc R4,R26
 025A 5B06              cpc R5,R27
 025C 19F0              breq L60
 025E           X11:
 025E 60E0              ldi R22,<L58
 0260 70E0              ldi R23,>L58
 0262 02C0              xjmp L61
 0264           L60:
 0264 60E0              ldi R22,<L59
 0266 70E0              ldi R23,>L59
 0268           L61:
 0268 798B              std y+17,R23
 026A 688B              std y+16,R22
 026C FA01              movw R30,R20
 026E 6088              ldd R6,z+16
 0270 7188              ldd R7,z+17
 0272 2388              ldd R2,z+19
 0274 3488              ldd R3,z+20
 0276 2301              movw R4,R6
 0278 4218              sub R4,R2
 027A 5308              sbc R5,R3
 027C 5F86              std y+15,R5
 027E 4E86              std y+14,R4
 0280 7D86              std y+13,R7
 0282 6C86              std y+12,R6
 0284 2588              ldd R2,z+21
 0286 3688              ldd R3,z+22
 0288 3B86              std y+11,R3
 028A 2A86              std y+10,R2
 028C 2788              ldd R2,z+23
 028E 308C              ldd R3,z+24
 0290 3986              std y+9,R3
 0292 2886              std y+8,R2
 0294 80E0              ldi R24,<L49
 0296 90E0              ldi R25,>L49
 0298 E785              ldd R30,z+15
 029A FF27              clr R31
 029C EE0F              lsl R30
 029E FF1F              rol R31
 02A0 E80F              add R30,R24
 02A2 F91F              adc R31,R25
 02A4 2080              ldd R2,z+0
 02A6 3180              ldd R3,z+1
 02A8 3F82              std y+7,R3
 02AA 2E82              std y+6,R2
 02AC FA01              movw R30,R20
 02AE 2288              ldd R2,z+18
 02B0 3324              clr R3
 02B2 3D82              std y+5,R3
 02B4 2C82              std y+4,R2
 02B6 CF01              movw R24,R30
 02B8 0696              adiw R24,6
 02BA 9B83              std y+3,R25
 02BC 8A83              std y+2,R24
 02BE 5983              std y+1,R21
 02C0 4883              std y+0,R20
 02C2 20E0              ldi R18,<L47
 02C4 30E0              ldi R19,>L47
 02C6 8501              movw R16,R10
 02C8 0E940000          xcall _fprintf_P
 02CC                   .dbline 383
 02CC           ;                   thread_states[tdp->td_state], (uptr_t) tdp->td_queue, (uptr_t) tdp->td_timer,
 02CC           ;                   (uptr_t) tdp->td_sp, (uptr_t) tdp->td_sp - (uptr_t) tdp->td_memory,
 02CC           ;                   *((u_long *) tdp->td_memory) != DEADBEEF ? "Corr" : "OK");
 02CC           ;     }
 02CC           L55:
 02CC                   .dbline 378
 02CC FA01              movw R30,R20
 02CE 4081              ldd R20,z+0
 02D0 5181              ldd R21,z+1
 02D2           L57:
 02D2                   .dbline 378
 02D2 4030              cpi R20,0
 02D4 4507              cpc R20,R21
 02D6 09F0              breq X13
 02D8 ACCF              xjmp L54
 02DA           X13:
 02DA           X12:
 02DA                   .dbline 384
 02DA           ;     fputs_P(foot, stream);
 02DA 9501              movw R18,R10
 02DC 00E0              ldi R16,<L48
 02DE 10E0              ldi R17,>L48
 02E0 0E940000          xcall _fputs_P
 02E4                   .dbline 385
 02E4           ;     fflush(stream);
 02E4 8501              movw R16,R10
 02E6 0E940000          xcall _fflush
 02EA                   .dbline 387
 02EA           ; 
 02EA           ;     return 0;
 02EA 0027              clr R16
 02EC 1127              clr R17
 02EE                   .dbline -2
 02EE           L45:
 02EE                   .dbline 0 ; func end
 02EE 6296              adiw R28,18
 02F0 0C940000          xjmp pop_xgsetF03C
 02F4                   .dbsym r tdp 20 pS[_NUTTHREADINFO]
 02F4                   .dbsym r req 12 pS[_REQUEST]
 02F4                   .dbsym r stream 10 pS[__iobuf]
 02F4                   .dbend
                        .area lit(rom, con, rel)
 0284           L63:
 0284 3C48544D4C3E3C484541443E3C544954  .byte 60,'H,'T,'M,'L,62,60,'H,'E,'A,'D,62,60,'T,'I,'T
 0294 4C453E54696D6572733C2F5449544C45  .byte 'L,'E,62,'T,'i,'m,'e,'r,'s,60,47,'T,'I,'T,'L,'E
 02A4 3E3C2F484541443E3C424F44593E3C48  .byte 62,60,47,'H,'E,'A,'D,62,60,'B,'O,'D,'Y,62,60,'H
 02B4 313E54696D6572733C2F48313E0D0A00  .byte 49,62,'T,'i,'m,'e,'r,'s,60,47,'H,49,62,13,10,0
 02C4           L64:
 02C4 3C5441424C4520424F524445523E3C54  .byte 60,'T,'A,'B,'L,'E,32,'B,'O,'R,'D,'E,'R,62,60,'T
 02D4 523E3C54483E48616E646C653C2F5448  .byte 'R,62,60,'T,'H,62,'H,'a,'n,'d,'l,'e,60,47,'T,'H
 02E4 3E3C54483E436F756E74646F776E3C2F  .byte 62,60,'T,'H,62,'C,'o,'u,'n,'t,'d,'o,'w,'n,60,47
 02F4 54483E3C54483E5469636B2052656C6F  .byte 'T,'H,62,60,'T,'H,62,'T,'i,'c,'k,32,'R,'e,'l,'o
 0304 61643C2F54483E3C54483E43616C6C62  .byte 'a,'d,60,47,'T,'H,62,60,'T,'H,62,'C,'a,'l,'l,'b
 0314 61636B3C42523E416464726573733C2F  .byte 'a,'c,'k,60,'B,'R,62,'A,'d,'d,'r,'e,'s,'s,60,47
 0324 54483E3C54483E43616C6C6261636B3C  .byte 'T,'H,62,60,'T,'H,62,'C,'a,'l,'l,'b,'a,'c,'k,60
 0334 42523E417267756D656E743C2F54483E  .byte 'B,'R,62,'A,'r,'g,'u,'m,'e,'n,'t,60,47,'T,'H,62
 0344 3C2F54523E0D0A00  .byte 60,47,'T,'R,62,13,10,0
 034C           L65:
 034C 3C54523E3C54443E253034583C2F5444  .byte 60,'T,'R,62,60,'T,'D,62,37,48,52,'X,60,47,'T,'D
 035C 3E3C54443E256C753C2F54443E3C5444  .byte 62,60,'T,'D,62,37,'l,'u,60,47,'T,'D,62,60,'T,'D
 036C 3E256C753C2F54443E3C54443E253034  .byte 62,37,'l,'u,60,47,'T,'D,62,60,'T,'D,62,37,48,52
 037C 583C2F54443E3C54443E253034583C2F  .byte 'X,60,47,'T,'D,62,60,'T,'D,62,37,48,52,'X,60,47
 038C 54443E3C2F54523E0D0A00    .byte 'T,'D,62,60,47,'T,'R,62,13,10,0
 0397           L66:
 0397 3C2F5441424C453E3C2F424F44593E3C  .byte 60,47,'T,'A,'B,'L,'E,62,60,47,'B,'O,'D,'Y,62,60
 03A7 2F48544D4C3E00    .byte 47,'H,'T,'M,'L,62,0
                        .area text(rom, con, rel)
 02F4                   .dbfile C:\ethernut-4.9.7\nutapp_13h\httpd\httpserv.c
 02F4                   .dbfunc s ShowTimers _ShowTimers fI
 02F4                   .dbstruct 0 16 _NUTTIMERINFO
 02F4                   .dbfield 0 tn_next pS[_NUTTIMERINFO]
 02F4                   .dbfield 2 tn_prev pS[_NUTTIMERINFO]
 02F4                   .dbfield 4 tn_ticks l
 02F4                   .dbfield 8 tn_ticks_left l
 02F4                   .dbfield 12 tn_callback pfV
 02F4                   .dbfield 14 tn_arg pV
 02F4                   .dbend
 02F4                   .dbsym s foot L66 A[23:23]kc
 02F4                   .dbsym s tfmt L65 A[75:75]kc
 02F4                   .dbsym s thead L64 A[136:136]kc
 02F4                   .dbsym s head L63 A[64:64]kc
 02F4           ;     ticks_left -> y+14
 02F4           ;            tnp -> R12,R13
 02F4           ;            req -> R12,R13
 02F4           ;         stream -> R10,R11
                        .even
 02F4           _ShowTimers:
 02F4 0E940000          xcall push_xgsetF03C
 02F8 6901              movw R12,R18
 02FA 5801              movw R10,R16
 02FC 6297              sbiw R28,18
 02FE                   .dbline -1
 02FE                   .dbline 398
 02FE           ; }
 02FE           ; 
 02FE           ; /*
 02FE           ;  * CGI Sample: Show list of timers.
 02FE           ;  *
 02FE           ;  * This routine must have been registered by NutRegisterCgi() and is
 02FE           ;  * automatically called by NutHttpProcessRequest() when the client
 02FE           ;  * request the URL 'cgi-bin/timers.cgi'.
 02FE           ;  */
 02FE           ; static int ShowTimers(FILE * stream, REQUEST * req)
 02FE           ; {
 02FE                   .dbline 411
 02FE           ;     static prog_char head[] = "<HTML><HEAD><TITLE>Timers</TITLE></HEAD><BODY><H1>Timers</H1>\r\n";
 02FE           ;     static prog_char thead[] =
 02FE           ;         "<TABLE BORDER><TR><TH>Handle</TH><TH>Countdown</TH><TH>Tick Reload</TH><TH>Callback<BR>Address</TH><TH>Callback<BR>Argument</TH></TR>\r\n";
 02FE           ; #if defined(__AVR__)
 02FE           ;     static prog_char tfmt[] = "<TR><TD>%04X</TD><TD>%lu</TD><TD>%lu</TD><TD>%04X</TD><TD>%04X</TD></TR>\r\n";
 02FE           ; #else
 02FE           ;     static prog_char tfmt[] = "<TR><TD>%08lX</TD><TD>%lu</TD><TD>%lu</TD><TD>%08lX</TD><TD>%08lX</TD></TR>\r\n";
 02FE           ; #endif
 02FE           ;     static prog_char foot[] = "</TABLE></BODY></HTML>";
 02FE           ;     NUTTIMERINFO *tnp;
 02FE           ;     u_long ticks_left;
 02FE           ; 
 02FE           ;     NutHttpSendHeaderTop(stream, req, 200, "Ok");
 02FE 80E0              ldi R24,<L22
 0300 90E0              ldi R25,>L22
 0302 9B83              std y+3,R25
 0304 8A83              std y+2,R24
 0306 88EC              ldi R24,200
 0308 90E0              ldi R25,0
 030A 9983              std y+1,R25
 030C 8883              std y+0,R24
 030E 9601              movw R18,R12
 0310 8501              movw R16,R10
 0312 0E940000          xcall _NutHttpSendHeaderTop
 0316                   .dbline 412
 0316           ;     NutHttpSendHeaderBottom(stream, req, html_mt, -1);
 0316 4FEF              ldi R20,255
 0318 5FEF              ldi R21,255
 031A 6FEF              ldi R22,255
 031C 7FEF              ldi R23,255
 031E 4A83              std y+2,R20
 0320 5B83              std y+3,R21
 0322 6C83              std y+4,R22
 0324 7D83              std y+5,R23
 0326 20900000          lds R2,_html_mt
 032A 30900100          lds R3,_html_mt+1
 032E 3982              std y+1,R3
 0330 2882              std y+0,R2
 0332 9601              movw R18,R12
 0334 8501              movw R16,R10
 0336 0E940000          xcall _NutHttpSendHeaderBottom
 033A                   .dbline 415
 033A           ; 
 033A           ;     /* Send HTML header. */
 033A           ;     fputs_P(head, stream);
 033A 9501              movw R18,R10
 033C 00E0              ldi R16,<L63
 033E 10E0              ldi R17,>L63
 0340 0E940000          xcall _fputs_P
 0344                   .dbline 416
 0344           ;     if ((tnp = nutTimerList) != 0) {
 0344 20900000          lds R2,_nutTimerList
 0348 30900100          lds R3,_nutTimerList+1
 034C 6101              movw R12,R2
 034E CC20              tst R12
 0350 19F4              brne X14
 0352 DD20              tst R13
 0354 09F4              brne X16
 0356 4AC0              xjmp L67
 0358           X16:
 0358           X14:
 0358                   .dbline 416
 0358                   .dbline 417
 0358           ;         fputs_P(thead, stream);
 0358 9501              movw R18,R10
 035A 00E0              ldi R16,<L64
 035C 10E0              ldi R17,>L64
 035E 0E940000          xcall _fputs_P
 0362                   .dbline 418
 0362           ;         ticks_left = 0;
 0362 40E0              ldi R20,0
 0364 50E0              ldi R21,0

⌨️ 快捷键说明

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