📄 duoji.lst
字号:
C51 COMPILER V7.50 DUOJI 04/07/2007 22:30:50 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE DUOJI
OBJECT MODULE PLACED IN duoji.OBJ
COMPILER INVOKED BY: C:\Program Files\keil\C51\BIN\C51.EXE duoji.c BROWSE DEBUG OBJECTEXTEND
line level source
1 /************************************************************
2 douji.h
3 shaowei
4 2006/10/20
5 use:timer0,timer1,1k code ,61bytes data;
6
7 *************************************************************/
8
9
10
11 #include <REG51F.H>
12
13 unsigned int tbuf[8][2];
14 unsigned int plus[8];
15 static unsigned char inc,i;
16 void INIT_duoji()
17 {
18 1 TMOD=0x11;
19 1 IP=0x08;
20 1 IE|=0x0a;
21 1 EA=1;
22 1 i=0;
23 1 inc=0;
24 1 TR0=1;TR1=1;
25 1 }
26 void setit(unsigned char num,unsigned char degree)
27 { num=num%7;
28 1 degree=degree%180;
29 1 tbuf[num][0]=65535-(5.12*degree+912.6);
30 1 tbuf[num][1]=65535-(2000-5.12*degree-912.6);//2304
31 1 plus[num]=1000; //give plus for 2 seconds
32 1
33 1 }
34 void int1() interrupt 1
35 {
36 1 TF0=0;
37 1 i=i%8;
38 1 TH0=tbuf[i][inc]>>8;
39 1 TL0=tbuf[i][inc];
40 1 if(plus[i]){
41 2
42 2 if(!inc)
43 2 {P1=P1|(0x01<<i);}
44 2 else
45 2 {P1=P1&(0xff-(0x01<<i));plus[i]--;}
46 2
47 2 }
48 1
49 1 if(inc==1){i++;inc=0;}
50 1 else inc=1;
51 1
52 1
53 1 }
54 void int3() interrupt 3
55 {
C51 COMPILER V7.50 DUOJI 04/07/2007 22:30:50 PAGE 2
56 1
57 1 TF1=0;
58 1
59 1 TH1=0xb8;//47104>>8
60 1 TL1=0x00;
61 1 P1=0x00;
62 1 i=0;
63 1 inc=0;
64 1 TF0=1;
65 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 330 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 50 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 + -