📄 adc8009˪
字号:
C51 COMPILER V6.12 ___鱛缁_ 07/06/2009 11:10:37 PAGE 1
C51 COMPILER V6.12, COMPILATION OF MODULE ___鱛缁_
OBJECT MODULE PLACED IN .\直流电机.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE .\直流电机.c DEBUG OBJECTEXTEND
stmt level source
1 #include<reg51.h>
2 #define uchar unsigned char
3 #define uint unsigned int
4
5 sbit key2=P3^2;
6 sbit key1=P3^1;
7 sbit CLOCK=P2^4;
8 sbit ST=P2^5;
9 sbit EOC=P2^6;
10 sbit OE=P2^7;
11 sbit PWM=P3^7;
12 uint temp;
13 uchar start;
14
15 void keyscan();
16 void delay(uint zz);
17 void main()
18 {
19 1 P3=0;P0=0xff;
20 1 TMOD=0x02;
21 1 TH0=0x01;
22 1 TL0=0X00;
23 1 IE=0x82;
24 1 TR0=1;
25 1 start=0;
26 1 while(1)
27 1 {
28 2
29 2 keyscan();
30 2 while(start)
31 2 {
32 3
33 3 ST=0;ST=1;ST=0; //启动ADC0809
34 3 while(!EOC); //查询EOC是否为1;
35 3 OE=1;
36 3 temp=P1; //读取A/D转化的结果
37 3 OE=0;
38 3 PWM=1; //PWM输出高电平
39 3 keyscan();
40 3 delay(temp); //正脉冲宽度
41 3 PWM=0; //PWM输出低电平
42 3 keyscan();
43 3 delay(255-temp); //低脉冲宽度
44 3
45 3 }
46 2 }
47 1 }
48
49 void keyscan()
50 {
51 1
52 1 key2=1;
53 1 key1=1;
54 1
55 1 if(!key1)
C51 COMPILER V6.12 ___鱛缁_ 07/06/2009 11:10:37 PAGE 2
56 1 {
57 2 delay(5);
58 2 if(!key1)
59 2 {
60 3 start=1;
61 3 }
62 2 while(!key1);
63 2 delay(5);
64 2 while(!key1);
65 2 }
66 1
67 1 key2=1;
68 1 key1=1;
69 1 if(!key2)
70 1 {
71 2 delay(5);
72 2 if(!key2)
73 2 {
74 3
75 3 if(!PWM)PWM=1;
76 3 else PWM=0;
77 3 if(start)PWM=0;
78 3 start=0;
79 3 }
80 2 while(!key2);
81 2 delay(5);
82 2 while(!key2);
83 2 }
84 1 }
85
86 void clockwave() interrupt 1
87 {
88 1 CLOCK=!CLOCK;
89 1 TH0=0x01;
90 1 TL0=0X00;
91 1 }
92
93
94 void delay(uint zz)
95 {
96 1 uint x,y;
97 1 for(x=zz;x>0;x--)
98 1 for(y=50;y>0;y--);
99 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 189 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 3 ----
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 + -