📄 ppm.lst
字号:
C51 COMPILER V8.02 PPM 08/01/2008 20:13:53 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE PPM
OBJECT MODULE PLACED IN .\ppm.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ..\频率发生器\ppm.c BROWSE DEBUG OBJECTEXTEND PRINT(.\ppm.lst) OBJECT(.\ppm
-.obj)
line level source
1 #include<reg52.h>
2 #define uint unsigned int
3 #define uchar unsigned char
4 sbit p32=P3^2;
5 sbit p33=P3^3;
6 sbit ppmout=P1^1;
7 uint d;
8 void delay_50us(uint t)
9 { uchar i;
10 1 for(;t>0;t--)
11 1 for(i=19;i>0;i--);
12 1 }
13
14
15 void time0(void) interrupt 1 using 1
16 { if(d==0)
17 1 { TH0=0Xff;
18 2 TL0=0Xf5;
19 2 }
20 1
21 1 if(d==1)
22 1 {
23 2 TH0=0Xff;
24 2 TL0=0Xf0;
25 2 }
26 1
27 1 if(d==2)
28 1 {
29 2 TH0=0Xff;
30 2 TL0=0Xe0;
31 2 }
32 1 if(d==3)
33 1 {
34 2 TH0=0Xff;
35 2 TL0=0Xd0;
36 2 }
37 1 ppmout=~ppmout;
38 1 }
39
40 void int0(void) interrupt 0
41 {
42 1
43 1 EA=0;
44 1 d++;
45 1 TMOD=0x01;
46 1 while(!p32);
47 1 EA=1;
48 1 }
49
50
51 void int1(void) interrupt 2
52 {
53 1 EA=0;
54 1 TMOD=0x01;
C51 COMPILER V8.02 PPM 08/01/2008 20:13:53 PAGE 2
55 1 if(d>0)
56 1 d--;
57 1 while(!p33);
58 1 EA=1;
59 1 }
60
61 void main(void)
62 { d=0;
63 1
64 1 IT1=1;
65 1 EX1=1;
66 1 IT0=1;
67 1 EX0=1;
68 1 TMOD=0x01;
69 1 TH0=0Xff;
70 1 TL0=0Xf5;
71 1 ET0=1;
72 1 TR0=1;
73 1 EA=1;
74 1
75 1 while(1)
76 1 {
77 2 delay_50us(4);
78 2 }
79 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 180 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 2 ----
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 + -