zoukankan      html  css  js  c++  java
  • 2.29

    #define NO_REMOTE 0x00
    #define USE_REMOTE 0x01
    //#define CONTROL_MODE NO_REMOTE
    #define CONTROL_MODE USE_REMOTE
    //00 7F XX
    #define BUTTON_0  0x14
    #define BUTTON_1  0x04
    #define BUTTON_2  0x10
    #define BUTTON_3  0x11
    #define BUTTON_4  0x01
    #define BUTTON_5  0x19
    #define BUTTON_6  0x1D
    #define BUTTON_7  0x55
    #define BUTTON_8  0x56
    #define BUTTON_9  0x57
    #define BUTTON_INPUT 0x53
    #define BUTTON_OUTPUT 0x47
    #define BUTTON_SWITCH 0x0A
    #define BUTTON_VGA  0x5D


    #define REMOTE_START_CMD1 0x00
    #define REMOTE_START_CMD2 0x7F

    if(UartTick == 3)
          {
           if((UartCmds[0]  == REMOTE_START_CMD1)&&(UartCmds[1]  == REMOTE_START_CMD2))
           {
            UartDetected = TRUE;
            ES = 0;
           }
          }

    #elif(CONTROL_MODE==USE_REMOTE) 
    /* for(cTick=0;cTick<UartCmds[cTick];cTick++)
      {
       if(UartCmds[cTick]==Botton_SWITCH)
        Remote_SwitchPort();
       else if(UartCmds[cTick]==Botton_RESET)
        Remote_Detect();
       else if
        Remote_Detect();
      }
    */
     if(UartDetected == TRUE)  //UartDetected,处理
     {
      Remote_Detect();
      UartDetected = FALSE; //UartDetect继续接收
      ES = 1;
      UartTick =0;
     }
    #endif
    }

    void Remote_Detect(void)
    { //BYTE Input1,Input2,Output1,Output2;
     BYTE Remote_Buffer[10];
     BYTE Remote_State;
     printf("\r\nKeycode=%d",UartCmds[2]);
     switch(UartCmds[2])
      {
       case BUTTON_VGA:  Remote_Index=0; break;
       case BUTTON_INPUT:  Remote_State=Remote_Input;break;
       case BUTTON_OUTPUT:  Remote_State=Remote_Output;break;
       case BUTTON_SWITCH: 
       case BUTTON_0:   NumInput=1;{if(Remote_State=Remote_Input)Input=0x00;else if(Remote_State=Remote_Output)Output=0x00;}
       case BUTTON_1:   Input=0x00;
       case BUTTON_2:   Input=0x00;
       case BUTTON_3:   Input=0x00;
       case BUTTON_4:   Input=0x00;
       case BUTTON_5:   Input=0x00;
       case BUTTON_6:   Input=0x00;
       case BUTTON_7:   Input=0x00;
       case BUTTON_8:   Input=0x00;
       case BUTTON_9:   Input=0x00;
       default: break;
        
      }

    if(Remote_Index==0)
    {
     if(Remote_State==Remote_Input)
      {
       if(NumInput==1)
        {
         Input=UartCmds[2];
        }
      }
    }

  • 相关阅读:
    汉诺塔
    给出一个字符串,要求插入最少的字符,使得原字符串为一个回文串
    最长回文子串
    回文数 第N个回文数
    屋子里有1到100号100盏关闭的灯
    无头结点的单链表删除一个中间结点
    单链表逆转
    编程之美2.21 加法
    在一个数组中找 差值最大的两个数 差值最小的两个数 推广到 点对
    斐波那契
  • 原文地址:https://www.cnblogs.com/spartan/p/2373510.html
Copyright © 2011-2022 走看看