📄 caozuo.lst
字号:
C51 COMPILER V8.02 CAOZUO 04/25/2007 20:57:32 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE CAOZUO
OBJECT MODULE PLACED IN caozuo.OBJ
COMPILER INVOKED BY: D:\生成的应用程序\keil\keil 8.02\C51\BIN\C51.EXE caozuo.c ROM(COMPACT) BROWSE DEBUG OBJECTEXTEND LI
-STINCLUDE SYMBOLS
line level source
1 #include<rtx51tny.h>
1 =1 /*--------------------------------------------------------------------------
2 =1 RTX51TNY.H
3 =1
4 =1 Prototypes for RTX51 Tiny Real-Time Operating System Version 2.02
5 =1 Copyright (c) 1988-2002 Keil Elektronik GmbH and Keil Software, Inc.
6 =1 All rights reserved.
7 =1 --------------------------------------------------------------------------*/
8 =1
9 =1 #ifndef __RTX51TNY_H__
10 =1 #define __RTX51TNY_H__
11 =1
12 =1
13 =1 /* constants for os_wait function */
14 =1 #define K_SIG 0x01 /* Wait for Signal */
15 =1 #define K_TMO 0x02 /* Wait for Timeout */
16 =1 #define K_IVL 0x80 /* Wait for Interval */
17 =1
18 =1 /* function return values */
19 =1 #define NOT_OK 0xFF /* Parameter Error */
20 =1 #define TMO_EVENT 0x08 /* Timeout Event */
21 =1 #define SIG_EVENT 0x04 /* Signal Event */
22 =1 #define RDY_EVENT 0x80 /* Ready Event */
23 =1
24 =1 extern unsigned char os_create_task (unsigned char task_id);
25 =1 extern unsigned char os_delete_task (unsigned char task_id);
26 =1
27 =1 extern unsigned char os_wait (unsigned char typ,
28 =1 unsigned char ticks,
29 =1 unsigned int dummy);
30 =1 extern unsigned char os_wait1 (unsigned char typ);
31 =1 extern unsigned char os_wait2 (unsigned char typ,
32 =1 unsigned char ticks);
33 =1
34 =1 extern unsigned char os_send_signal (unsigned char task_id);
35 =1 extern unsigned char os_clear_signal (unsigned char task_id);
36 =1 extern unsigned char isr_send_signal (unsigned char task_id);
37 =1
38 =1 extern void os_set_ready (unsigned char task_id);
39 =1 extern void isr_set_ready (unsigned char task_id);
40 =1
41 =1 extern unsigned char os_running_task_id (void);
42 =1 extern unsigned char os_switch_task (void);
43 =1
44 =1 extern void os_reset_interval (unsigned char ticks);
45 =1
46 =1 #endif
2 #include<reg51.h>
1 =1 /*--------------------------------------------------------------------------
2 =1 REG51.H
3 =1
4 =1 Header file for generic 80C51 and 80C31 microcontroller.
5 =1 Copyright (c) 1988-2002 Keil Elektronik GmbH and Keil Software, Inc.
6 =1 All rights reserved.
C51 COMPILER V8.02 CAOZUO 04/25/2007 20:57:32 PAGE 2
7 =1 --------------------------------------------------------------------------*/
8 =1
9 =1 #ifndef __REG51_H__
10 =1 #define __REG51_H__
11 =1
12 =1 /* BYTE Register */
13 =1 sfr P0 = 0x80;
14 =1 sfr P1 = 0x90;
15 =1 sfr P2 = 0xA0;
16 =1 sfr P3 = 0xB0;
17 =1 sfr PSW = 0xD0;
18 =1 sfr ACC = 0xE0;
19 =1 sfr B = 0xF0;
20 =1 sfr SP = 0x81;
21 =1 sfr DPL = 0x82;
22 =1 sfr DPH = 0x83;
23 =1 sfr PCON = 0x87;
24 =1 sfr TCON = 0x88;
25 =1 sfr TMOD = 0x89;
26 =1 sfr TL0 = 0x8A;
27 =1 sfr TL1 = 0x8B;
28 =1 sfr TH0 = 0x8C;
29 =1 sfr TH1 = 0x8D;
30 =1 sfr IE = 0xA8;
31 =1 sfr IP = 0xB8;
32 =1 sfr SCON = 0x98;
33 =1 sfr SBUF = 0x99;
34 =1
35 =1
36 =1 /* BIT Register */
37 =1 /* PSW */
38 =1 sbit CY = 0xD7;
39 =1 sbit AC = 0xD6;
40 =1 sbit F0 = 0xD5;
41 =1 sbit RS1 = 0xD4;
42 =1 sbit RS0 = 0xD3;
43 =1 sbit OV = 0xD2;
44 =1 sbit P = 0xD0;
45 =1
46 =1 /* TCON */
47 =1 sbit TF1 = 0x8F;
48 =1 sbit TR1 = 0x8E;
49 =1 sbit TF0 = 0x8D;
50 =1 sbit TR0 = 0x8C;
51 =1 sbit IE1 = 0x8B;
52 =1 sbit IT1 = 0x8A;
53 =1 sbit IE0 = 0x89;
54 =1 sbit IT0 = 0x88;
55 =1
56 =1 /* IE */
57 =1 sbit EA = 0xAF;
58 =1 sbit ES = 0xAC;
59 =1 sbit ET1 = 0xAB;
60 =1 sbit EX1 = 0xAA;
61 =1 sbit ET0 = 0xA9;
62 =1 sbit EX0 = 0xA8;
63 =1
64 =1 /* IP */
65 =1 sbit PS = 0xBC;
66 =1 sbit PT1 = 0xBB;
67 =1 sbit PX1 = 0xBA;
68 =1 sbit PT0 = 0xB9;
C51 COMPILER V8.02 CAOZUO 04/25/2007 20:57:32 PAGE 3
69 =1 sbit PX0 = 0xB8;
70 =1
71 =1 /* P3 */
72 =1 sbit RD = 0xB7;
73 =1 sbit WR = 0xB6;
74 =1 sbit T1 = 0xB5;
75 =1 sbit T0 = 0xB4;
76 =1 sbit INT1 = 0xB3;
77 =1 sbit INT0 = 0xB2;
78 =1 sbit TXD = 0xB1;
79 =1 sbit RXD = 0xB0;
80 =1
81 =1 /* SCON */
82 =1 sbit SM0 = 0x9F;
83 =1 sbit SM1 = 0x9E;
84 =1 sbit SM2 = 0x9D;
85 =1 sbit REN = 0x9C;
86 =1 sbit TB8 = 0x9B;
87 =1 sbit RB8 = 0x9A;
88 =1 sbit TI = 0x99;
89 =1 sbit RI = 0x98;
90 =1
91 =1 #endif
3 #define uchar unsigned char
4 #define uint unsigned int
5 sbit light0=P0^0;
6 sbit light1=P0^1;
7 sbit light2=P0^2;
8 sbit switch0=P1^0;
9
10 int counter0;
11 int counter1;
12
13 void delay(uint k)
14 {uchar idata j;
15 1 unsigned int i;
16 1 for(i=0;i<k;i++)
17 1 for(j=0;j<255;j++);
18 1 }
19
20
21 void job0 (void)_task_ 0
22 { os_create_task(1);
23 1 os_create_task(2);
24 1 while(1)
25 1 { counter0++;
26 2 light0=0;
27 2 if(switch0==1)
28 2 os_send_signal(2);//如果按下,就向任务2发送信号
29 2 os_wait(K_TMO,100,0);//向内核发出让出处理器的信号,将任务挂起。(处理器这时处理其他
30 2 //任务了)参数1000是延时的tick数。到延时结束后任务就返回到处于
31 2 //就绪的状态并可被内核调度执行了。
32 2 light2=0;
33 2 }
34 1 }
35 void job1 (void) _task_ 1
36 { while(1)
37 1 { counter1++;
38 2 light0=1;
39 2 os_wait(K_TMO,100,0);
40 2 }
41 1 }
C51 COMPILER V8.02 CAOZUO 04/25/2007 20:57:32 PAGE 4
42 void job2 (void)_task_ 2
43 {os_create_task(1);
44 1 while(1)
45 1 { os_wait(K_SIG,0,0);//受到信号,该任务由挂起状态就绪的状态并可被内核调度执行。
46 2 counter0++;
47 2 light1=0;
48 2 delay(100);
49 2 light1=1;
50 2 delay(100);
51 2 }
52 1 }
53
54
C51 COMPILER V8.02 CAOZUO 04/25/2007 20:57:32 PAGE 5
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
P0 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0080H 1
P1 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0090H 1
_os_create_task. . . . . . . . . . . . EXTERN CODE PROC ----- -----
_os_send_signal. . . . . . . . . . . . EXTERN CODE PROC ----- -----
counter0 . . . . . . . . . . . . . . . PUBLIC DATA INT 0000H 2
counter1 . . . . . . . . . . . . . . . PUBLIC DATA INT 0002H 2
switch0. . . . . . . . . . . . . . . . ABSBIT ----- BIT 0090H 1
light0 . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0080H 1
light1 . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0081H 1
light2 . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0082H 1
_os_wait . . . . . . . . . . . . . . . EXTERN CODE PROC ----- -----
job0 . . . . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
job1 . . . . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
job2 . . . . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
_delay . . . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
k. . . . . . . . . . . . . . . . . . * REG * DATA U_INT 0006H 2
j. . . . . . . . . . . . . . . . . . AUTO IDATA U_CHAR 0000H 1
i. . . . . . . . . . . . . . . . . . * REG * DATA U_INT 0004H 2
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 131 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 4 ----
IDATA SIZE = ---- 1
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 + -