📄 text1.lst
字号:
C51 COMPILER V7.20 TEXT1 09/02/2007 23:08:36 PAGE 1
C51 COMPILER V7.20, COMPILATION OF MODULE TEXT1
OBJECT MODULE PLACED IN Text1.OBJ
COMPILER INVOKED BY: E:\Program Files\C51\BIN\C51.EXE Text1.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <reg52.h> //器件配置文件
2
3 #define uchar unsigned char //变量类型的宏定义
4 #define uint unsigned int
5 uchar code DATA_7SEG[10]={0xC0,0xF9,0xA4,0xB0,0x99,
6 0x92,0x82,0xF8,0x80,0x90,};/*0-9数码管段码*/
7 uchar DATA[20]; /* 存放电话号码的数组*/
8 uchar X[3]; /*存放时间t1数组*/
9 uchar Y[3]; /*存放时间t2数组*/
10 uchar flag; /*RAM区防干扰标志*/
11 uchar data_flag=0; /*输入电话号码计数器(最长二十位)*/
12 uchar set=0; /*功能键值*/
13 uchar m=0; //全局变量
14 uchar n=0;
15 uint f;
16 uchar t1_flag=0; /*输入时间1计数器(最长三位)*/
17 uchar t2_flag=0; /*输入时间2计数器(最长三位)*/
18 uchar cnt_1=0; /*时间t1单元数学运算后暂存单元*/
19 uchar cnt_2=0; /*时间t2单元数学运算后暂存单元*/
20 /*****************************************************/
21 void delay(uint k); /*延时子函数声明*/
22 void stop(); /*关机子函数声明*/
23 void bh(); /*拨号子函数声明*/
24 /***************************************************/
25 /*定时器T0初始化*/
26 void init_timer()
27 {
28 1 TMOD=0x01;
29 1 TH0=-(50000/256);
30 1 TL0=-(50000%256);
31 1 IE=0x82;
32 1 }
33 /***************************************************/
34 /*100mS定时中断服务子函数*/
35 void zd0()interrupt 1
36 {
37 1 P3_0=P3_0;
*** ERROR C202 IN LINE 37 OF TEXT1.C: 'P3_0': undefined identifier
38 1 P3_0=!P3_0; //P3.0每100ms取反一次,送出脉冲
*** ERROR C202 IN LINE 38 OF TEXT1.C: 'P3_0': undefined identifier
39 1 P1_7=!P1_7; //数码管小数点同步闪烁
*** ERROR C202 IN LINE 39 OF TEXT1.C: 'P1_7': undefined identifier
40 1 n++;
41 1 TH0=-(50000/256);
42 1 TL0=-(50000%256);
43 1 }
44 /***************************************************/
45 /*INT0中断服务子函数*/
46 void zd_int0()interrupt 0
47 {
48 1 delay(10);
49 1 if(P3_2==0)set++; //功能键值递增
*** ERROR C202 IN LINE 49 OF TEXT1.C: 'P3_2': undefined identifier
50 1 if(set>=5)set=0; //键值的范围0~4
51 1 if(set==1)flag=0x55; //向RAM区的标志flag写入55H
C51 COMPILER V7.20 TEXT1 09/02/2007 23:08:36 PAGE 2
52 1 PCON=0x00;f=8;
53 1 again:if(P3_2==0)goto again; //若按键未释放,则等待
*** ERROR C202 IN LINE 53 OF TEXT1.C: 'P3_2': undefined identifier
54 1 }
55 /******************************************************/
56 /*INT1中断服务子函数*/
57 void zd_int1()interrupt 2
58 {uchar h;
59 1 f=0;
60 1 for(h=0;h<10;h++) /*检查磁性开关(P3_3状态)10次,共1秒*/
61 1 {
62 2 delay(100);
63 2 if(P3_3==0)f++;
*** ERROR C202 IN LINE 63 OF TEXT1.C: 'P3_3': undefined identifier
64 2 }
65 1 }
66 /********************************************************/
67 /*---关机---*/
68 void stop()
69 {if(flag==0x55)P1=0xfb;
70 1 else P1=0x86; //数码管右下角显示"1"。
71 1 delay(1);
72 1 if(flag==0x55)PCON=0x01; /*进入节电待机状态*/
73 1 delay(1);
74 1 }
75 /********************************************************/
76 /*延时1ms*K子函数*/
77 void delay(uint k)
78 {
79 1 uint i,j;
80 1 for(i=0;i<k;i++){
81 2 for(j=0;j<60;j++)
82 2 {;}}
83 1 }
84 /********************************************************/
85 /*----输入时间t1----*/
86 void in_time1()
87 {
88 1 P1=0xf7;delay(1); /*数码管显示"一"*/
89 1 if(P3_5==0)
*** ERROR C202 IN LINE 89 OF TEXT1.C: 'P3_5': undefined identifier
90 1 {
91 2 delay(10); /*按下OK键确认并点亮小数点*/
92 2 if(P3_5==0){P1=0x7f;m=0;t1_flag=0;delay(500);}
*** ERROR C202 IN LINE 92 OF TEXT1.C: 'P3_5': undefined identifier
93 2 while(t1_flag<3)
94 2 {
95 3 if(P3_4==0)
*** ERROR C202 IN LINE 95 OF TEXT1.C: 'P3_4': undefined identifier
96 3 {delay(10);if(P3_4==0) /*按下UP键数码管作0-9递增显示*/
*** ERROR C202 IN LINE 96 OF TEXT1.C: 'P3_4': undefined identifier
97 4 {m++;if(m==10)m=0;P1=DATA_7SEG[m];delay(300);}
98 4 }
99 3 P1=DATA_7SEG[m];delay(1); /*若不按下UP键数码管也作0-9显示*/
100 3 if(P3_5==0)
*** ERROR C202 IN LINE 100 OF TEXT1.C: 'P3_5': undefined identifier
101 3 {delay(10);if(P3_5==0) /*按下OK键显示的数据存入数组X中*/
*** ERROR C202 IN LINE 101 OF TEXT1.C: 'P3_5': undefined identifier
102 4 {X[t1_flag]=m;t1_flag++;P1=0x7f;delay(500);}
103 4
104 4 }
105 3 }
C51 COMPILER V7.20 TEXT1 09/02/2007 23:08:36 PAGE 3
106 2 }
107 1 if(t1_flag>=3)t1_flag=0; /*时间1计数器>=3时归零*/
108 1 }
109 /***********************************************************************/
110 /*----输入时间t2----*/
111 void in_time2()
112 {
113 1 P1=0xb7;delay(1); /*数码管显示"二"*/
114 1 if(P3_5==0)
*** ERROR C202 IN LINE 114 OF TEXT1.C: 'P3_5': undefined identifier
115 1 {
116 2 delay(10); /*按下OK键确认并点亮小数点*/
117 2 if(P3_5==0){P1=0x7f;m=0;t2_flag=0;delay(500);}
*** ERROR C202 IN LINE 117 OF TEXT1.C: 'P3_5': undefined identifier
118 2 while(t2_flag<3)
119 2 {
120 3 if(P3_4==0)
*** ERROR C202 IN LINE 120 OF TEXT1.C: 'P3_4': undefined identifier
121 3 {delay(10);if(P3_4==0) /*按下UP键数码管作0-9递增显示*/
*** ERROR C202 IN LINE 121 OF TEXT1.C: 'P3_4': undefined identifier
122 4 {m++;if(m==10)m=0;P1=DATA_7SEG[m];delay(300);}
123 4 }
124 3 P1=DATA_7SEG[m];delay(1); /*若不按下UP键数码管也作0-9显示*/
125 3 if(P3_5==0)
*** ERROR C202 IN LINE 125 OF TEXT1.C: 'P3_5': undefined identifier
126 3 {delay(10);if(P3_5==0) /*按下OK键显示的数据存入数组Y中*/
*** ERROR C202 IN LINE 126 OF TEXT1.C: 'P3_5': undefined identifier
127 4 {Y[t2_flag]=m;t2_flag++;P1=0x7f;delay(500);}
128 4
129 4 }
130 3 }
131 2 }
132 1 if(t2_flag>=3)t2_flag=0; /*时间2计数器>=3时归零*/
133 1 }
134 /***********************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -