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

📄 main.lst

📁 单个18B20的测温程序,其单片机接口可以改为适合的即可将其嵌入系统程序中.
💻 LST
字号:
C51 COMPILER V7.06   MAIN                                                                  08/29/2006 22:25:45 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          #include "AT89x51.h"
   2          #include "1820.h"
   3          #include"at89x51.h"
   4          unsigned char code leddata[]={  
   5                          0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xC6,
   6                          0xA1,0x86,0x8E,0x89,0xC7,0xC8,0xC1,0x8C,0xA3,0xBF, 0xff}; // "1,2,3,4,5,6,7,8,9,A,B,C,D,E,
             -F,H,L,n,u,P,O,-"字符表
   7          
   8          uchar U6,U7;
   9          uchar a,b;
  10          uchar DispBuf[4];
  11          extern uint Temperature;
  12          
  13          
  14          void int1() interrupt 3    //T1中断,时间是1ms
  15          {
  16   1              static uchar i=0;
  17   1              static uchar SegBit=0x08;
  18   1              TR1=0;                     //关中断
  19   1              TH1=0xEE;                  //装定时器初值
  20   1              TL1=0x00; 
  21   1              ET1=1;                    //开中断                 
  22   1              TR1=1; 
  23   1              P0 = 0xff;               //关数据
  24   1              P1 = 0xff;               //关数码管
  25   1              P0 = leddata[DispBuf[i++]];  //送缓冲区数据到P0口
  26   1              P1=~SegBit;                  //选位
  27   1              SegBit >>= 1;                //位值右移一位
  28   1              if( i==4 )                  //如果右了三次,就归零
  29   1                      i=0;
  30   1              if(SegBit==0x00)            //选通了第四位数码管,位值返回初值
  31   1                      SegBit=0x08;
  32   1      }
  33          
  34          void main( void )
  35          { 
  36   1            
  37   1                unsigned int m;
  38   1                     TMOD=0x10;              //设置为T1定时器
  39   1                     TH1=0xEE;              //装定时器初值
  40   1                     TL1=0x00;
  41   1                         TemperatuerResult();  //测温
  42   1                     Temperature%=100;     //处理测得的数据
  43   1                         a = Temperature/10;
  44   1                         b = Temperature%10;
  45   1                         DispBuf[2] = b;       //送值到显示缓冲区
  46   1                         DispBuf[3] = a;
  47   1                         TR1=1;                //开中断
  48   1                     ET1=1; 
  49   1                     EA=1; 
  50   1                      DispBuf[0] = 23;   //第四位不显示
  51   1                      DispBuf[1] = 23;   //第三位不显示
  52   1             while(1) 
  53   1                        {
  54   2                              m++;
C51 COMPILER V7.06   MAIN                                                                  08/29/2006 22:25:45 PAGE 2   

  55   2                              if(m==60000)
  56   2                                              {
  57   3                                              m=0;
  58   3                                              TR1=0;
  59   3                                              TemperatuerResult();
  60   3                                              TR1=1;
  61   3                                              Temperature%=100;
  62   3                                              a = Temperature/10;
  63   3                                              b = Temperature%10;
  64   3                                          DispBuf[2] = b;
  65   3                                  DispBuf[3] = a;
  66   3                                              }
  67   2                    }                 
  68   1      
  69   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    244    ----
   CONSTANT SIZE    =     24    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     10       2
   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 + -