📄 time3.lst
字号:
C51 COMPILER V8.02 TIME3 10/11/2009 19:29:44 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE TIME3
OBJECT MODULE PLACED IN time3.OBJ
COMPILER INVOKED BY: E:\安装文件夹\keil\C51\BIN\C51.EXE time3.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <c8051f020.h>
2
3 #define uint8 unsigned char
4 #define uint16 unsigned int
5
6 //#define time 2000 //时间=(time/1000)s
7
8 uint16 flag;
9 uint16 time=100;
10
11 void SYSCLK_Init(void)
12 {
13 1 uint8 i;
14 1 OSCXCN = 0X67;//开始外部22.1184M晶振
15 1 for(i = 0;i < 128;i++); //等待外部起振
16 1 while(!(OSCXCN & 0X80)); //查询标志位
17 1 OSCICN = 0X88;//用外部晶振,并使能时钟丢
18 1 }
19
20
21 void Init_Timer3(void)
22 {
23 1 TMR3CN=0X00;
24 1 TMR3RLL=0X0cd;
25 1 TMR3RLH=0X0f8;
26 1 //TMR3L=0X0ff;
27 1 //TMR3H=0X0ff;
28 1 TMR3CN|=0X04;
29 1 EIE2|=0X01;
30 1 }
31
32
33 void Init_PORT(void)
34 {
35 1 XBR2=0X40;
36 1 //P0MDOUT=0XFF;
37 1 //P74OUT=0X04;
38 1 P74OUT=0Xff;
39 1 P5=0X00;
40 1 //P0=0xff;
41 1 }
42
43
44 void Timer3_ISR(void) interrupt 14
45 {
46 1 TMR3CN&=0X7F;
47 1 flag++;
48 1 if(flag==time)
49 1 {
50 2 P5=~P5;
51 2 time=time+100;
52 2 if(time>=65000)
53 2 time=100;
54 2 flag=0;
55 2 }
C51 COMPILER V8.02 TIME3 10/11/2009 19:29:44 PAGE 2
56 1 }
57
58
59 void main(void)
60 {
61 1 WDTCN = 0xde;
62 1 WDTCN = 0xad;//关闭看门狗
63 1 SYSCLK_Init();
64 1 Init_PORT();
65 1 Init_Timer3();
66 1 EA=1;
67 1 while(1)
68 1 {
69 2
70 2 }
71 1
72 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 182 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 4 ----
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 + -