📄 yaonew.lst
字号:
C51 COMPILER V6.02 YAONEW 01/07/2006 12:19:45 PAGE 1
C51 COMPILER V6.02, COMPILATION OF MODULE YAONEW
OBJECT MODULE PLACED IN G:\MAJOR\DESIGN\摇棒\YAONEW.OBJ
COMPILER INVOKED BY: C:\comp51v6\C51.EXE G:\MAJOR\DESIGN\摇棒\YAONEW.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 bit left_flag;
16
17 code char pattern[17][3]={ //3幅图片的字模
18 {0xff,0xff,0xff}, //在长沙的时候教过你怎么算,所以我就不多说了
19 {0xff,0xff,0xff},
20 {0xff,0xff,0xff},
21 {0xff,0xf9,0xff},
22 {0xff,0xf6,0x9f},
23 {0xff,0xee,0xa6},
24 {0xfe,0xdd,0x78},
25 {0x7e,0xbb,0x7f},
26 {0x00,0x77,0x7f},
27 {0x7e,0xbb,0x7f},
28 {0xfe,0xdd,0x78},
29 {0xff,0xee,0xa6},
30 {0xff,0xf6,0x9f},
31 {0xff,0xf9,0xff},
32 {0xff,0xff,0xff},
33 {0xff,0xff,0xff},
34 {0xff,0xff,0xff},
35 };
36 uchar phase,th1,tl1,index,count;
37
38 main()
39 {
40 1 EA=0; //中断总使能,高电平有效,他为高时,各中断自行使能,他为低,中断无效
41 1 EX1=1; //外部中断1使能,高电平有效
42 1 ET1=1; //内部时钟中断1使能,高有效
43 1 ET0=1;
44 1 EX0=1;
45 1 PX0=1; //外部中断优先级别设置
46 1 IT1=1; //外部中段1工作模式选择,为1是下降沿为中断信号,0时低电平为中断信号
47 1 IT0=1;
48 1 //TR1=1;
49 1 //TR0=1;
50 1 TMOD=0x11;
51 1 index=0;
52 1 EA=1;
53 1 while(1)
54 1 {
55 2 }
C51 COMPILER V6.02 YAONEW 01/07/2006 12:19:45 PAGE 2
56 1 }
57
58 void Int0_Handle(void) interrupt 0 using 2
59 {
60 1 uint tl_time;
61 1 left_flag=1;
62 1 TR0=0;
63 1 TR1=0;
64 1 TF1=0;
65 1 tl_time=TH0<<8|TL0;
66 1 TL0=0;
67 1 TH0=0;
68 1 TR0=1;
69 1 tl_time=65535-tl_time/SEG;
70 1 th1=tl_time/256;
71 1 TH1=th1;
72 1 tl1=tl_time % 256;
73 1 TL1=tl1;
74 1 if (count<3*INTERVAL){ //3幅图片循环
75 2 count++;
76 2 }
77 1 else{
78 2 count=0;
79 2 }
80 1 index=1;//count/INTERVAL;
81 1 if (th1!=0xff || tl1!=0xff)
82 1 {
83 2 phase=0;
84 2 TR1=1;
85 2 }
86 1 else
87 1 {
88 2 TR1=0;
89 2 }
90 1 }
91
92 void Int1_Handle(void) interrupt 2 using 2
93 {
94 1 /* uint tr_time;
95 1 left_flag=0;
96 1 TR1=0;
97 1 tr_time=TH0<<8|TL0;
98 1 TL0=0;
99 1 TH0=0;
100 1 TR0=1;
101 1 tr_time=65535-tr_time/SEG;
102 1 th1=tr_time/256;
103 1 TH1=th1;
104 1 tl1=tr_time % 256;
105 1 TL1=tl1; */
106 1 /* if (count<3*INTERVAL){ //3幅图片循环
107 1 count++;
108 1 }
109 1 else{
110 1 count=0;
111 1 } */
112 1 index=1;//count/INTERVAL;
113 1 /* if (th1!=0xff || tl1!=0xff)
114 1 {
115 1 phase=17;
116 1 TR1=1;
117 1 }
C51 COMPILER V6.02 YAONEW 01/07/2006 12:19:45 PAGE 3
118 1 else{
119 1 TR1=0;
120 1 } */
121 1 }
122 void timer0() interrupt 1 using 3
123 {
124 1 //P0=~P0;
125 1 }
126
127
128 void Timer1(void) interrupt 3 using 3
129 {
130 1 if (phase<SEG) //17段依次显示
131 1 {
132 2 //P0=pattern[phase][index];
133 2 P2=pattern[phase][index];
134 2 // if(left_flag)
135 2 phase++;
136 2 if(phase>10)
137 2 phase=0;
138 2 //else
139 2 // phase--;
140 2 //TH1=th1;
141 2 //TL1=tl1;
142 2 }
143 1 }
144
145
C51 COMPILER V6.02 YAONEW 01/07/2006 12:19:45 PAGE 4
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
P2 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00A0H 1
pattern. . . . . . . . . . . . . . . . PUBLIC CODE ARRAY 0000H 51
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 -----
tl_time. . . . . . . . . . . . . . . * REG * DATA U_INT 0012H 2
Int1_Handle. . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
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
left_flag. . . . . . . . . . . . . . . PUBLIC DATA BIT 0000H 1
count. . . . . . . . . . . . . . . . . PUBLIC DATA U_CHAR 0004H 1
Timer1 . . . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
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
timer0 . . . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
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
TR1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008EH 1
C51 COMPILER V6.02 YAONEW 01/07/2006 12:19:45 PAGE 5
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
PX0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B8H 1
PX1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00BAH 1
REN. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009CH 1
RXD. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B0H 1
TXD. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B1H 1
F0 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D5H 1
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 209 ----
CONSTANT SIZE = 51 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 5 ----
IDATA SIZE = ---- ----
BIT SIZE = 1 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -