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

📄 rd_usecooperatingminios.lis

📁 一个直流电机的闭环控制源代码程序
💻 LIS
📖 第 1 页 / 共 2 页
字号:
 000A           ;         #endif
 000A           ;         ProcPCB[n].Proc   = NULL_PROC;
 000A 83E0              ldi R24,3
 000C 849F              mul R24,R20
 000E 5001              movw R10,R0
 0010 80E0              ldi R24,<_ProcPCB
 0012 90E0              ldi R25,>_ProcPCB
 0014 F501              movw R30,R10
 0016 E80F              add R30,R24
 0018 F91F              adc R31,R25
 001A 80E0              ldi R24,<PL_NULL_PROC
 001C 90E0              ldi R25,>PL_NULL_PROC
 001E 9183              std z+1,R25
 0020 8083              std z+0,R24
 0022                   .dbline 119
 0022           ;         ProcPCB[n].IfProcAlive = FALSE;
 0022 80E0              ldi R24,<_ProcPCB+2
 0024 90E0              ldi R25,>_ProcPCB+2
 0026 F501              movw R30,R10
 0028 E80F              add R30,R24
 002A F91F              adc R31,R25
 002C 2224              clr R2
 002E 2082              std z+0,R2
 0030                   .dbline 120
 0030           ;     }
 0030           L4:
 0030                   .dbline 113
 0030 4395              inc R20
 0032           L6:
 0032                   .dbline 113
 0032 4430              cpi R20,4
 0034 50F3              brlo L3
 0036           X0:
 0036                   .dbline 122
 0036           ;               
 0036           ;     COS_REGISTER_PROC_FUNCTION
 0036 00D0              rcall _PROC_Register
 0038                   .dbline -2
 0038           L2:
 0038                   .dbline 0 ; func end
 0038 00C0              rjmp pop_xgset300C
 003A                   .dbsym r Reg1 10 S
 003A                   .dbsym r n1 20 c
 003A                   .dbend
                        .area data(ram, con, rel)
 0001                   .dbfile H:\单片机\源程序\2007全国电子设计大赛\电机闭环模块\RD_UseCooperatingMiniOs.c
 0001           L9:
 0001                   .blkb 1
                        .area idata
 0001 00                .byte 0
                        .area data(ram, con, rel)
 0002                   .dbfile H:\单片机\源程序\2007全国电子设计大赛\电机闭环模块\RD_UseCooperatingMiniOs.c
                        .area text(rom, con, rel)
 003A                   .dbfile H:\单片机\源程序\2007全国电子设计大赛\电机闭环模块\RD_UseCooperatingMiniOs.c
 003A                   .dbfunc e Process_Task _Process_Task fV
 003A                   .dbsym s n L9 c
                        .even
 003A           _Process_Task::
 003A                   .dbline -1
 003A                   .dbline 132
 003A           ; }
 003A           ; 
 003A           ; /***********************************************************
 003A           ; *   函数说明:任务处理函数                                 *
 003A           ; *   输入:    无                                           *
 003A           ; *   输出:    无                                           *
 003A           ; *   调用函数:无                                           *
 003A           ; ***********************************************************/
 003A           ; void Process_Task(void)
 003A           ; {
 003A                   .dbline 135
 003A           ;     static uint8 n = 0;
 003A           ;     
 003A           ;     if (ProcPCB[n].IfProcAlive)                             //处理进程
 003A 20900100          lds R2,L9
 003E 83E0              ldi R24,3
 0040 829D              mul R24,R2
 0042 F001              movw R30,R0
 0044 80E0              ldi R24,<_ProcPCB+2
 0046 90E0              ldi R25,>_ProcPCB+2
 0048 E80F              add R30,R24
 004A F91F              adc R31,R25
 004C 2080              ldd R2,z+0
 004E 2220              tst R2
 0050 C1F0              breq L10
 0052           X1:
 0052                   .dbline 136
 0052           ;     {
 0052                   .dbline 137
 0052           ;         ProcPCB[n].IfProcAlive = (*ProcPCB[n].Proc)();
 0052 20900100          lds R2,L9
 0056 83E0              ldi R24,3
 0058 829D              mul R24,R2
 005A 1001              movw R2,R0
 005C 80E0              ldi R24,<_ProcPCB
 005E 90E0              ldi R25,>_ProcPCB
 0060 F101              movw R30,R2
 0062 E80F              add R30,R24
 0064 F91F              adc R31,R25
 0066 A081              ldd R26,z+0
 0068 B181              ldd R27,z+1
 006A 0F92              push R0
 006C 1F92              push R1
 006E FD01              movw R30,R26
 0070 00D0              rcall xicallx
 0072 3F90              pop R3
 0074 2F90              pop R2
 0076 80E0              ldi R24,<_ProcPCB+2
 0078 90E0              ldi R25,>_ProcPCB+2
 007A F101              movw R30,R2
 007C E80F              add R30,R24
 007E F91F              adc R31,R25
 0080 0083              std z+0,R16
 0082                   .dbline 138
 0082           ;     }        
 0082           L10:
 0082                   .dbline 140
 0082           ;     
 0082           ;     n ++;
 0082 80910100          lds R24,L9
 0086 8F5F              subi R24,255    ; addi 1
 0088 80930100          sts L9,R24
 008C                   .dbline 141
 008C           ;     if (n >= g_cCOSPROCCounter)
 008C 20900000          lds R2,_g_cCOSPROCCounter
 0090 8215              cp R24,R2
 0092 18F0              brlo L14
 0094           X2:
 0094                   .dbline 142
 0094           ;     {
 0094                   .dbline 143
 0094           ;         n = 0;
 0094 2224              clr R2
 0096 20920100          sts L9,R2
 009A                   .dbline 144
 009A           ;     }
 009A           L14:
 009A                   .dbline -2
 009A           L8:
 009A                   .dbline 0 ; func end
 009A 0895              ret
 009C                   .dbend
                        .area bss(ram, con, rel)
 0000                   .dbfile H:\单片机\源程序\2007全国电子设计大赛\电机闭环模块\RD_UseCooperatingMiniOs.c
 0000           _ProcPCB::
 0000                   .blkb 12
 000C                   .dbstruct 0 3 Process
 000C                   .dbfield 0 Proc pfc
 000C                   .dbfield 2 IfProcAlive c
 000C                   .dbend
 000C                   .dbsym e ProcPCB _ProcPCB A[12:4]S[Process]
 000C           ; }
                        .area  func_lit
 0000 0000      PL_NULL_PROC:   .word `_NULL_PROC

⌨️ 快捷键说明

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