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

📄 client2.lst

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


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

line level    source

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

  56   3                              SBUF=Command_Respond2;          //发送响应码返回给主机
  57   3                              while(!TI);             //必须
  58   3                              TI=0;
  59   3      
  60   3                      }
  61   2      
  62   2                      if(SBUF==Clicent_Data_Command2)          //如果接受到主机的发送转化结果的命令
  63   2                      {
  64   3                              SBUF=Data_Command_Respond2;//发送响应码
  65   3                              while(!TI);     //必须
  66   3                              TI=0;
  67   3                      }
  68   2      
  69   2                      if(SBUF==Clicent_Receive_Data2)
  70   2                      {
  71   3                       SBUF=Data_Receive_Respone2;
  72   3                       while(!TI);    //必须
  73   3                       TI=0;
  74   3      
  75   3                      while(!RI);             //接收数据 测试
  76   3                      RI=0;
  77   3                      TTemp=SBUF;
  78   3                      P1=TTemp;
  79   3      
  80   3                      SCON=0xf0;
  81   3      
  82   3                      }
  83   2                      if(SBUF==Clicent_Send_Data2)                      //发送数据
  84   2                      {
  85   3                              SBUF=DS18B20_Data[0];
  86   3                              while(!TI);
  87   3                              TI=0;
  88   3                              SBUF=DS18B20_Data[1];
  89   3                              while(!TI);
  90   3                              TI=0;
  91   3                              
  92   3                              SCON=0xf0;
  93   3                      }
  94   2                      
  95   2              }
  96   1              EA=1;
  97   1      }
  98          
  99          //***************
 100          void DS18B20_Run(void)
 101          {
 102   1      DS18B20_Read_Temperature();
 103   1      }
 104          //***************/
 105          void main(void)
 106          {
 107   1          P1=0;
 108   1              Interrupt_Init();       
 109   1              Serial_Init();
 110   1              
 111   1              while(1)
 112   1              {
 113   2                              delay_50ms();   //延时50ms左右读一次温度,读得太多会出现乱数
 114   2                              DS18B20_Run();          //启动DS18B20
 115   2                              delay_50ms();   //延时50ms左右读一次温度,读得太多会出现乱数
 116   2              }
 117   1      }
C51 COMPILER V8.05a   CLIENT2                                                              12/26/2008 10:36:17 PAGE 3   



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