📄 smain.lst
字号:
C51 COMPILER V7.06 SMAIN 05/13/2004 15:27:10 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE SMAIN
OBJECT MODULE PLACED IN Smain.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Smain.c ROM(COMPACT)
stmt level source
1 #include<reg51.h>
2 #include<stdio.h>
3 /*---全局变量区-----------------------------------*/
4 char ErrorNum=0;/*ErrorNum should below 127*/
5 /*-函数声明区-------------------------------------*/
6 extern void init_s(void);
7 extern void init_t0(void);
8 extern void init_m(char data *Address,unsigned char n,unsigned char i);///内存填充任意数值
9 extern bit hd2hd(void);
10 extern void Send_Data( char data *Adrress,unsigned char n);
11 extern bit Ack(void);
12 // extern void delayms(unsigned int x);
13 extern void OnError(char ErrorN);
14 /*--------------------------------------------------*/
15 void main(void)
16 {
17 1 unsigned char i;
18 1 char data *da_point;//初始化内存的数据指针
19 1 char data *data_addr;//要发送的内存数据初始位置
20 1 init_s();//串行通信初始化,1200BPS
21 1 da_point=0x32;/*format memory from 32H*/
22 1 init_m(da_point,35,0x55);/*内存从32处填充35个55*/
23 1 init_t0();//定时器0和中断并未打开,只是初始化。
24 1 if (hd2hd()==0) /*握手程序*/
25 1 {
26 2 ErrorNum=1;
27 2 OnError(ErrorNum);
28 2 }
29 1 /*----set data*/
30 1 data_addr=0x34;
31 1 for (i=0;i<3;i++)
32 1 {
33 2 Send_Data(data_addr,10);
34 2 if(Ack()==1) break;
35 2 if (i==2) //三次应答错误则出错处理。
36 2 {
37 3 ErrorNum=2;
38 3 OnError(ErrorNum);
39 3 }
40 2 }
41 1
42 1 //--------------------------------
43 1 TI=1;
44 1 printf("Send sucess!\n");
45 1 TI=0;
46 1 }
47
48
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 82 ----
CONSTANT SIZE = 14 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
C51 COMPILER V7.06 SMAIN 05/13/2004 15:27:10 PAGE 2
DATA SIZE = 1 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 + -