?? test.lst
字號:
C51 COMPILER V7.10 TEST 05/09/2005 14:14:46 PAGE 1
C51 COMPILER V7.10, COMPILATION OF MODULE TEST
OBJECT MODULE PLACED IN test.OBJ
COMPILER INVOKED BY: D:\Keil\C51\BIN\C51.EXE test.C BROWSE
line level source
1 /*********************************************************************************************************
2 ** Small RTOS(51)
3 ** The Real-Time Kernel(For Keil c51)
4 **
5 ** (c) Copyright 2002-2003, chenmingji
6 ** All Rights Reserved
7 **
8 ** V1.20.0
9 **
10 **
11 **--------------文件信息--------------------------------------------------------------------------------
12 **文 件 名: ext1.c
13 **創 建 人: 陳明計
14 **最后修改日期: 2003年8月3日
15 **描 述: ext1源代碼。
16 **
17 **--------------歷史版本信息----------------------------------------------------------------------------
18 ** 創建人: 陳明計
19 ** 版 本: V0.50
20 ** 日 期: 2002年2月22日
21 ** 描 述: 原始版本
22 **
23 **------------------------------------------------------------------------------------------------------
24 ** 修改人: 陳明計
25 ** 版 本: V1.11.0
26 ** 日 期: 2003年12月2日
27 ** 描 述: 刪除TaskD代碼
28 **
29 **------------------------------------------------------------------------------------------------------
30 ** 修改人: 陳明計
31 ** 版 本: V1.12.0
32 ** 日 期: 2003年12月2日
33 ** 描 述: 無變化
34 **
35 **------------------------------------------------------------------------------------------------------
36 ** 修改人: 陳明計
37 ** 版 本: V1.20.0
38 ** 日 期: 2003年8月3日
39 ** 描 述: 根據新版本要求修改
40 **
41 **--------------當前版本修訂------------------------------------------------------------------------------
42 ** 修改人:
43 ** 日 期:
44 ** 描 述:
45 **
46 **------------------------------------------------------------------------------------------------------
47 ********************************************************************************************************/
48
49
50 #include "config.h"
51 #include "stdlib.h"
52
53 void AnPrintf(void);
54 void BnPrintf(void);
55 uint8 keyscan(void);
C51 COMPILER V7.10 TEST 05/09/2005 14:14:46 PAGE 2
56 void Delay(uint8 i);
57
58 uint8 BnPrintfWait;
59
60 //================設置操作系統時鐘======================================
61 void TimeTickConfig(void)
62 {
63 1 TMOD = (TMOD & 0XF0) | 0X01;
64 1 TH0 = 0x3c;
65 1 TL0 = 0xb0;
66 1 TR0 = 1;
67 1 ET0 = 1;
68 1
69 1 }
70 //---------------設置串口時鐘--------------------------------------------
71 void Serial_initialize()
72 {
73 1 SCON = 0x50; //* SCON: mode 1, 8-bit UART, enable rcvr */
74 1 TMOD |= 0x20; //* TMOD: timer 1, mode 2, 8-bit reload */
75 1 TH1 = 0xfd; //* TH1: reload value for 1200 baud @ 16MHz */
76 1 TR1 = 1; //* TR1: timer 1 run */
77 1 TI = 1; //* TI: set TI to send first char of UART */
78 1
79 1
80 1 }
81 //-----------------------------------------------------------------------
82 void main(void)
83 {
84 1
85 1 OSSemCreate(0 , 1);
86 1
87 1 OSInit();
88 1 TimeTickConfig();
89 1
90 1 Serial_initialize();
91 1 OSTaskCreate(AnPrintf, NULL, 0);
92 1 OSTaskCreate(BnPrintf, NULL, 1);
93 1
94 1 OSStart();
95 1 }
96 //-----------------------------------------------------------------------
97
98 void AnPrintf(void)
99 {
100 1
101 1 while(1)
102 1 {
103 2 keyscan();
104 2
105 2 OSSemPend(0,1000);
106 2
107 2 }
108 1
109 1 }
110
111 //******************************************************************
112 void BnPrintf(void)
113 {
114 1
115 1 while(1)
116 1 {
117 2
C51 COMPILER V7.10 TEST 05/09/2005 14:14:46 PAGE 3
118 2 P1 = rand();
119 2 Delay(3);
120 2
121 2 OSSemPost(0);
122 2 }
123 1
124 1 }
125
126 uint8 keyscan(void)
127 {
128 1 uint8 sccode,recode;
129 1 P2 = 0xF0;
130 1 if((P2 & 0xF0) != 0xF0)
131 1 {
132 2 Delay(3);
133 2 if((P2 & 0xF0) != 0xF0)
134 2 {
135 3 sccode = 0xFE;
136 3 while((sccode & 0x10) != 0)
137 3 {
138 4 P2 = sccode;
139 4 if((P2 & 0xF0) != 0xF0)
140 4 {
141 5 recode = (P2 & 0xF0) | 0x0F;
142 5 while((P2 & 0xF0) != 0xF0)Delay(1);
143 5 SBUF = ((~sccode) + (~recode));
144 5 return((~sccode) + (~recode));
145 5 }
146 4 else
147 4 sccode = (sccode << 1) | 0x01;
148 4 }
149 3 }
150 2 }
151 1 }
152
153 void Delay(uint8 i)
154 {
155 1 uint8 j,k;
156 1 for(i; i > 0; i--)
157 1 for(j = 0; j < 250; j++)
158 1 for(k = 0; k <250; k++);
159 1 }
160 /*********************************************************************************************************
161 ** End Of File
162 ********************************************************************************************************/
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 214 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 1 2
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 + -