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

📄 _edit.c

📁 全自动剥线机(C语言源码+DOC文档说明)
💻 C
📖 第 1 页 / 共 5 页
字号:
              {
              	 g_uint_ptr = (uint xdata *)(AD_PROGRAM+d_uintreg*CN_COMBYTE+ADPAGE2[d_itemcnter]);
              }
              d_uintreg = *g_uint_ptr; /*get the current program item value. */
              Number_Chg(d_uintreg);
              Number_Show(d_itemcnter);
              break;     
         case 7:
              g_uintreg0 = 0;
              g_uintreg1 = 0;
              g_deldot = CN_STARTSHOW;
              Start_Lastchg(g_deldot);
              Number_Show(d_itemcnter);
              break;
         default:
              break;
      }
   }
   Show_Crystal();
}

/***************************************************************************

NAME:       Prodcnt_show

FUNCTION:   This procedure will show the product counter.

INPUTS:     product counter

OUTPUTS:    NONE

***************************************************************************/
void Prodcnt_Show(uint d_prodcnter)
{
   g_uint_ptr = (uint xdata *)AD_PRDUCNTER;
  *g_uint_ptr = d_prodcnter;
   Number_Chg(d_prodcnter);
   Number_Show(3);
   Show_Crystal();
}

/***************************************************************************

NAME:       Sel_Handle

FUNCTION:   This procedure will handle the key value in the select status.

INPUTS:     key value

OUTPUTS:    enter sub program

***************************************************************************/
void Sel_handle(uchar d_keyvalue)
{
   uchar i;

   switch(d_keyvalue)
   {
     case CN_KEYCLRTA:
          if(g_itemcnter!=8)
          {
             Signal_Show(g_itemcnter,CN_NWHITE);
          }
          g_systemsta = CN_SELSTA;
          g_pagecnter = 0;
          g_itemcnter = 3;
          g_uint_ptr = (uint xdata *)AD_GROUPCNTER;
         *g_uint_ptr = 0;
          g_uint_ptr = (uint xdata *)AD_PRDUCNTER;
         *g_uint_ptr = 0;
          Page0_Show();
          break;
     case CN_KEYDOWN:
          if(g_itemcnter>=7)
          {
            g_itemcnter = 7;
            Item_Show(g_itemcnter,FALSE);
            g_itemcnter = 0;
          }
          else
          {
            Item_Show(g_itemcnter,FALSE);
            g_itemcnter++;
          }
          Item_Show(g_itemcnter,TRUE);
          break;
     case CN_KEYUP:
          if(g_itemcnter>7)
          { g_itemcnter = 7; }
          else if(g_itemcnter==0)
          {
            Item_Show(g_itemcnter,FALSE);
            g_itemcnter = 7;
          }
          else
          {
            Item_Show(g_itemcnter,FALSE);
            g_itemcnter--;
          }
          Item_Show(g_itemcnter,TRUE);
          break;
     case CN_KEYCHGP:  /* change the page. */
          if(g_pagecnter>=2)
          {  g_pagecnter = 0; }
          else
          {  g_pagecnter++;   }
          switch(g_pagecnter)
          {
             case 0:
                  Page0_Show();
                  break;
             case 1:
                  Page1_Show();
                  break;
             case 2:
                  Page2_Show();
                  break;
             default:
                  break;
          }
          break;
     case CN_KEYESC:
          if(g_itemcnter<8)
          {
            Item_Show(g_itemcnter,FALSE);
            g_itemcnter = 8;
          }
          break;
     case CN_KEYSTART:  /* start the process operation. */
          g_pagecnter = 0; /* the 0 page. */
          g_itemcnter = 8; /* the 8 item. */
          g_char_ptr = (uchar xdata *)AD_TEMPDOTSTA;
         *g_char_ptr = g_dotshow;
          g_systemsta = CN_SELSTA;
          Page0_Show();
          Process_Exec();
          g_char_ptr = (uchar xdata *)AD_TEMPDOTSTA;
          g_dotshow = *g_char_ptr;
          g_pagecnter = 0; /* the 0 page. */
          g_itemcnter = 8; /* the 8 item. */
          g_systemsta = CN_SELSTA;
          break;
     case CN_KEYPROGNUM:
     case CN_KEYWIREL:
     case CN_KEYWIREH:
     case CN_KEYWIRER:
     case CN_KEYSTRIPH:
     case CN_KEYSTRIPR:
          switch(d_keyvalue)
          {
             case CN_KEYPROGNUM:
                  i = 0;
                  break;	
             case CN_KEYWIREL:
                  i = 2;
                  break;
             case CN_KEYWIREH:
                  i = 4;
                  break;
             case CN_KEYWIRER:
                  i = 6;
                  break;
             case CN_KEYSTRIPH:
                  i = 5;
                  break;
             case CN_KEYSTRIPR:
                  i = 7;
                  break;
             default:
                  break;
          }
          if(g_pagecnter!=0)
          {
             g_itemcnter = i;
             g_pagecnter = 0;
             Page0_Show();
          }
          else
          {
             if(g_itemcnter!=8)
             {
                Item_Show(g_itemcnter,FALSE);
             }
             g_itemcnter = i;
             Item_Show(g_itemcnter,TRUE);
          }
          g_systemsta = CN_EDITSTA;
          g_firstedit = TRUE;
          g_firstmody = TRUE;
          Signal_Show(g_itemcnter,CN_EDITF);
          break;
     case CN_KEYWIRERA:
     case CN_KEYCUTBK:
          switch(d_keyvalue)
          {
             case CN_KEYWIRERA:
                  i = 0;
                  break;
             case CN_KEYCUTBK:
                  i = 1;
                  break;
             default:
                  break;     
          }
          if(g_pagecnter!=1)
          {
             g_itemcnter = i;
             g_pagecnter = 1;
             Page1_Show();
          }
          else
          {
             if(g_itemcnter!=8)
             {
                Item_Show(g_itemcnter,FALSE);
             }
             g_itemcnter = i;
             Item_Show(g_itemcnter,TRUE);
          }
          g_systemsta = CN_EDITSTA;
          g_firstedit = TRUE;
          g_firstmody = TRUE;
          Signal_Show(g_itemcnter,CN_EDITF);
          break;
     case CN_KEYENTER:
          if(g_itemcnter!=8)
          {
             if(g_pagecnter==0)
             {
             	g_systemsta = CN_EDITSTA;
                g_firstedit = TRUE;
                g_firstmody = TRUE;
             	Signal_Show(g_itemcnter,CN_EDITF);
             }
             if(g_pagecnter==2)
             {
                switch(g_itemcnter)
                {
                   case 0:
             	   case 1:
             	   case 2:
             	   case 3:
             	   case 4:
             	        g_uint_ptr = (uint xdata *)AD_PROGCNTER;
                        if((*g_uint_ptr)>=CN_COMPROG)
                        {
                           g_systemsta = CN_EDITSTA;
                           g_firstedit = TRUE;
                           g_firstmody = TRUE;
             	           Signal_Show(g_itemcnter,CN_EDITF);
                        }
                        break;
                   case 6:
                   case 7:
                        g_systemsta = CN_EDITSTA;
                        g_firstedit = TRUE;
                        g_firstmody = TRUE;
             	        Signal_Show(g_itemcnter,CN_EDITF);
                        break;
                   default:
                        break;
                }
             }
             if(g_pagecnter==1)
             {
                switch(g_itemcnter)
                {
                   case 0:
             	   case 1:
             	   case 2:
             	   case 3:
             	   case 4:
             	   case 5:
             	   case 6:
             	        g_systemsta = CN_EDITSTA;
                        g_firstedit = TRUE;
                        g_firstmody = TRUE;
              	        Signal_Show(g_itemcnter,CN_EDITF);
             	        break;
             	   case 7:
             	        g_systemsta = CN_EDITSTA;
                        g_firstedit = TRUE;
                        g_firstmody = TRUE;
                        Hzinfo_Show(CN_READY);
              	        Signal_Show(g_itemcnter,CN_EDITF);
              	        Rece_Handle();
             	        break;
             	   default:
             	        break;
                }
             }
          }
          break;
     default:
          break;
   }
   Show_Crystal();
}

/***************************************************************************

NAME:       Edit_Pg0it0

FUNCTION:   This procedure will handle the key value in page 0 item 0 .

INPUTS:     key value

OUTPUTS:    NONE

***************************************************************************/
void Edit_Pg0it0(uchar d_keyvalue)
{
   if(g_firstedit==TRUE)
   {
      g_firstedit = FALSE;
      g_uint_ptr = (uint xdata *)AD_PROGCNTER;
      g_uintreg0 = *g_uint_ptr; /* get the current program counter. */
   }
   switch(d_keyvalue)
   {
      case 0:
      case 1:
      case 2:
      case 3:
      case 4:
      case 5:
      case 6:
      case 7:
      case 8:
      case 9:
           if(g_firstmody==TRUE)
           {
              g_firstmody = FALSE;
              g_uintreg0 = d_keyvalue;
           }
           else
           {
              if(g_uintreg0*10+d_keyvalue<=CN_PROGTOTAL)
              {
              	 g_uintreg0 = g_uintreg0*10+d_keyvalue;
              }
           }
           P0num_Show(g_uintreg0);
           break;
      case CN_KEYUP:
           if(g_uintreg0<CN_PROGTOTAL)
           {
              g_uintreg0++;
              g_firstmody = FALSE;
              P0num_Show(g_uintreg0);
           }
           break;
      case CN_KEYDOWN:
           if(g_uintreg0>=1)
           {
              g_uintreg0--;
              g_firstmody = FALSE;
              P0num_Show(g_uintreg0);
           }
           break;
      case CN_KEYCLR:
           g_uintreg0 = 0;
           P0num_Show(g_uintreg0);
           break;
      case CN_KEYESC:
           g_systemsta = CN_SELSTA;
           g_uint_ptr = (uint xdata *)AD_PROGCNTER;
           g_uintreg0 = *g_uint_ptr;
           P0num_Show(g_uintreg0);
           Signal_Show(g_itemcnter,CN_NWHITE);
           break;
      case CN_KEYENTER:
           g_systemsta = CN_SELSTA;
           g_uint_ptr = (uint xdata *)AD_PROGCNTER;
          *g_uint_ptr = g_uintreg0;
           P0num_Show(g_uintreg0);
           Signal_Show(g_itemcnter,CN_NWHITE);
           break;
      default:
           break;
   }
}

/***************************************************************************

NAME:       Edit_Pg0it1

FUNCTION:   This procedure will handle the key value in page 0 item 1 .

INPUTS:     key value

OUTPUTS:    NONE

***************************************************************************/
void Edit_Pg0it1(uchar d_keyvalue)
{
   if(g_firstedit==TRUE)
   {
      g_firstedit = FALSE;
      g_uint_ptr = (uint xdata *)AD_PROGCNTER;
      g_uintreg0 = *g_uint_ptr;
      if(g_uintreg0>=CN_COMPROG)
      {
      	 g_uintreg1 = AD_MIDSRAM+(g_uintreg0-CN_COMPROG)*CN_MIDBYTE+AD_RUNSPEED;
         g_char_ptr = (uchar xdata *)g_uintreg1;

      }
      else
      {
         g_uintreg1 = AD_PROGRAM+g_uintreg0*CN_COMBYTE+AD_RUNSPEED;
         g_char_ptr = (uchar xdata *)g_uintreg1;
      }
      g_charreg0 = *g_char_ptr; /*get the current program speed value. */
   }
   switch(d_keyvalue)
   {
      case 0:
      case 1:
      case 2:
      case 3:
      case 4:
      case 5:
      case 6:
      case 7:
      case 8:
      case 9:
           g_charreg0 = d_keyvalue;
           Number_Chg((uint)(g_charreg0));
           Number_Show(g_itemcnter);
           break;
      case CN_KEYUP:
           if(g_charreg0<CN_MAXSPEED)
           {
              g_charreg0++;
              g_firstmody = FALSE;
              Number_Chg((uint)(g_charreg0));
              Number_Show(g_itemcnter);
           }
           break;
      case CN_KEYDOWN:
           if(g_charreg0>CN_MINSPEED)
           {

⌨️ 快捷键说明

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