📄 serise.lst
字号:
C51 COMPILER V7.06 SERISE 01/01/2007 21:08:09 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE SERISE
OBJECT MODULE PLACED IN serise.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE serise.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include "reg51.h"
2 #include "string.h"
3 #include "display.h"
4
5 #define rdy 0x06
6 #define busy 0x15
7 #define ok 0x01
8 #define succ 0x0f
9 #define err 0xf0
10
11 unsigned char data data_buffer[11]_at_ 0x60;
12 unsigned char rch=0x00;
13 unsigned int num=0;
14
15 void init_serialcomm(void)
16 {
17 1 SCON = 0x50; //SCON: serail mode 1, 8-bit UART, enable ucvr
18 1 TMOD = 0x20; //TMOD: timer 1, mode 2, 8-bit reload
19 1 PCON = 0x80; //SMOD=1;
20 1 TH1 = 250; //Baud:4800 fosc=11.0592MHz
21 1 TL1 = 250; //Enable Serial Interrupt
22 1 TR1 = 1; // timer 1 run
23 1 EA = 1;
24 1 ES = 0;
25 1 RI = 0;
26 1 }
27
28 //向串口发送一个字符
29 void send_char_com(unsigned char sch)
30 {
31 1 SBUF=sch;
32 1 while(TI==0);
33 1 TI=0;
34 1
35 1 }
36 recieve_char_com(void)
37 {
38 1 while(!RI);
39 1 rch=SBUF;
40 1 RI=0;
41 1 return rch;
42 1 }
43
44 recievdata(void) interrupt 4
45 {
46 1 data_buffer[num]=SBUF;
47 1 RI=0;
48 1 num++;
49 1 if(num>=11)
50 1 ES=0;
51 1 return;
52 1 }
53
54 main()
55 {
C51 COMPILER V7.06 SERISE 01/01/2007 21:08:09 PAGE 2
56 1 unsigned int a=0x80,b=0,display=1,totle=0;
57 1 unsigned int i,j,k,n;
58 1 unsigned char com=0x00,test=0x00;
59 1 init_serialcomm(); //初始化串口
60 1 while(com!=0x06)
61 1 {com=recieve_char_com();}
62 1 send_char_com(ok);
63 1 ES=1;
64 1 delayms(1200);
65 1 test=data_buffer[0];
66 1 for(n=1;n<10;n++)
67 1 test=test^data_buffer[n];
68 1 if(test=data_buffer[10])
69 1 send_char_com(succ);
70 1 else
71 1 send_char_com(err);
72 1
73 1
74 1 /*for(j=0;j<10;j++) //十六进制数转换为十进制
75 1 {
76 1 for(i=0;i<8;i++)
77 1 {
78 1 b=(data_buffer[j]&a);
79 1 if(b==a)
80 1 {
81 1 for(k=0;k<7-i;k++)
82 1 {
83 1 display=display*2;
84 1 }
85 1 totle=totle+display;
86 1 display=1;
87 1 a=a>>1;
88 1 }
89 1 else
90 1 {
91 1 a=a>>1;
92 1 continue;
93 1 }
94 1 }
95 1 data_buffer[j]=totle;
96 1 totle=0;
97 1 }
98 1
99 1 */
100 1 while(1)
101 1 {
102 2 for(i=0;i<11;i++)
103 2 {
104 3 for(j=0;j<40;j++)
105 3 {
106 4 counter(data_buffer[i]);
107 4 }
108 3 }
109 2 }
110 1 }
*** WARNING C280 IN LINE 57 OF SERISE.C: 'k': unreferenced local variable
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 236 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
C51 COMPILER V7.06 SERISE 01/01/2007 21:08:09 PAGE 3
PDATA SIZE = ---- ----
DATA SIZE = 3 14
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 1 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -