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

📄 keyedit.lst

📁 基于ARM[LPC2148]SPI的串口液晶显示器6059B的显示程序
💻 LST
字号:
C51 COMPILER V7.50   KEYEDIT                                                               06/09/2007 13:49:47 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE KEYEDIT
OBJECT MODULE PLACED IN .\download\keyedit.obj
COMPILER INVOKED BY: D:\Keil\C51\BIN\C51.EXE keyedit.c BROWSE DEBUG OBJECTEXTEND OBJECT(.\download\keyedit.obj)

line level    source

   1          #include <head.c>
   2          extern  ulong   PARAM[8];
   3          /***************************/
   4          extern void saveee(void);
   5          extern void sendpj(ulong w[]);
   6          extern void watchdog();
   7          //extern unsigned char valaddr;
   8          extern void usdelay(uchar k);
   9          extern void msdelay(uchar k);
  10          extern uchar INTKEY,KEYCHAR;
  11          //void  openlamp(uchar k);
  12          /**************************/
  13          char    numeric(uchar i);
  14          void save()
  15          {
  16   1              
  17   1          saveee();   
  18   1              usdelay(1);
  19   1              readee();
  20   1              usdelay(5);
  21   1              INTKEY=0;
  22   1              ES=1;
  23   1              EA=1;
  24   1              DE0=0;
  25   1              DE =0;
  26   1      }
  27          void keyedit()
  28          {       
  29   1              watchdog();     
  30   1              readee();
  31   1              switch(KEYCHAR)
  32   1              {
  33   2                case FUNKEY:{ watchdog();
  34   3                                              if(numeric(NUMSET)==(NUMSET+1)){;}
  35   3                                              if(numeric(NUMDIF)==(NUMDIF+1)){save();}
  36   3                                              return;
  37   3                                        }
  38   2                case (MOVKEY & ADDKEY):               
  39   2                                        {     if(numeric(NUMPID)==(NUMPID+1)){save();}
  40   3                                              return;
  41   3                                        }//PID
  42   2                case (MOVKEY & FUNKEY):
  43   2                                        { watchdog();
  44   3                                              if(numeric(NUMCON)==(NUMCON+1)){;}
  45   3                                              if(numeric(NUMCAR)==(NUMCAR+1)){save();}
  46   3                                              return;
  47   3                                        }//常数
  48   2      /*        case (ADDKEY & FUNKEY):
  49   2                                        {
  50   2                                          if(numeric(8)==9){save();}
  51   2                                              changnum(PARAM[7]);
  52   2                                              valaddr=(uchar)bytebuf[2]*100+(uchar)bytebuf[3]*10+(uchar)bytebuf[4];
  53   2                                          return;
  54   2                                        }*///地址可调
  55   2                case 0x55:  { watchdog();
C51 COMPILER V7.50   KEYEDIT                                                               06/09/2007 13:49:47 PAGE 2   

  56   3                                              if(numeric(NUMCNT)==(NUMCNT+1)){save();}                                        
  57   3                                              return;
  58   3                                        }//采样数
  59   2                case 0x60:  { watchdog();                             
  60   3                                              if(numeric(NUMSIG)==(NUMSIG+1)){save();}
  61   3                                              return;
  62   3                                        }//信号幅度
  63   2      /*        case PIDKEY:{
  64   2                                              watchdog();
  65   2                                              if((PIDSTAT==0xff)||(PIDSTAT==0x7f))
  66   2                                                      {PIDSTAT=pidlamp;S8155A=S8155A & pidlamp;}
  67   2                                              else{PIDSTAT=0xff;S8155A=S8155A |(~pidlamp);}
  68   2                                              ES=1;
  69   2                                              DE0=0;
  70   2                                              EA=1;
  71   2                                              return;
  72   2                                        }*/
  73   2                default:        {     ES=1;
  74   3                                              DE0=0;
  75   3                                              EA=1;
  76   3                                              return;
  77   3                                        }
  78   2              }
  79   1          watchdog();
  80   1              ES=1;
  81   1              DE0=0;
  82   1              EA=1;
  83   1              return;
  84   1      }
  85          /*void  openlamp(uchar k)
  86          {
  87              switch(k)
  88                   {
  89                    case NUMCON:S8155A=conlamp;break;
  90                    case NUMPID:S8155A=0xff;      break;
  91                    case NUMSET:S8155A=setlamp;break;
  92                    case NUMDIF:S8155A=diflamp;break;
  93                    default:break;
  94                   }
  95          //      COM8155A=S8155A;
  96                  return;
  97          }*/
  98          
  99          char numeric(uchar n)
 100          { 
 101   1               char flabit,st,bytebuf;//flabit == flashbit
 102   1               ulong temp;  
 103   1           n=n-1;
 104   1               temp=PARAM[n];  
 105   1               watchdog(); 
 106   1               st=0;
 107   1               st=0;
 108   1           INTKEY=0;
 109   1           flabit=st;
 110   1               temp=temp+5000000;//灭LED
 111   1               sendpj(&temp);
 112   1               temp=temp-5000000;
 113   1           for(;;)
 114   1                {
 115   2                     watchdog();    
 116   2                 for(;INTKEY==0;)// flabit位一直闪烁,直到keydown==1;
 117   2                              {
C51 COMPILER V7.50   KEYEDIT                                                               06/09/2007 13:49:47 PAGE 3   

 118   3                              EA=1;
 119   3                                      watchdog(); 
 120   3                                      // openlamp(n); 
 121   3                                      EA=0;
 122   3                                      temp=temp+(flabit*10+6)*100000;//灭LED
 123   3                                      sendpj(&temp);
 124   3                                      temp=temp-(flabit*10+6)*100000;
 125   3                                      EA=1;                           
 126   3                                      watchdog();
 127   3                                      if(INTKEY!=0)  break;      
 128   3                      msdelay(200);   
 129   3                                      EA=0;
 130   3                                      sendpj(&temp);                          //开显示,开灯 ,延时                                                           
 131   3                                      watchdog();
 132   3                                      EA=1;
 133   3                                      if(INTKEY!=0)  break;
 134   3                                      msdelay(200);   //关灯,关显示,延时  
 135   3                              }//end loop;    
 136   2                              watchdog();                                     
 137   2                      if(KEYCHAR==MOVKEY) 
 138   2                                      {
 139   3                                    if(flabit>=4){flabit=st;}
 140   3                                        else flabit++;
 141   3                                        INTKEY=0;
 142   3                                      }
 143   2                      else if(KEYCHAR==ADDKEY) 
 144   2                                      {
 145   3                                       if(flabit==4)bytebuf=temp%10;
 146   3                                       else if(flabit==3)bytebuf=(temp%100)/10;
 147   3                                       else if(flabit==2)bytebuf=(temp%1000)/100;
 148   3                                       else if(flabit==1)bytebuf=(temp%10000)/1000;
 149   3                                       else if(flabit==0)bytebuf=(temp%100000)/10000;
 150   3      
 151   3                                       if(bytebuf==9){bytebuf=-9;}
 152   3                       else if((bytebuf<9)&&(bytebuf>=0))bytebuf=1;
 153   3                                       else bytebuf=0;
 154   3      
 155   3                                       if(flabit==4)temp+=bytebuf;
 156   3                                       else if(flabit==3)temp+=bytebuf*10;
 157   3                                       else if(flabit==2)temp+=bytebuf*100;
 158   3                                       else if(flabit==1)temp+=bytebuf*1000;
 159   3                                       else if((flabit==0)&&(bytebuf== 1)){temp+=10000;}
 160   3                                       else if((flabit==0)&&(bytebuf==-9)){temp=temp%10000;}
 161   3                                       INTKEY=0;              //1+2=3+4=7+8=15                 
 162   3                      }
 163   2                              sendpj(&temp);  
 164   2                              if(KEYCHAR==FUNKEY)
 165   2                                      {
 166   3                                       if(((n==NUMSIG)||(n==NUMCAR))&&(temp>255))
 167   3                                              {
 168   4                                              PARAM[n]=255;
 169   4                                              }
 170   3                                       else
 171   3                                              PARAM[n]=temp;
 172   3                                       INTKEY=0;      
 173   3                               return (n+2);
 174   3                                      }       
 175   2                              else INTKEY=0;
 176   2                }                              
 177   1      } 


C51 COMPILER V7.50   KEYEDIT                                                               06/09/2007 13:49:47 PAGE 4   

MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    970    ----
   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 + -