yaoeasy01.lst
来自「基于8051单片机的摇棒系统」· LST 代码 · 共 231 行
LST
231 行
C51 COMPILER V6.02 YAOEASY01 01/07/2006 15:41:57 PAGE 1
C51 COMPILER V6.02, COMPILATION OF MODULE YAOEASY01
OBJECT MODULE PLACED IN G:\MAJOR\DESIGN\摇棒\YAOEASY01.OBJ
COMPILER INVOKED BY: C:\comp51v6\C51.EXE G:\MAJOR\DESIGN\摇棒\YAOEASY01.C DB SB OE
stmt level source
1
2 /******************************/
3 // ---------------
4 // LED显示摇棒
5 // ---------------
6 /******************************/
7 #include <reg51.h>
8 #define SEG 17 //每幅图片分成17列来显示
9 #define INTERVAL 20 //每幅图片在左右摇摆20
10 //次后换下一幅
11
12 typedef unsigned char uchar;
13 typedef unsigned int uint;
14
15 code char zikup0[17][3]={
16 {0x00,0x00,0x00,},
17 {0x00,0x00,0x08,},
18 {0x00,0x04,0x08,},
19 {0xf8,0xf4,0xc8,},
20 {0x08,0x14,0xff,},
21 {0x08,0x14,0xc8,},
22 {0x08,0x54,0x08,},
23 {0x08,0x94,0x08,},
24 {0xff,0x1f,0x00,},
25 {0x08,0x94,0x08,},
26 {0x08,0x54,0x08,},
27 {0x08,0x14,0xc8,},
28 {0x08,0x14,0xff,},
29 {0xf8,0xf4,0xc8,},
30 {0x00,0x04,0x08,},
31 {0x00,0x00,0x08,},
32 {0x00,0x00,0x00,},
33 };
34
35 code char zikup2[17][3]={
36 {0x00,0x00,0x00},
37 {0x00,0x00,0x04},
38 {0x00,0x00,0x03},
39 {0x01,0x7f,0x00},
40 {0x01,0x00,0x7f},
41 {0x01,0x05,0x00},
42 {0x01,0x05,0x01},
43 {0x01,0x05,0x02},
44 {0x7f,0x3f,0x00},
45 {0x01,0x05,0x02},
46 {0x01,0x05,0x01},
47 {0x01,0x05,0x00},
48 {0x01,0x00,0x7f},
49 {0x01,0x7f,0x00},
50 {0x00,0x00,0x03},
51 {0x00,0x00,0x04},
52 {0x00,0x00,0x00},
53 };
54 uchar phase,th1,tl1,index,count;
55
C51 COMPILER V6.02 YAOEASY01 01/07/2006 15:41:57 PAGE 2
56
57 main()
58 {
59 1 EA=0;
60 1 EX1=1;
61 1 ET1=1;
62 1 PX0=1;
63 1 IT1=1;
64 1 TMOD=0x11;
65 1 index=0;
66 1 EA=1;
67 1 while(1)
68 1 {
69 2 }
70 1 }
71
72 void Int0_Handle(void) interrupt 2 using 2
73 {
74 1 uint t0_time;
75 1 TR0=0;
76 1 TR1=0;
77 1 TF1=0;
78 1 t0_time=TH0<<8|TL0;
79 1 TL0=0;
80 1 TH0=0;
81 1 TR0=1;
82 1 t0_time=65535-t0_time/SEG;
83 1 th1=t0_time/256;
84 1 TH1=th1;
85 1 tl1=t0_time % 256;
86 1 TL1=tl1;
87 1 if (count<3*INTERVAL){
88 2 count++;
89 2 }
90 1 else{
91 2 count=0;
92 2 }
93 1 index=count/INTERVAL;
94 1 if (th1!=0xff || tl1!=0xff){
95 2 phase=0;
96 2 TR1=1;
97 2 }
98 1 else{
99 2 TR1=0;
100 2 }
101 1 }
102
103 void Timer1(void) interrupt 3 using 3
104 {
105 1 uchar p2temp,p2temp2,p2temp3,i;
106 1 p2temp=zikup2[phase][index];
107 1 p2temp2=0;
108 1 for(i=8;i>0;i--)
109 1 {
110 2 p2temp3=p2temp&1;
111 2 p2temp=p2temp>>1;
112 2 p2temp3=p2temp3<<i-1;
113 2 p2temp2=p2temp2|p2temp3;
114 2 }
115 1 if (phase<SEG) //17段依次显示
116 1 {
117 2 P0=~zikup0[phase][index];
C51 COMPILER V6.02 YAOEASY01 01/07/2006 15:41:57 PAGE 3
118 2 P2=~p2temp2;
119 2 phase++;
120 2 TH1=th1;
121 2 TL1=tl1;
122 2 }
123 1 }
124
125
C51 COMPILER V6.02 YAOEASY01 01/07/2006 15:41:57 PAGE 4
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
P0 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0080H 1
P2 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00A0H 1
T0 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B4H 1
AC . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D6H 1
T1 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B5H 1
EA . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00AFH 1
Int0_Handle. . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
t0_time. . . . . . . . . . . . . . . * REG * DATA U_INT 0012H 2
th1. . . . . . . . . . . . . . . . . . PUBLIC DATA U_CHAR 0000H 1
tl1. . . . . . . . . . . . . . . . . . PUBLIC DATA U_CHAR 0001H 1
phase. . . . . . . . . . . . . . . . . PUBLIC DATA U_CHAR 0002H 1
uchar. . . . . . . . . . . . . . . . . TYPEDEF ----- U_CHAR ----- 1
RD . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B7H 1
ES . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00ACH 1
index. . . . . . . . . . . . . . . . . PUBLIC DATA U_CHAR 0003H 1
RI . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0098H 1
INT0 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B2H 1
CY . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D7H 1
TI . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0099H 1
INT1 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B3H 1
PS . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00BCH 1
OV . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D2H 1
main . . . . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
WR . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B6H 1
count. . . . . . . . . . . . . . . . . PUBLIC DATA U_CHAR 0004H 1
Timer1 . . . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
p2temp . . . . . . . . . . . . . . . * REG * DATA U_CHAR 001FH 1
p2temp2. . . . . . . . . . . . . . . * REG * DATA U_CHAR 001EH 1
p2temp3. . . . . . . . . . . . . . . * REG * DATA U_CHAR 001CH 1
i. . . . . . . . . . . . . . . . . . * REG * DATA U_CHAR 001DH 1
TMOD . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0089H 1
IE0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0089H 1
IE1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008BH 1
uint . . . . . . . . . . . . . . . . . TYPEDEF ----- U_INT ----- 2
ET0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A9H 1
ET1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00ABH 1
TF0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008DH 1
TF1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008FH 1
RB8. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009AH 1
TH0. . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 008CH 1
EX0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A8H 1
IT0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0088H 1
TH1. . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 008DH 1
TB8. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009BH 1
EX1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00AAH 1
IT1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008AH 1
P. . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D0H 1
SM0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009FH 1
TL0. . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 008AH 1
SM1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009EH 1
TL1. . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 008BH 1
SM2. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009DH 1
PT0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B9H 1
PT1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00BBH 1
RS0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D3H 1
TR0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008CH 1
RS1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D4H 1
C51 COMPILER V6.02 YAOEASY01 01/07/2006 15:41:57 PAGE 5
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
TR1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008EH 1
PX0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B8H 1
PX1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00BAH 1
REN. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009CH 1
zikup0 . . . . . . . . . . . . . . . . PUBLIC CODE ARRAY 0000H 51
zikup2 . . . . . . . . . . . . . . . . PUBLIC CODE ARRAY 0033H 51
RXD. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B0H 1
TXD. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B1H 1
F0 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D5H 1
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 264 ----
CONSTANT SIZE = 102 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 5 ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?