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

📄 main.lst

📁 液晶12864驱动代码
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V7.09   MAIN                                                                  12/10/2006 04:29:19 PAGE 1   


C51 COMPILER V7.09, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: F:\软件安装1\软件安装\安装软件\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include<head.h>
   2          //#include<reg51.h>
   3          //#include<intrins.h>
   4          #define  uint   unsigned int
   5          #define  uchar  unsigned char
   6          #define  ulong  unsigned long
   7          
   8          
   9          //======================================================================================
  10          #define keyport P2
  11          code uchar fuhu[]="我们还能不能见面  我在佛前求了几千年  让我再吻一吻你的脸";
  12          code uchar num[]="如果有一天失去了信心  就好比我们失去了一条腿";
  13          code uchar lled[]="我们都是好孩子  善良的好孩子";
  14          code uchar number[]="为了你  我变成狼人摸样  为了你  染上了疯狂  为了你穿上厚厚的伪装";
  15          
  16          //====================水位显示==============
  17          code uchar zhongwen[]="现在测量得的水位";
  18          code uchar shuzi[]="0123456789";
  19          code uchar zifu[]="厘米";
  20          code uchar kai_fa[]="开阀状态: ";
  21          code uchar guan_fa[]="关阀状态: ";
  22          code uchar kaiguan[]="关开";
  23          extern int  keyvalue;
  24          ulong  Pinlv;
  25          uint Hign_shui;
  26          uint f_h,yichu_count,count_over;
  27          //====================================================================================================
  28          //====================频率表=============================================================================
  29          code ulong pin_lv[]={855,1034,1244,1421,1594,1706,1824,1931,2010,2092,2166,2222,2285, 
  30            2335,2385,2416,2458,2499,2511,2533,2557,2561,2584,2596,2607,2618,2630,
  31            2643,2653,2664,2670,2680,2687,2692,2695,2705,2707,2712,2717}; 
  32          //=======================================================================================================
  33          ///============水位表===========================================================
  34          code uint Hign[]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};
  35          //================================================================================
  36          
  37          unsigned long get_f();
  38          
  39          void delay22(unsigned long  i)
  40          {
  41   1       while(--i);
  42   1      }
  43          
  44          void display_jianzhi()
  45          {
  46   1       shift_164(keyvalue%10);
  47   1       shift_164(keyvalue/10);
  48   1       shift_164(0xff);
  49   1       shift_164(0xff);
  50   1       shift_164(0xff);
  51   1       shift_164(0xff);
  52   1       shift_164(0xff);
  53   1       shift_164(0xff);
  54   1      }
  55          
C51 COMPILER V7.09   MAIN                                                                  12/10/2006 04:29:19 PAGE 2   

  56          void delay11(uint i)
  57          {
  58   1       int j,k;
  59   1       for(j=0;j<i;j++)
  60   1       for(k=0;k<500;k++);
  61   1      }
  62          
  63          //=========================频率判断
  64           pinlv_panduan()
  65          {
  66   1       ulong idata x,y,i,k,a,dat;
  67   1       x=pin_lv[i];
  68   1       y=pin_lv[i+1];
  69   1       //y=pin_lv[i+2];
  70   1       //x=Hign_shui;
  71   1       if((x<Pinlv)&(Pinlv<y))
  72   1       {
  73   2        k=((Pinlv-x)*3)/5;
  74   2        a=((y-Pinlv)*3)/5;
  75   2        k=x+k;
  76   2        a=y-a;
  77   2        if((Pinlv-k)>(a-Pinlv)) dat=x;
  78   2        else                            dat=y;
  79   2       }
  80   1       return(dat);
  81   1      }
  82          
  83          
  84          //===========================取水位高度=========
  85           get_Hign()
  86          {
  87   1       uint idata i,num,num11,dat;
  88   1       num=Hign[i];
  89   1       num11=pinlv_panduan();
  90   1       if(num==num11) dat=num;
  91   1       I2cByteWrite_24C64(0xa0,0x00,dat);
  92   1       udelay(100);
  93   1       return(dat);
  94   1      }
  95          
  96          //=============液晶显示水位=====================
  97          void display_shuiwei()//加水显示
  98          {
  99   1       ulong idata number,n1,n2;
 100   1        number=get_Hign();
 101   1        n1=number%10;
 102   1        n2=number/10;
 103   1        display_strword(0,0,zhongwen);
 104   1        display_oneword(4,1,shuzi[n2],shuzi[n1]);
 105   1        display_oneword(5,1,zifu);
*** WARNING C209 IN LINE 105 OF MAIN.C: '_display_oneword': too few actual parameters
*** WARNING C214 IN LINE 105 OF MAIN.C: 'Argument': conversion: pointer to non-pointer
 106   1        display_strword(0,2,kai_fa);
 107   1        disponechar(6,2,kaiguan,0);
 108   1        display_strword(0,3,guan_fa);
 109   1         disponechar(6,3,kaiguan,1);
 110   1      }
 111          
 112          void display_shuiwei11()//关水显示
 113          {
 114   1       ulong idata number,n1,n2;
 115   1        number=get_Hign();
C51 COMPILER V7.09   MAIN                                                                  12/10/2006 04:29:19 PAGE 3   

 116   1        n1=number%10;
 117   1        n2=number/10;
 118   1        display_strword(0,0,zhongwen);
 119   1        display_oneword(4,1,shuzi[n2],shuzi[n1]);
 120   1        display_oneword(5,1,zifu);
*** WARNING C209 IN LINE 120 OF MAIN.C: '_display_oneword': too few actual parameters
*** WARNING C214 IN LINE 120 OF MAIN.C: 'Argument': conversion: pointer to non-pointer
 121   1        display_strword(0,2,kai_fa);
 122   1        disponechar(6,2,kaiguan,1);
 123   1        display_strword(0,3,guan_fa);
 124   1        disponechar(6,3,kaiguan,0);
 125   1      }
 126          
 127          
 128          void display_shuiwei22()//关水显示
 129          {
 130   1       ulong idata number,n1,n2;
 131   1        number=get_Hign();
 132   1        n1=number%10;
 133   1        n2=number/10;
 134   1        display_strword(0,0,zhongwen);
 135   1        display_oneword(4,1,shuzi[n2],shuzi[n1]);
 136   1        display_oneword(5,1,zifu);
*** WARNING C209 IN LINE 136 OF MAIN.C: '_display_oneword': too few actual parameters
*** WARNING C214 IN LINE 136 OF MAIN.C: 'Argument': conversion: pointer to non-pointer
 137   1        display_strword(0,2,kai_fa);
 138   1        disponechar(6,2,kaiguan,0);
 139   1        display_strword(0,3,guan_fa);
 140   1        disponechar(6,3,kaiguan,0);
 141   1      }
 142          
 143          
 144          
 145          
 146          //===============加水程序===============
 147          void jia_shui()
 148          {}
 149          
 150          //===================减水程序==========
 151          void jian_shui()
 152          {}
 153          
 154          //===============================键盘控制水位
 155          void key_change_xianshi()
 156          {
 157   1       switch(keyvalue)
 158   1       {
 159   2        case 5: display_jianzhi();
 160   2                 
 161   2                clear_disppanel();
 162   2                display_shuiwei(); 
 163   2                if(Hign_shui<5)
 164   2                        {
 165   3                          jia_shui();
 166   3                         display_shuiwei();
 167   3                         while(Hign_shui<5);
 168   3                        }
 169   2                        if(Hign_shui>5) 
 170   2                        {
 171   3                         jian_shui();
 172   3                         display_shuiwei11();
 173   3                         while(Hign_shui>5);
C51 COMPILER V7.09   MAIN                                                                  12/10/2006 04:29:19 PAGE 4   

 174   3                        }
 175   2                        if(Hign_shui==5)  display_shuiwei22(); 
 176   2                break;
 177   2        case 6: display_jianzhi();
 178   2                clear_disppanel();
 179   2                display_shuiwei(); 
 180   2                if(Hign_shui<6)
 181   2                        {
 182   3                          jia_shui();
 183   3                         display_shuiwei();
 184   3                         while(Hign_shui<6);
 185   3                        }
 186   2                        if(Hign_shui>6) 
 187   2                        {
 188   3                         jian_shui();
 189   3                         display_shuiwei11();
 190   3                         while(Hign_shui>6);
 191   3                        }
 192   2                        if(Hign_shui==6)  display_shuiwei22(); 
 193   2                break;
 194   2      
 195   2         case 7: 
 196   2                display_jianzhi();
 197   2                clear_disppanel();
 198   2                //display_shuiwei(); 
 199   2                if(Hign_shui<7)
 200   2                        {
 201   3                         jia_shui();
 202   3                         display_shuiwei();
 203   3                         while(Hign_shui<7);
 204   3                         //display_strword(0,3,zhongwen);
 205   3                        }
 206   2                        if(Hign_shui>7)
 207   2                        {
 208   3                     jian_shui();
 209   3                         display_shuiwei11();
 210   3                         while(Hign_shui>7);
 211   3                        }
 212   2                        if(Hign_shui==7)  display_shuiwei22(); 
 213   2                break;
 214   2      
 215   2        case 8: display_jianzhi();
 216   2                 clear_disppanel();
 217   2                display_shuiwei(); 
 218   2                 if(Hign_shui<8)
 219   2                        {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -