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

📄 rxd8951.lst

📁 两个单片机之间的通信
💻 LST
字号:
C51 COMPILER V8.15   RXD8951                                                               10/20/2008 22:32:27 PAGE 1   


C51 COMPILER V8.15, COMPILATION OF MODULE RXD8951
OBJECT MODULE PLACED IN rxd8951.OBJ
COMPILER INVOKED BY: D:\4-Keil C51 v8.15\C51\BIN\C51.EXE rxd8951.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /*******************************************************************************
   2           *
   3            * 文件名称:rxd8951.c
   4           *
   5            * 功能描述:串口接收数据,并显示相应数据。
   6           *                        接收到呼叫号后,发送应答号
   7                                    通信建立,开始数据传输         
   8           *
   9            * 开发环境:IDE为Keil uVision3 v8.09a。MCU为AT89S52,晶振频率12M。
  10           *
  11            * 文件版本 v1.0
  12           *
  13            * 创建时间:2008/10/20 
  14           *
  15            * 修改记录:无
  16           *
  17           ******************************************************************************/
  18          #include <reg51.h>
  19          
  20          void delay(unsigned int i)      /*用来短暂延时。延时时间为每循环一次为14us,总循环时间再加上14us为延时时间*/
  21          {
  22   1              while(i--);
  23   1      }
  24          /*******************************************************************************
  25           *
  26           * 描述: 串口通信初始化,设置串口工作在模式1下,接收使能,使用Timer1工作在模式2下,
  27           *               波特率2400
  28           *
  29           * 参数: 无
  30           *
  31           * 返回: 无
  32           *
  33           ******************************************************************************/
  34          void init_serialcom()
  35          {       SCON=0x50;
  36   1              TMOD=0x20;
  37   1              TH1=0xF3;
  38   1              TL1=0xF3;
  39   1              TR1=1;
  40   1      }
  41          /*******************************************************************************
  42           *
  43           * 描述: 向串口发送一个字符或一个字节。
  44           *
  45           * 参数: ch      待发送字符或字节
  46           *
  47           * 返回: 无
  48           *
  49           ******************************************************************************/
  50          void send_char_com(unsigned char ch)
  51          {       SBUF=ch;
  52   1              while(TI==0);
  53   1              TI=0;
  54   1      }
  55          /*******************************************************************************
C51 COMPILER V8.15   RXD8951                                                               10/20/2008 22:32:27 PAGE 2   

  56           *
  57           * 描述: 向串口发送一个字符串或多个字节。
  58           *
  59           * 参数: str      待发送字符串或多字节首地址
  60           *               strlen   待发送字符串或多字节长度
  61           *
  62           * 返回: 无
  63           *
  64           ******************************************************************************/
  65          void send_string_com(unsigned char *str,unsigned int strlen)
  66          {       unsigned int k=0;
  67   1              do
  68   1              {
  69   2                      send_char_com(*(str+k));
  70   2                      k++;
  71   2              }while(k<strlen);
  72   1      }
  73          
  74          
  75          main()
  76          {       unsigned char response=0;         //判断通信是否建立用
  77   1              unsigned char num;
  78   1              init_serialcom();
  79   1              
  80   1              do
  81   1              {
  82   2                      while(!RI);                       //判断是否接收完毕,完毕(RI=1)开始发送应答
  83   2                      RI=0;
  84   2                      response=SBUF;          
  85   2              }while(response!=0x99);
  86   1              num=0x01;                                 //呼叫号01H
  87   1              send_char_com(num);               //发送呼叫号01H
  88   1      
  89   1              while(1)
  90   1              {       while(!RI);                       //等待数据接收
  91   2                      RI=0;
  92   2                      P0=SBUF;                          //显示接收到的数据
  93   2                      delay(200);
  94   2              
  95   2              }
  96   1      }


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