📄 46-1.lst
字号:
C51 COMPILER V8.08 46_1 08/11/2009 09:51:17 PAGE 1
C51 COMPILER V8.08, COMPILATION OF MODULE 46_1
OBJECT MODULE PLACED IN 46-1.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 46-1.c BROWSE DEBUG OBJECTEXTEND
line level source
1 /*************** writer:shopping.w ******************/
2 #include <reg52.h>
3 #define uint unsigned int
4 #define uchar unsigned char
5 sbit LED1 = P1^0;
6 sbit LED2 = P1^3;
7 sbit K1 = P1^7;
8 uchar Operation_NO = 0;
9 uchar code DSY_CODE[]=
10 {
11 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f
12 };
13
14 void Delay(uint x)
15 {
16 1 uchar i;
17 1 while(x--)
18 1 {
19 2 for(i=0;i<120;i++);
20 2 }
21 1 }
22
23 void putc_to_SerialPort(uchar c)
24 {
25 1 SBUF = c;
26 1 while(TI == 0);
27 1 TI = 0;
28 1 }
29
30 void main()
31 {
32 1 LED1=LED2=1;
33 1 P0 = 0x00;
34 1 SCON = 0x50;
35 1 TMOD = 0x20;
36 1 PCON = 0x00;
37 1 TH1 = 0xfd;
38 1 TL1 = 0xfd;
39 1 TI = 0;
40 1 RI = 0;
41 1 TR1 = 1;
42 1 IE = 0x90;
43 1 while(1)
44 1 {
45 2 Delay(100);
46 2 if(K1 == 0)
47 2 {
48 3 while(K1==0);
49 3 Operation_NO=(Operation_NO+1)%4;
50 3 switch(Operation_NO)
51 3 {
52 4 case 0:
53 4 putc_to_SerialPort('X');
54 4 LED1=LED2=1; break;
55 4 case 1:
C51 COMPILER V8.08 46_1 08/11/2009 09:51:17 PAGE 2
56 4 putc_to_SerialPort('A');
57 4 LED1=0;LED2=1;break;
58 4 case 2:
59 4 putc_to_SerialPort('B');
60 4 LED2=0;LED1=1;break;
61 4 case 3:
62 4 putc_to_SerialPort('C');
63 4 LED1=0;LED2=0;break;
64 4 }
65 3 }
66 2 }
67 1 }
68
69 void Serial_INT() interrupt 4
70 {
71 1 if(RI)
72 1 {
73 2 RI = 0;
74 2 if(SBUF>=0&&SBUF<=9)
75 2 P0 = DSY_CODE[SBUF];
76 2 else
77 2 P0 = 0x00;
78 2 }
79 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 197 ----
CONSTANT SIZE = 10 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 1 ----
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 + -