⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 s_communication_1.lst

📁 AT89S52单片机串口发送接收程序
💻 LST
字号:
C51 COMPILER V8.05a   S_COMMUNICATION_1                                                    02/13/2009 12:10:23 PAGE 1   


C51 COMPILER V8.05a, COMPILATION OF MODULE S_COMMUNICATION_1
OBJECT MODULE PLACED IN S_communication_1.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE S_communication_1.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include<reg52.h>
   2          #define uint unsigned int
   3          #define uchar unsigned char
   4          #include<LCD_1602.h>
   5          
   6          uchar num;
   7          sbit s1=P3^2;
   8          sbit judge_p30=P3^0;
   9          
  10          void initial();
  11          void txd(uchar temp);
  12          void rxd();
  13          void keyscan();
  14          void delay(uint z);
  15          void main()
  16          {
  17   1              initial();
  18   1              initial_1602();
  19   1              display_1602(0,1,0,'S');
  20   1              display_1602(0,1,1,'e');
  21   1              display_1602(0,1,2,'n');
  22   1              display_1602(0,1,3,'d');
  23   1              display_1602(0,1,4,':');
  24   1      
  25   1              display_1602(0,2,0,'R');
  26   1              display_1602(0,2,1,'e');
  27   1              display_1602(0,2,2,'c');
  28   1              display_1602(0,2,3,'e');
  29   1              display_1602(0,2,4,'i');
  30   1              display_1602(0,2,5,'v');
  31   1              display_1602(0,2,6,'e');
  32   1              display_1602(0,2,7,':');
  33   1              while(1) 
  34   1              {
  35   2                      keyscan();
  36   2                      if(judge_p30==0) rxd();
  37   2              }
  38   1      }
  39          void initial()
  40          {
  41   1              TMOD=0x20;        //T1工作方式2
  42   1              TH1=0xfd;         //波特率9600bps
  43   1              TL1=0xfd;
  44   1              TR1=1;
  45   1      
  46   1              SM0=0;  SM1=1;   //设置方式1 8位异步收发 波特率可变
  47   1              REN=1;               //允许串行口接收
  48   1      }
  49          
  50          void keyscan()
  51          {
  52   1              if(s1==0)
  53   1              {
  54   2                      delay(2);
  55   2                      if(s1==0)
C51 COMPILER V8.05a   S_COMMUNICATION_1                                                    02/13/2009 12:10:23 PAGE 2   

  56   2                      {
  57   3                              while(!s1);
  58   3                              num++;
  59   3                              txd(num);            //发送数据
  60   3                              if(num==255) num=0;             
  61   3                      }       
  62   2              }
  63   1      }
  64          
  65          void txd(uchar temp)
  66          {
  67   1              display_1602(1,1,8,temp);
  68   1              SBUF=temp;                         //发送数据
  69   1              while(TI==0);
  70   1              TI=0;
  71   1      }
  72          
  73          void rxd()
  74          {
  75   1              uchar temp;
  76   1              while(RI==0);
  77   1              RI=0;                   
  78   1              temp=SBUF;              //接收数据
  79   1              display_1602(1,2,8,temp);
  80   1      }
  81          
  82          void delay(uint z)
  83          {
  84   1              uint x,y;
  85   1              for(x=z;x>0;x--)
  86   1                      for(y=100;y>0;y--);
  87   1      }
  88          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    394    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      1       4
   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 + -