key_scan.c

来自「这是一个msp430程序」· C语言 代码 · 共 60 行

C
60
字号
#include "key_scan.h"

uchar get_code(uchar i)
{
  uchar t;
  switch(i)
  {
    case(0):t=0xc0;break;
    case(1):t=0xf9;break;
    case(2):t=0xa4;break;
    case(3):t=0xb0;break;
    case(4):t=0x99;break;
    case(5):t=0x92;break;
    case(6):t=0x82;break;
    case(7):t=0xf8;break;
    case(8):t=0x80;break;
    case(9):t=0x90;break;
  }
  return t;
}

void display(uchar x)
{
  P4OUT = get_code(x%10);
  P5OUT = get_code(x/10);  
}

char Key_Scan( void )
{ 
   char temp=4;
   if(!((P1IN&BIT4) >> 4))
    {
      P5OUT = get_code(4);
      P4OUT = get_code(4);
      temp = 0;
    }
    
    if(!((P1IN&BIT5) >> 5))
    {
      P5OUT = get_code(5);
      P4OUT = get_code(5);
      temp = 1;
    }
    
    if(!((P1IN&BIT6) >> 6))
    {
      P5OUT = get_code(6);
      P4OUT = get_code(6);
      temp = 2;
    }
    
    if(!((P1IN&BIT7) >> 7))
    {
      P5OUT = get_code(7);
      P4OUT = get_code(7);
      temp = 3;
    }
    return temp;
}

⌨️ 快捷键说明

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