📄 delay.lst
字号:
C51 COMPILER V8.02 DELAY 01/01/2000 10:44:03 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE DELAY
OBJECT MODULE PLACED IN .\Delay.obj
COMPILER INVOKED BY: C:\keil c51\kei c51\C51\BIN\C51.EXE ..\DELAY\Delay.c BROWSE DEBUG OBJECTEXTEND PRINT(.\Delay.lst) O
-BJECT(.\Delay.obj)
line level source
1 /*******************************************
2 * 文件名 : DELAY.C
3 * 功能 : 基本延时
4 * 占用资源: ----
5 * 程序员 : wyl(wyl-e@163.com)
6 * 日期 : 2007.07
7 * 包含文件: DELAY.H
8 * 说明 : 本模块仅定义了在12MHZ晶振频率下
9 的时间单位级上的延时,在晶振频率
10 为其它值时,应该采用通用延时程序,
11 以机器周期为计量单位,进行延时推算.
12 ********************************************/
13 #include<_REG52_.H>
*** WARNING C318 IN LINE 13 OF ..\DELAY\Delay.c: can't open file '_REG52_.H'
14 #include"DELAY.H"
*** WARNING C318 IN LINE 13 OF ..\DELAY\DELAY.H: can't open file '_REG52_.H'
*** ERROR C141 IN LINE 29 OF ..\DELAY\DELAY.H: syntax error near 'cnt', expected ')'
*** ERROR C141 IN LINE 30 OF ..\DELAY\DELAY.H: syntax error near 'cnt', expected ')'
*** ERROR C141 IN LINE 31 OF ..\DELAY\DELAY.H: syntax error near 'cnt', expected ')'
*** ERROR C141 IN LINE 32 OF ..\DELAY\DELAY.H: syntax error near 'cnt', expected ')'
15
16 #ifndef T_IS_KNOWABLE
/*******************************************
* 函数功能 : 基本延时程序 10T级延时
* 入口参数 : (uchar cnt)
* 返回值 : (void)
* 说明 : 执行机器周期 = 10*cnt+12
T~Delay(0) = 9.
********************************************/
void Delay_10T(uchar cnt)
{
if(cnt==0)return;
while(--cnt)
{
_nop_(); _nop_();
_nop_(); _nop_();
};
}
/*******************************************
* 函数功能 : 基本延时程序 10E3T级延时
* 入口参数 : (uchar cnt)
* 返回值 : (void)
* 说明 : 执行机器周期 = 1000*cnt+13
********************************************/
void Delay_E3T(uchar cnt)
{
while(cnt--)Delay_10T(99);
}
/*******************************************
* 函数功能 : 基本延时程序 10E5T级延时
* 入口参数 : (uchar cnt)
* 返回值 : (void)
* 说明 : 执行机器周期 = 100021*cnt+13
********************************************/
C51 COMPILER V8.02 DELAY 01/01/2000 10:44:03 PAGE 2
void Delay_100E3T(uchar cnt)
{
while(cnt--)Delay_E3T(100);
}
/*******************************************
* 函数功能 : 基本延时程序 10E6T级延时
* 入口参数 : (uchar cnt)
* 返回值 : (void)
* 说明 : 执行机器周期 = 1000231*cnt+13
********************************************/
void Delay_E6T(uchar cnt)
{
while(cnt--)Delay_100E3T(10);
}
#else
65 #if ((XTAL<=13)&&(XTAL>=11))
66
67
68
69 /*********************************************
70 *********12 MHZ晶振频率下的延时程序.**********
71 **********************************************/
72
73
74 /*******************************************
75 * 函数功能 : 基本延时程序 10Tus级延时
76 * 入口参数 : (uchar cnt)
77 * 返回值 : (void)
78 * 说明 : 执行机器周期 = 10*cnt+12
79 T~Delay(0) = 9.
80 ********************************************/
81 void Delay_10us(uchar cnt)
*** ERROR C141 IN LINE 81 OF ..\DELAY\DELAY.C: syntax error near 'cnt', expected ')'
82 {
83 1 if(cnt==0)return;
*** ERROR C202 IN LINE 83 OF ..\DELAY\DELAY.C: 'cnt': undefined identifier
84 1 while(--cnt)
*** ERROR C202 IN LINE 84 OF ..\DELAY\DELAY.C: 'cnt': undefined identifier
85 1 {
86 2 _nop_(); _nop_();
87 2 _nop_(); _nop_();
88 2 };
89 1 }
90 /*******************************************
91 * 函数功能 : 基本延时程序 ms级延时
92 * 入口参数 : (uchar cnt)
93 * 返回值 : (void)
94 * 说明 : 执行机器周期 = 1000*cnt+13
95 ********************************************/
96 void Delay_ms(uchar cnt)
97 {
98 1 while(cnt--)Delay_10us(99);
99 1 }
100 /*******************************************
101 * 函数功能 : 基本延时程序 100ms级延时
102 * 入口参数 : (uchar cnt)
103 * 返回值 : (void)
104 * 说明 : 执行机器周期 = 100021*cnt+13
105 ********************************************/
106 void Delay_100ms(uchar cnt)
107 {
C51 COMPILER V8.02 DELAY 01/01/2000 10:44:03 PAGE 3
108 1 while(cnt--)Delay_ms(100);
109 1 }
110 /*******************************************
111 * 函数功能 : 基本延时程序 s级延时
112 * 入口参数 : (uchar cnt)
113 * 返回值 : (void)
114 * 说明 : 执行机器周期 = 1000231*cnt+13
115 ********************************************/
116 void Delay_s(uchar cnt)
117 {
118 1 while(cnt--)Delay_100ms(10);
119 1 }
120
121 #endif
122 #endif
123 /*****************THE END*******************/
C51 COMPILATION COMPLETE. 2 WARNING(S), 7 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -