📄 ucos_ii.lst
字号:
C51 COMPILER V8.08 UCOS_II 04/13/2009 13:31:23 PAGE 1
C51 COMPILER V8.08, COMPILATION OF MODULE UCOS_II
OBJECT MODULE PLACED IN ucOS_II.OBJ
COMPILER INVOKED BY: D:\Keil\C51\BIN\C51.EXE ucOS_II.c BROWSE DEBUG OBJECTEXTEND
line level source
1 //******************************************************************
2 #define OS_GLOBALS
3
4 #include <includes.h>
5
6 OS_STK Vacation[0x20] _at_ 0x60;
7
8
9 //******************************************************************
10 //* mytest system TI0mer initial
11 #define TIME_10mS (OS_TICKS_PER_SEC /100)
12 #define TIME_50mS (OS_TICKS_PER_SEC /20 )
13 #define TIME_100mS (OS_TICKS_PER_SEC /10 )
14 #define TIME_200mS (OS_TICKS_PER_SEC /5 )
15 #define TIME_500mS (OS_TICKS_PER_SEC /2 )
16 #define TIME_1S (OS_TICKS_PER_SEC)
17 #define TIME_2S (OS_TICKS_PER_SEC * 2)
18 #define TIME_3S (OS_TICKS_PER_SEC * 3)
19 #define TIME_4S (OS_TICKS_PER_SEC * 4)
20 #define TIME_5S (OS_TICKS_PER_SEC * 5)
21
22 //******************************************************************
23 //* mytest system crystalloid
24 #define XA_CRYSTAL_FREQ (INT32U)(22118400L)
25
26 //******************************************************************
27 //* SCR crystalloid
28 #define CFG_SCR_4 SCR&0x03
29 #define CFG_SCR_16 SCR&0x07
30 #define CFG_SCR_64 SCR&0x0B
31
32 #define OS_CFG_SCR CFG_SCR_4
33
34 //******************************************************************
35 //* mytest system
36 #define TASK_STK_SIZE 128 //* 128 word
37 #define NUMBER_TASKS 2
38
39 //******************************************************************
40 //* mytest task stack define
41 OS_STK xdata AnPrintfStk[TASK_STK_SIZE];
42 OS_STK xdata BnPrintfStk[TASK_STK_SIZE];
43 //OS_STK Vacation[0x30] _at_ 0x50;
44
45 //******************************************************************
46 //* OS_EVENT
47 OS_EVENT xdata * AnPrintfWait;
48 OS_EVENT xdata * BnPrintfWait;
49
50
51
52 //******************************************************************
53
54 INT8U xdata OSCtxSwCtrMax;
55 INT8U xdata AnPrintfData[] = {0xC4,0xE3,0xBA,0xC3,0xA3,0xAC,0xCE,0xD2,
C51 COMPILER V8.08 UCOS_II 04/13/2009 13:31:23 PAGE 2
56 0xCA,0xC7,0xC8,0xCE,0xCE,0xF1,0x41,0x6E,
57 0x5C,0x6E};
58 INT8U xdata BnPrintfData[] = {0xC4,0xE3,0xBA,0xC3,0xA3,0xAC,0xCE,0xD2,
59 0xCA,0xC7,0xC8,0xCE,0xCE,0xF1,0x42,0x6E,
60 0x5C,0x6E};
61
62 //-------------------------------------------------------------------
63 void TimeTickInitial(void);
64 void AnPrintf(void *dataptr); //* Startup Task
65 void BnPrintf(void *dataptr); //* 8 IdenTI0cal Tasks
66 void Serial_initialize(void);
67 //staTI0c void XAInit (void);
68 //staTI0c void TI0merInit (INT8U tmr, INT16U freq, INT8U prio);
69 //staTI0c void SeryComm0Init (INT16U baud);
70 //******************************************************************
71
72 //******************************************************************
73 void main (void)
74 {
75 1 //XAInit(); //* XA ConfiguraTI0on
76 1
77 1 WDTCN = 0xDE;
78 1
79 1 WDTCN = 0xAD;
80 1
81 1 OSInit(); //* Initialize uC/OS-II, The Real-TI0me Kernel
82 1
83 1 BnPrintfWait = OSSemCreate(0);
84 1
85 1 OSTaskCreateExt(AnPrintf,(void *)0,&AnPrintfStk[TASK_STK_SIZE-1],0x01,0x00,&AnPrintfStk[0],TASK_STK_SI
-ZE,(void*)0,0);
86 1
87 1 OSTaskCreateExt(BnPrintf,(void *)0,&BnPrintfStk[TASK_STK_SIZE-1], 0x02,0x00,&BnPrintfStk[0],TASK_STK_S
-IZE,(void*)0,0);
88 1
89 1 TimeTickConfig();
90 1 Serial_initialize();
91 1 OSStart();
92 1 while(1)
93 1 ;
94 1 }
95
96 void AnPrintf(void *dataptr)
97 {
98 1
99 1 INT8U i;
100 1 INT8U err;
101 1 dataptr = dataptr;
102 1 while(1)
103 1 {
104 2
105 2 for(i=0;i<18;)
106 2 {
107 3 if(TI0)
108 3 {
109 4 TI0= 0;
110 4 SBUF0 = AnPrintfData[i];
111 4 i++;
112 4 }
113 3
114 3 }
115 2 OSSemPend(BnPrintfWait,10,&err);
C51 COMPILER V8.08 UCOS_II 04/13/2009 13:31:23 PAGE 3
116 2
117 2 }
118 1
119 1 }
120
121 //******************************************************************
122 void BnPrintf(void *dataptr)
123 {
124 1
125 1 INT8U i;
126 1 dataptr = dataptr;
127 1 EA =1;
128 1 while(1)
129 1 {
130 2
131 2 TI0 = 1;
132 2 for(i=0;i<18;)
133 2 { if(TI0)
134 3 {
135 4 TI0 = 0;
136 4 SBUF0 = BnPrintfData[i];
137 4 i++;
138 4 }
139 3
140 3 }
141 2
142 2 OSSemPost(BnPrintfWait);
143 2
144 2 }
145 1
146 1 }
147 void Serial_initialize()
148 {
149 1 SCON0 = 0x50; //* SCON: mode 1, 8-bit UART, enable rcvr */
150 1 TMOD |= 0x20; //* TMOD: TI0mer 1, mode 2, 8-bit reload */
151 1 TH1 = 0xfd; //* TH1: reload value for 1200 baud @ 16MHz */
152 1 TR1 = 1; //* TR1: TI0mer 1 run */
153 1 TI0 = 1; //* TI0: set TI0 to send first char of UART */
154 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 367 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = 325 ----
PDATA SIZE = ---- ----
DATA SIZE = 56 1
IDATA SIZE = 13 ----
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 + -