📄 shiyan.lst
字号:
C51 COMPILER V6.12 SHIYAN 05/31/2008 10:36:52 PAGE 1
C51 COMPILER V6.12, COMPILATION OF MODULE SHIYAN
OBJECT MODULE PLACED IN .\shiyan.OBJ
COMPILER INVOKED BY: D:\keil\C51\BIN\C51.EXE .\shiyan.c DEBUG OBJECTEXTEND
stmt level source
1 #include<AT89x51.H>
2 sbit P10=P1^0;
3 //接在电动机中的一个口
4 sbit P11=P1^1;
5 //接在电动机中的另一个口
6 sbit P32=P3^2;
7 //使电动机快速转动的按钮
8 sbit P33=P3^3;
9 //使电动机正转的按钮
10 sbit P34=P3^4;
11 //使电动机反转的按钮
12 sbit P35=P3^5;
13 //使电动机慢速转动的按钮
14 /*************延时函数******************/
15 void delay(unsigned char i)//延时1ms的子程序
16 {
17 1 unsigned char j;
18 1 for(;i>0;i--)
19 1 for(j=0;j<248;j++);
20 1 }
21 /*********主程序**************/
22 main()
23 {
24 1 while(1)
25 1 //主循环,使单片机一直检测各个端口
26 1 {
27 2 //如果没有一个键按下时,则电机停止不动
28 2 if(P32==1&P33==1&P34==1&P35==1)
29 2 //如果电机的两个端口电平一样时,电机不转
30 2 {P10=1;P11=1;}
31 2
32 2
33 2 //如果按下快速转动的键时,先软件消抖
34 2 if(P32==0)
35 2 {
36 3 delay(2);
37 3 if(P32==0)
38 3 {
39 4 while(P35==1) //建立在P35没有按下的基础上,如果按下P34口时
40 4 //,然后再建立在没有按下P33和P35时,使电机转动,
41 4 //否则跳出循环
42 4 {
43 5 if(P34==0)
44 5 {
45 6 delay(1);//按下P34口是,有个软件延时
46 6 //消除抖动
47 6 if(P34==0)
48 6 {
49 7 while(P33==1&P35==1)
50 7 {P10=1;P11=0;} //使电机向一个方向转动
51 7 }
52 6 }
53 5
54 5 if(P33==0)//按下P33口是,有个软件延时
55 5 { //消除抖动
C51 COMPILER V6.12 SHIYAN 05/31/2008 10:36:52 PAGE 2
56 6 delay(1);
57 6 if(P33==0)
58 6 {
59 7 while(P34==1&P35==1)
60 7 {P10=0;P11=1;} //使电机向另一个方向转动
61 7 }
62 6 }
63 5 }
64 4 }
65 3 }
66 2
67 2 //如果按下慢速转动的键时,先软件消抖
68 2 if(P35==0)
69 2 {
70 3 delay(2);
71 3 if(P35==0)
72 3 {
73 4 while(P32==1)
74 4 {
75 5
76 5 //建立在P32没有按下的基础上,如果按下P33口时
77 5 //,然后再建立在没有按下P34和P32时,使电机转动,
78 5 if(P33==0)
79 5 { //否则跳出循环
80 6 delay(1);
81 6 if(P33==0)
82 6 {
83 7 P10=0;
84 7 while(P34==1&P32==1)
85 7 {
86 8 P11=1;
87 8 P11=0;
88 8 }
89 7 }
90 6 }
91 5 if(P34==0)//按下P34口是,有个软件延时
92 5 delay(1); //消除抖动
93 5 if(P34==0)
94 5 { P11=0;
95 6 while(P33==1&P32==1)
96 6 {
97 7 P10=1;
98 7 P10=0;
99 7 }
100 6 }
101 5 }
102 4 }
103 3 }
104 2 }
105 1 }
106
107
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 263 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
C51 COMPILER V6.12 SHIYAN 05/31/2008 10:36:52 PAGE 3
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -