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

📄 receiveb.lst

📁 零基础单片机C语言设计全套教程
💻 LST
字号:
C51 COMPILER V8.08   RECEIVEB                                                              08/31/2008 12:57:16 PAGE 1   


C51 COMPILER V8.08, COMPILATION OF MODULE RECEIVEB
OBJECT MODULE PLACED IN ReceiveB.OBJ
COMPILER INVOKED BY: C:\Program Files\keil\C51\BIN\C51.EXE ReceiveB.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include<reg52.h>
   2          #define uchar unsigned char
   3          
   4          uchar idata buf[10];
   5          uchar CheckSum;                                 //检验和
   6          
   7          void main(void)
   8          {
   9   1      uchar i;
  10   1      
  11   1      SCON  = 0x50;                                   //设置串行口: 方式 1, 8位UART, 允许接收
  12   1      TMOD  |= 0x20;                                  //设置定时器T1, 方式 2, 8位自动重装
  13   1      PCON  =0x80;                                            //设置SMOD=1
  14   1      TL1    =0xF4;                                           //波特率4800bit/s,初值
  15   1      TH1    =0xF4;
  16   1      TR1    = 1;                             //启动定时器T1
  17   1      
  18   1      do
  19   1      {
  20   2      }while(RI==0);
  21   1      RI=0;
  22   1       while((SBUF^0xAB)!=0)                          //判断A机是否发出请求
  23   1          SBUF=0xBA;                                  //发送应答信号"BA"
  24   1          while(TI==0);                                       //等待发送结束
  25   1          TI=0;
  26   1          while(1)
  27   1      {
  28   2      CheckSum=0;                                     //清校验和
  29   2           for(i=0;i<10;i++)
  30   2           {
  31   3      while(RI==0);
  32   3      RI=0;
  33   3            buf[i]=SBUF;                                      //接收一个数据
  34   3            CheckSum+=buf[i];                         //求校验和
  35   3           }
  36   2      while(RI==0);
  37   2      RI=0;                                                   //接收A机校验和
  38   2          if((SBUF^CheckSum)==0)                      //比较检验和
  39   2      {
  40   3      SBUF=0x00;
  41   3      break;
  42   3      }                                                       //校验和相同则发"00"
  43   2         else
  44   2      {
  45   3      SBUF=0xEE;                                      //出错发"EE",重新接收
  46   3          while(TI==0);
  47   3      TI=0;
  48   3          }
  49   2      }
  50   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =     90    ----
   CONSTANT SIZE    =   ----    ----
C51 COMPILER V8.08   RECEIVEB                                                              08/31/2008 12:57:16 PAGE 2   

   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      1    ----
   IDATA SIZE       =     10    ----
   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 + -