📄 rtx.lst
字号:
C51 COMPILER V7.06 RTX 02/28/2006 10:30:37 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE RTX
OBJECT MODULE PLACED IN RTX.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE RTX.C BROWSE DEBUG OBJECTEXTEND
stmt level source
1 /*若干经验:
2 1、必须是采用52类的CPU
3 2、使用-p52r调试可以在peripherals中调出任务菜单
4 3、每个任务的切换时间在文件conf_tny.a51中,该文件中还有其它的一些设置*/
5 /******************************************************************************/
6 /* */
7 /* RTX_EX1.C: The first RTX51 Program */
8 /* */
9 /******************************************************************************/
10 #pragma CODE DEBUG OBJECTEXTEND
11 #include <rtx51tny.h> /* RTX51 tiny functions & defines */
12 #include "reg52.h"
13 sbit P1_0=P1^0;
14 sbit P1_1=P1^1;
15 sbit P1_2=P1^2;
16 sbit P1_3=P1^3;
17 //任务0,Rtx51 Tiny的程序从任务0开始执行
18 job0 () _task_ 0 {
19 1 os_create_task (1); /* start task 1 */
20 1 os_create_task (2); /* start task 2 */
21 1 os_create_task (3);
22 1 os_create_task (4);
23 1 os_delete_task (0);
24 1 }
25
26 job1 () _task_ 1 { //任务1
27 1 while (1) {
28 2 P1_0=!P1_0;
29 2 os_wait (K_TMO, 50, 0); // 500ms
30 2 }
31 1 }
32 job2 () _task_ 2 { //任务2
33 1 while (1) {
34 2 P1_1=!P1_1;
35 2 os_wait (K_TMO, 10, 0); //100ms
36 2 }
37 1 }
38 job3 () _task_ 3 { //任务3
39 1 while (1) {
40 2 P1_2=!P1_2;
41 2 os_wait (K_TMO, 25, 0); //250ms
42 2 }
43 1 }
44 job4 () _task_ 4 { //任务4
45 1 while (1) {
46 2 P1_3=!P1_3;
47 2 os_wait (K_TMO, 100, 0); //1s
48 2 }
49 1 }
C51 COMPILER V7.06 RTX 02/28/2006 10:30:37 PAGE 2
ASSEMBLY LISTING OF GENERATED OBJECT CODE
; FUNCTION job0 (BEGIN)
; SOURCE LINE # 18
; SOURCE LINE # 19
0000 7F01 MOV R7,#01H
0002 120000 E LCALL _os_create_task
; SOURCE LINE # 20
0005 7F02 MOV R7,#02H
0007 120000 E LCALL _os_create_task
; SOURCE LINE # 21
000A 7F03 MOV R7,#03H
000C 120000 E LCALL _os_create_task
; SOURCE LINE # 22
000F 7F04 MOV R7,#04H
0011 120000 E LCALL _os_create_task
; SOURCE LINE # 23
0014 E4 CLR A
0015 FF MOV R7,A
0016 020000 E LJMP _os_delete_task
; FUNCTION job0 (END)
; FUNCTION job1 (BEGIN)
; SOURCE LINE # 26
0000 ?C0002:
; SOURCE LINE # 27
; SOURCE LINE # 28
0000 B290 CPL P1_0
; SOURCE LINE # 29
0002 E4 CLR A
0003 FB MOV R3,A
0004 FA MOV R2,A
0005 7D32 MOV R5,#032H
0007 7F02 MOV R7,#02H
0009 120000 E LCALL _os_wait
; SOURCE LINE # 30
000C 80F2 SJMP ?C0002
; FUNCTION job1 (END)
; FUNCTION job2 (BEGIN)
; SOURCE LINE # 32
0000 ?C0005:
; SOURCE LINE # 33
; SOURCE LINE # 34
0000 B291 CPL P1_1
; SOURCE LINE # 35
0002 E4 CLR A
0003 FB MOV R3,A
0004 FA MOV R2,A
0005 7D0A MOV R5,#0AH
0007 7F02 MOV R7,#02H
0009 120000 E LCALL _os_wait
; SOURCE LINE # 36
000C 80F2 SJMP ?C0005
; FUNCTION job2 (END)
; FUNCTION job3 (BEGIN)
; SOURCE LINE # 38
0000 ?C0008:
; SOURCE LINE # 39
; SOURCE LINE # 40
C51 COMPILER V7.06 RTX 02/28/2006 10:30:37 PAGE 3
0000 B292 CPL P1_2
; SOURCE LINE # 41
0002 E4 CLR A
0003 FB MOV R3,A
0004 FA MOV R2,A
0005 7D19 MOV R5,#019H
0007 7F02 MOV R7,#02H
0009 120000 E LCALL _os_wait
; SOURCE LINE # 42
000C 80F2 SJMP ?C0008
; FUNCTION job3 (END)
; FUNCTION job4 (BEGIN)
; SOURCE LINE # 44
0000 ?C0011:
; SOURCE LINE # 45
; SOURCE LINE # 46
0000 B293 CPL P1_3
; SOURCE LINE # 47
0002 E4 CLR A
0003 FB MOV R3,A
0004 FA MOV R2,A
0005 7D64 MOV R5,#064H
0007 7F02 MOV R7,#02H
0009 120000 E LCALL _os_wait
; SOURCE LINE # 48
000C 80F2 SJMP ?C0011
; FUNCTION job4 (END)
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 81 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -