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

📄 text165.lst

📁 电话号码拨号以及自动报警系统
💻 LST
字号:
C51 COMPILER V6.12  TEXT165                                                                06/02/2004 16:47:24 PAGE 1   


C51 COMPILER V6.12, COMPILATION OF MODULE TEXT165
OBJECT MODULE PLACED IN .\Text165.obj
COMPILER INVOKED BY: C:\KEIL\C51\BIN\C51.EXE ..\水位器\Text165.c DEBUG OBJECTEXTEND PRINT(.\Text165.lst) OBJECT(.\Text16
                    -5.obj) 

stmt level    source

   1          #include <AT89X52.H>
   2          #include <stdio.h>
   3          #define uchar unsigned char
   4          #define uint unsigned int//--------------定义函数-----------------------
   5          uchar sj(void);
   6          void delay(uint x);
   7          //---------------定义管脚----------------------
   8          sbit CLK=P3^0;
   9          sbit IO=P3^1;
  10          sbit CS=P3^7;
  11          sbit PART1=P3^2;
  12          sbit PART2=P3^3;
  13          sbit PART3=P3^4;
  14          sbit PART4=P3^5;
  15          sfr  SC=0X90;    //定义P1口
  16          //---------------定义全局变量数据---------------
  17          uchar A,Bb;//,C,D,E,F,G,H;  定义8个全局变量
  18          //-----------------数据表格定义-------------
  19          uchar lcd1[16]={0X28,0XED,0X34,0XA4,0XE1,0XA2,0X22,0XEC,0X20,0XA0,
  20                          0XFF,0XFE,0XF7,0XBF,0X61,0X3B                   };
  21          					//显示0--F
  22          uchar lcd2[10]={0X08,0XCD,0X14,0X84,0XC1,0X82,0X02,0XCC,0X00,0X80};
  23                         //小数点数据表0.--9.                                                
  24          uchar lcd3[8]={0XFE,0XFD,0XFB,0XF7,0XEF,0XDF,0XBF,0X7F          };
  25                         //数据采集表                                                        
  26          
  27          //-----------------采集的数据函数-----------
  28          uchar sj(void)       //采集数据
  29          {
  30   1         uchar a,ch=0;
  31   1         CS=1;CS=0;CS=1;
  32   1      //for(;IO==1;)
  33   1      for(a=0;a<8;a++){
  34   2         CLK=1;CLK=0;
  35   2         ch=(ch<<1)|IO;
  36   2                      }
  37   1      	 return(ch);     //返回值即转换的数据
  38   1      }
  39          //---------------判断管脚------------
  40          uchar pd(void)
  41          {uchar a;
  42   1        // x=sj();                     //采集数据放到变量A里
  43   1      switch(A){
  44   2                case 0xfe:    a=1;   break;     //1
  45   2                case 0xfc:    a=2;   break;     //2
  46   2                case 0xf8:    a=3;   break;     //3
  47   2                case 0xf0:    a=4;   break;     //4
  48   2                case 0xe0:    a=5;   break;     //5
  49   2                case 0xc0:    a=6;   break;     //6
  50   2      			 case 0x80:    a=7;   break;     //7
  51   2      			 case 0x00:    a=8;   break;     //8
  52   2                default:      a=0;   break;     //0
  53   2      			 }
  54   1      	return(a);
C51 COMPILER V6.12  TEXT165                                                                06/02/2004 16:47:24 PAGE 2   

  55   1      }
  56          //---------------延时----------------
  57          void delay(uint x)
  58          {
  59   1         uint a;
  60   1      for(a=0;a<x;a++);
  61   1      }
  62          //-----------处理采集数据------------
  63          uint clsj(void)   //处理采集数据函数
  64          {
  65   1         uchar aa;
  66   1         uint  bb;
  67   1         aa=sj();         //采集数据放到变量A里
  68   1         A=pd();        //处理采集来的管脚   
  69   1      //第一个165数据放到全局变量A里等待下一步处理
  70   1         aa=sj();         //采集数据放到变量A里
  71   1         Bb=pd();        //处理采集来的管脚   
  72   1      //第二个165数据放到全局变量B里等待下一步处理
  73   1      //以后增加这里就可以扩展165采集数据了
  74   1         bb=A+B;
  75   1      return(bb);      //返回处理后的数据最大9999
  76   1      }
  77          //-----------显示函数-------------
  78          void xs(void)
  79          {uint a,b;
  80   1          a=b=clsj();     //165采集处理后数据和放到变量A里
  81   1          a=a/1000;     //求千位
  82   1      	 SC=lcd2[a];    //送数据
  83   1      	 PART1=1;       //打开显示
  84   1          delay(126);    //刷新显示延时时间
  85   1      	 PART1=0;       //关闭显示
  86   1      
  87   1      	 //a=clsj();     //165采集处理后数据和放到变量A里
  88   1      	 a=b;
  89   1          a=a/100;     //求千位
  90   1      	 SC=lcd1[a];    //送数据
  91   1      	 PART2=1;       //打开显示
  92   1          delay(126);    //刷新显示延时时间
  93   1      	 PART2=0;       //关闭显示
  94   1      
  95   1      	 //a=clsj();     //165采集处理后数据和放到变量A里
  96   1      	 a=b;
  97   1          a=a/10;     //求千位
  98   1      	 SC=lcd1[a];    //送数据
  99   1      	 PART3=1;       //打开显示
 100   1          delay(126);    //刷新显示延时时间
 101   1      	 PART3=0;       //关闭显示
 102   1      
 103   1      	 //a=clsj();     //165采集处理后数据和放到变量A里
 104   1      	 a=b;
 105   1          a=a%10;     //求千位
 106   1      	 SC=lcd1[a];    //送数据
 107   1      	 PART4=1;       //打开显示
 108   1          delay(126);    //刷新显示延时时间
 109   1      	 PART4=0;       //关闭显示
 110   1      }
 111          void main(void)
 112          {
 113   1      do{
 114   2        xs();
 115   2        }while(1);
 116   1      }
C51 COMPILER V6.12  TEXT165                                                                06/02/2004 16:47:24 PAGE 3   



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