📄 led.lst
字号:
C51 COMPILER V8.02 LED 07/15/2008 16:56:06 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE LED
OBJECT MODULE PLACED IN LED.OBJ
COMPILER INVOKED BY: c:\KEIL\C51\BIN\C51.exe LED.c DB OE
line level source
1 //-----------------------------------------------------------------------------
2 // 版权归新华龙电子公司所有
3 //-----------------------------------------------------------------------------
4 //
5 // 文件名:LEDTEST.c
6 //
7 // 编写人:NTY
8 //
9 // 编写时间:2005/2/25
10 //
11 // 目标器件: C8051F02x
12 //
13 // 编译工具: Silicon Laboratories IDE
14 //程序说明:
15 // 此程序用于测试教学实验机上的8个发光二极管,正常情况下应轮流点亮.
16 //---------------------------------------------------------------------
17 // 头文件包含
18 //-------------------------------------------------------------------------
19 #include <c8051f020.h>
20
21 //-------------------------------------------------------------------------
22 // 16位特殊寄存器定义
23 //------------------------------------------------------------------------
24 sfr16 TMR3RL = 0x92;
25 sfr16 TMR3 = 0x94;
26 //---------------------------------------------------------------------------
27 // 常量定义
28 //----------------------------------------------------------------------
29 #define SYSCLK 2000000 //系统工作频率
30 //---------------------------------------------------------------------
31 //全局变量定义
32 //-----------------------------------------------------------------------------
33 unsigned char i=0xfe;
34 //---------------------------------------------------------------------------
35 // 函数定义
36 //---------------------------------------------------------------------------
37 void PORT_Init (void);
38 void Timer3_Init (int counts);
39 void Timer3_ISR (void);
40
41 //---------------------------------------------------------------------------
42 // 主程序
43 //----------------------------------------------------------------------------
44 void main (void) {
45 1
46 1 WDTCN = 0xde;
47 1 WDTCN = 0xad; //禁止看门狗定时器
48 1
49 1 PORT_Init ();
50 1 Timer3_Init(SYSCLK * 1024 );
51 1 REF0CN=0x02;
52 1 EA = 1;
53 1 while (1) {
54 2 }
55 1 }
C51 COMPILER V8.02 LED 07/15/2008 16:56:06 PAGE 2
56 //-------------------------------------------------------------------------
57 //函数名称: PORT_Init ()
58 //函数功能: 通用I/O口及交叉开关初始化
59 //入口参数: 无
60 //出口参数: 无
61 //全局变量引用: 无
62 //调用模块: 无
63 //----------------------------------------------------------------------
64 void PORT_Init (void)
65 {
66 1 XBR2 = 0x40; /*使能交叉开关*/
67 1 P74OUT |= 0x000; /*推挽输出*/
68 1 }
69 //--------------------------------------------------------------------
70 //函数名称: Timer3_Init ()
71 //函数功能: 定时器3初始化
72 //入口参数: int counts
73 //出口参数: 无
74 //全局变量引用: 无
75 //调用模块: 无
76 //----------------------------------------------------------------------
77 void Timer3_Init (int counts)
78 {
79 1 TMR3CN = 0x00;
80 1 TMR3RL = -counts;
81 1 TMR3 = 0xffff;
82 1 EIE2 |= 0x01;
83 1 TMR3CN |= 0x04;
84 1 }
85 //-------------------------------------------------------------------
86 //函数名称: Timer3_ISR ()
87 //函数功能: 定时器3中断服务程序
88 //入口参数: 无
89 //出口参数: 无
90 //全局变量引用: 无
91 //调用模块: 无
92 //-------------------------------------------------------------------
93 void Timer3_ISR (void) interrupt 14
94 {
95 1 TMR3CN &= ~(0x80); /*清中断标志*/
96 1 P4=i; /*送数据到P4*/
97 1 i<<=1;
98 1 i = i | 0x01;
99 1 if(i==0xff)
100 1 i=0xfe;
101 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 83 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 1 ----
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 + -