📄 main.lst
字号:
C166 COMPILER V6.08, MAIN 08/13/2008 13:00:04 PAGE 1
C166 COMPILER V6.08, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN MAIN.OBJ
COMPILER INVOKED BY: C:\Keil\C166\BIN\C166.EXE MAIN.C MODV2 BROWSE MODV2 DEBUG
stmt lvl source
1 //****************************************************************************
2 // @Module Project Settings
3 // @Filename MAIN.C
4 // @Project PORT.dav
5 //----------------------------------------------------------------------------
6 // @Controller Infineon XC164CS-16F20
7 //
8 // @Compiler Keil
9 //
10 // @Codegenerator 2.7
11 //
12 // @Description This file contains the project initialization function.
13 //
14 //----------------------------------------------------------------------------
15 // @Date 2006-07-27 9:36:39
16 //
17 //****************************************************************************
18
19 // USER CODE BEGIN (MAIN_General,1)
20 /********************************************************************\
21 ** 程序功能: 实现端口P1L外接的8个LED循环采用三种不同的方式移动点亮 **
22 ** 版 本: v1.0 **
23 ** 作 者: lezm 北京乾勤科技 **
24 ** 日 期: 2007年7月27日 **
25 \********************************************************************/
26 // USER CODE END
27
28
29
30 //****************************************************************************
31 // @Project Includes
32 //****************************************************************************
33
34 #include "MAIN.H"
35
36 // USER CODE BEGIN (MAIN_General,2)
37
38 // USER CODE END
39
40
41 //****************************************************************************
42 // @Macros
43 //****************************************************************************
44
45 // USER CODE BEGIN (MAIN_General,3)
46
47 // USER CODE END
48
49
50 //****************************************************************************
51 // @Defines
52 //****************************************************************************
53
54 // USER CODE BEGIN (MAIN_General,4)
55 #define FLASH_LED P1L //连接LED端口定义
C166 COMPILER V6.08, MAIN 08/13/2008 13:00:04 PAGE 2
56
57 // USER CODE END
58
59
60 //****************************************************************************
61 // @Typedefs
62 //****************************************************************************
63
64 // USER CODE BEGIN (MAIN_General,5)
65
66 // USER CODE END
67
68
69 //****************************************************************************
70 // @Imported Global Variables
71 //****************************************************************************
72
73 // USER CODE BEGIN (MAIN_General,6)
74 ubyte FlashLed[]={0x18,0x24,0x42,0x81,0x00}; //控制从LED中间向两边移的数组
75
76 // USER CODE END
77
78
79 //****************************************************************************
80 // @Global Variables
81 //****************************************************************************
82
83 // USER CODE BEGIN (MAIN_General,7)
84
85 // USER CODE END
86
87
88 //****************************************************************************
89 // @External Prototypes
90 //****************************************************************************
91
92 // USER CODE BEGIN (MAIN_General,8)
93
94 // USER CODE END
95
96
97 //****************************************************************************
98 // @Prototypes Of Local Functions
99 //****************************************************************************
100
101 // USER CODE BEGIN (MAIN_General,9)
102 //*********** 延时函数 ********
103 void delay(uword x)
104 {
105 1 uword i;
106 1 while(x--)
107 1 for(i=0;i<60000;i++)
108 1 continue;
109 1 }
110
111 //********* LED点亮后单个右移 *********
112 void RightMovLed(void)
113 {
114 1 uword temp;
115 1 temp=0x40;
116 1 while(temp)
117 1 {
C166 COMPILER V6.08, MAIN 08/13/2008 13:00:04 PAGE 3
118 2 temp=temp>>1&0x7f;
119 2 FLASH_LED=temp;
120 2 delay(30);
121 2 }
122 1 }
123
124 //********* LED点亮后单个左移 *********
125 void LeftMovLed(void)
126 {
127 1 uword temp;
128 1 temp=0x01;
129 1 while(temp)
130 1 {
131 2 temp=temp<<1&0xfe;
132 2 FLASH_LED=temp;
133 2 delay(30);
134 2 }
135 1 }
136
137 //********* 实现两个LED从中间跑两边 *********
138 void LedFlash(void)
139 {
140 1 ubyte i=0;
141 1 while(FlashLed[i])
142 1 {
143 2 FLASH_LED=FlashLed[i];
144 2 i++;
145 2 delay(30);
146 2 }
147 1 }
148
149 //********* 交叉闪烁 *********
150 void crossFlash(void)
151 {
152 1 ubyte i,temp;
153 1 temp=0x55;
154 1 for(i=0;i<10;i++)
155 1 {
156 2 FLASH_LED=temp;
157 2 temp=~temp;
158 2 delay(30);
159 2 }
160 1 }
161
162 // USER CODE END
163
164
165 //****************************************************************************
166 // @Function void MAIN_vInit(void)
167 //
168 //----------------------------------------------------------------------------
169 // @Description This function initializes the microcontroller.
170 //
171 //----------------------------------------------------------------------------
172 // @Returnvalue None
173 //
174 //----------------------------------------------------------------------------
175 // @Parameters None
176 //
177 //----------------------------------------------------------------------------
178 // @Date 2006-07-27
179 //
C166 COMPILER V6.08, MAIN 08/13/2008 13:00:04 PAGE 4
180 //****************************************************************************
181
182 // USER CODE BEGIN (Init,1)
183
184 // USER CODE END
185
186 void MAIN_vInit(void)
187 {
188 1 // USER CODE BEGIN (Init,2)
189 1
190 1 // USER CODE END
191 1
192 1 /// -----------------------------------------------------------------------
193 1 /// Configuration of the System Clock:
194 1 /// -----------------------------------------------------------------------
195 1 /// - VCO clock used, input clock is connected
196 1 /// - input frequency is 8 MHz
197 1 /// - VCO output frequency 100 .. 150 MHz
198 1 /// - system clock is 20 MHz
199 1
200 1 MAIN_vUnlockProtecReg(); // unlock write security
201 1 PLLCON = 0x7814; // load PLL control register
202 1
203 1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -