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

📄 main.lst

📁 DS18B20温度采集然后红外发射出去,接收板接收红外并LCD显示接收的数据信息,有完整的发射接收程序
💻 LST
字号:
C51 COMPILER V7.50   MAIN                                                                  04/06/2008 20:32:14 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN .\obj\main.obj
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE src\main.c BROWSE DEBUG OBJECTEXTEND PRINT(.\lst\main.lst) OBJECT(.\obj\mai
                    -n.obj)

line level    source

   1          #include <reg51.h>
   2          
   3          #define  EXTERN_DS18B20
   4          #include "DS18B20.h"
   5          
   6          #define  EXTERN_AT89C51
   7          #include "AT89C51.h"
   8          ///////////////////////////////////////////////////////////////////////
   9          void Timer0() interrupt 1
  10          {       TH0=0xfe;      ///定时500us////
  11   1          TL0=0x0c;
  12   1        //  TH0=0xfc;      ///定时1000us////
  13   1        //  TL0=0x18; 
  14   1          count--;         ////count的值决定脉冲的宽度///////
  15   1              if(count==0)
  16   1              {
  17   2               TR0=0; //让定时/计数器0停止运行//
  18   2           TR1=0; //让定时/计数器1停止运行//
  19   2               P34=0;//脉冲结束,置0使发光二极管熄灭//////
  20   2              }
  21   1      }
  22          //////////////////////////////////////////////////////////////////////
  23          void Timer1() interrupt 3
  24          {       PT0=1;    //////保证在T1的中断处理中时,T0可以无障碍的进入中断//////
  25   1          P34=~P34;////红外发光二极管亮13us,接着灭13us,循环周而复始///////
  26   1          PT0=0;
  27   1      }
  28          
  29          ///////////////////////////////////////////////////////////////////////////
  30          ////////////////////////////// main函数//////////////////////////////////
  31          void main(void) 
  32          { 
  33   1       // bit flag1;
  34   1        uchar x;//,y;
  35   1       // flag1=1;
  36   1        AT89C51_initialize();   //////////初始化///////
  37   1        if(Singlewire_Reset())  /////如果DS18B20复位正常//////
  38   1         {  
  39   2                 while(1) //////无限循环///////
  40   2               {        
  41   3                    x=Read_Temperature();//////读取温度值//////
  42   3                display(x); 
  43   3            //    if(y!=x){y=x;Send_Data(0xaa,x);}///读取的温度值与上次的值进行比较,///////
  44   3                Send_Data(temp_msb,temp_lsb);          ////如果不同,再经红外线发送出去///////////
  45   3                        display(x);                    //////将温度值显示//////
  46   3              //  P2=0xfa;////用于调试/////
  47   3                   }
  48   2            
  49   2          }
  50   1        else  P2=0xfa;////用于调试/////
  51   1      }
  52          /////////////////////////////////////////////////////////////////////////////////////////////
  53          
  54          
C51 COMPILER V7.50   MAIN                                                                  04/06/2008 20:32:14 PAGE 2   

  55          //////////////////////////////////////////////////////////////////////////


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