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

📄 client3.lst

📁 主从式总线型SIO系统(多机双向通信)
💻 LST
字号:
C51 COMPILER V8.05a   CLIENT3                                                              12/26/2008 10:36:39 PAGE 1   


C51 COMPILER V8.05a, COMPILATION OF MODULE CLIENT3
OBJECT MODULE PLACED IN Client3.OBJ
COMPILER INVOKED BY: C:\Program Files\keil\C51\BIN\C51.EXE Client3.c DEBUG OBJECTEXTEND

line level    source

   1          //***********从机代码*******8
   2          
   3          #include <reg51.h>
   4          #include "Clicent_Setting.h"
   5          #include "Funtion_T.h"
   6          
   7           char TTemp;
   8          void delay_50ms()
   9          {
  10   1       int s=5000;
  11   1       while(--s);
  12   1      }
  13          //************
  14          void Serial_Init(void)  //串口初始化
  15          {       
  16   1              SCON = 0x50;                    // 设定串行口工作方式 
  17   1              PCON =0x80;            // 波特率倍增 SMOD=1
  18   1              TMOD=0x20;
  19   1              TH1 = 0xf3;                             // 6MHZ 波特率2400
  20   1              TL1 = 0xf3;
  21   1              TR1=1;
  22   1              ES=1;                             
  23   1      }
  24          
  25          //************
  26          void Interrupt_Init(void)       //中断初始化
  27          {
  28   1              EA=1;
  29   1              EX0=1;
  30   1              
  31   1      }
  32          
  33          //*************
  34          void interrupt4(void) interrupt 4 using 2         //串口中断触发
  35          {
  36   1              EA=0;
  37   1              if(TI)
  38   1               TI=0;
  39   1              if(RI)
  40   1              {
  41   2                      RI=0;
  42   2                      if(SBUF==STD3)  //0x8f)         //如果接收到主机的地址码
  43   2                      {
  44   3                              SBUF=Address_Respond3;          //发送地址响应码
  45   3                              while(!TI);             //必须
  46   3                              TI=0;
  47   3                              SCON=0xd0;              //并且把SCON中的SM2置0,允许响应数据中断                        
  48   3                      }
  49   2      
  50   2                      if(SBUF==Clicent_Command3)              //如果接收到主机的启动的命令
  51   2                      {       
  52   3                              SBUF=Command_Respond3;          //发送响应码0x55返回给主机
  53   3                              while(!TI);             //必须
  54   3                              TI=0;
  55   3                      }
C51 COMPILER V8.05a   CLIENT3                                                              12/26/2008 10:36:39 PAGE 2   

  56   2                      if(SBUF==Clicent_Data_Command3)          //如果接受到主机的发送转化结果的命令
  57   2                      {
  58   3                              SBUF=Data_Command_Respond3;//发送响应码
  59   3                              while(!TI);     //必须
  60   3                              TI=0;
  61   3                      }
  62   2      
  63   2                      if(SBUF==Clicent_Receive_Data3)
  64   2                      {
  65   3                       SBUF=Data_Receive_Respone3;
  66   3                       while(!TI);    //必须
  67   3                       TI=0;
  68   3      
  69   3                      while(!RI);             //接收数据 测试
  70   3                      RI=0;
  71   3                      TTemp=SBUF;
  72   3                      P1=TTemp;
  73   3      
  74   3                      SCON=0xf0;
  75   3      
  76   3                      }
  77   2                      if(SBUF==Clicent_Send_Data3)                      //发送数据
  78   2                      {
  79   3                              SBUF=DS18B20_Data[0];
  80   3                              while(!TI);
  81   3                              TI=0;
  82   3                              SBUF=DS18B20_Data[1];
  83   3                              while(!TI);
  84   3                              TI=0;
  85   3                              
  86   3                              SCON=0xf0;
  87   3                      }
  88   2                      
  89   2              }
  90   1              EA=1;
  91   1      }
  92          
  93          //***************
  94          void DS18B20_Run(void)
  95          {
  96   1              DS18B20_Read_Temperature();
  97   1      }
  98          //***************/
  99          void main(void)
 100          {
 101   1          P1=0;
 102   1              Interrupt_Init();       
 103   1              Serial_Init();
 104   1              
 105   1              while(1)
 106   1              {
 107   2                              delay_50ms();   //延时50ms左右读一次温度,读得太多可能会出现乱数
 108   2                              DS18B20_Run();          //启动DS18B20
 109   2                              delay_50ms();   //延时50ms左右读一次温度,读得太多可能会出现乱数
 110   2      
 111   2              }
 112   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    322    ----
   CONSTANT SIZE    =   ----    ----
C51 COMPILER V8.05a   CLIENT3                                                              12/26/2008 10:36:39 PAGE 3   

   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      6    ----
   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 + -