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

📄 key_scan.c

📁 key 430
💻 C
字号:
#include "Key_Scan_IO_MAP.h"
#include "Key_Scan.h"
#define  C_MEM_SIZE 4

__no_init static char aby_KEY_Buffer[C_MEM_SIZE];


void KEY_Initial_IO(void)
{
  char by_Loop;
  for(by_Loop = 0;by_Loop < C_MEM_SIZE;by_Loop++)
   aby_KEY_Buffer[by_Loop] = 0;
  IO_Output_KEY_S0();
  IO_Output_KEY_S1();
  IO_Output_KEY_S2();
  IO_Output_KEY_S3();
  IO_Input_PORT2();
  IO_Clear_KEY_S0();
  IO_Clear_KEY_S1();
  IO_Clear_KEY_S2();
  IO_Clear_KEY_S3();
}


char KEY_Get_Buffer(char by_Address)
{
  return(aby_KEY_Buffer[by_Address]);
}


void KEY_Scan_1ms_Int(void)
{
  static char by_Index = 0;
  switch(by_Index)
   {
     case 0:aby_KEY_Buffer[0] = O_KEY_IN_PORT2;
            //IO_Clear_KEY_S0();
            IO_Clear_KEY_S1();
            //IO_Clear_KEY_S3();
            IO_Set_KEY_S2();
            by_Index = 1;
            break;
     case 1:by_Index = 2;
            break;
     case 2:aby_KEY_Buffer[1] = O_KEY_IN_PORT2;
            IO_Clear_KEY_S2();
            //IO_Clear_KEY_S1();
            //IO_Clear_KEY_S0();
            IO_Set_KEY_S3();
            by_Index = 3;
            break;
     case 3:by_Index = 4;
            break;
     case 4:aby_KEY_Buffer[2] = O_KEY_IN_PORT2;
            //IO_Clear_KEY_S1();
            //IO_Clear_KEY_S2();
            IO_Clear_KEY_S3();
            IO_Set_KEY_S0();
            by_Index = 5;
            break;
     case 5:by_Index = 6;
            break;
     case 6:aby_KEY_Buffer[3] = O_KEY_IN_PORT2;
            IO_Clear_KEY_S0();
            //IO_Clear_KEY_S3();
            //IO_Clear_KEY_S2();
            IO_Set_KEY_S1();
            by_Index = 7;
            break;
     case 7:by_Index = 0;
            break;
   default :break;

  }
}

void  Key_Wake_Cpu_Int(void)
{
  if(P2IFG != 0)
    {
      P2IFG = 0X00;
      P2DIR &= 0X00;
      WDTCTL = 0x6a00;
    }
}

⌨️ 快捷键说明

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