• 大小: 23KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-24
  • 语言: 其他
  • 标签: 430  4*4  矩阵键盘  

资源简介

适用于MSP430的4*4键盘程序,基于P2口中断

资源截图

代码片段和文件信息

//////////////////////////////////////////////////////////
/*******矩阵键盘驱动测试程序*****************************/
//函数功能:使用P2引脚的I/O中断对4*4键盘编码
//作者:刘意
//编写时间:2011年8月10日

#include 
unsigned char Out[] = { 0XF7 0XFB 0XFD 0XFE }; //P2.3~P2.0依次输出低电平
unsigned char Key_ROW;                            //按键横排标记
unsigned char Key_COL;                            //按键列标记             
void Port2_Init_1(void)                 
{
  P2DIR = 0X0F;                         //P2.0~P2.3输出
                                        //P2.4~P2.7输入
  P2SEL = 0X00;                         //普通I/O口
  P2OUT = 0XF0;
}              

void Port2_IE_Init(void)                          
{
  P2IE = 0XF0;      //开启P2.4~P2.7的跳变中断
  P2IES = 0XFF;     //下降沿触发
  P2IFG = 0X00;     //清除中断标志位
}
void Port4_Init( void )                 
{
  P4DIR = 0XFF;                         //设置P4输出
  P4SEL = 0X00;                         //P4用作普通I/O
  P4OUT = 0XFF;                         //P4输出高电平,共阳极LED熄灭
}

void LED_lighten( unsigned char key)    //点亮相应LED
{
  unsigned int i;
  switch ( key )
  {
  case 0:
    {
      P4OUT &= ~BIT0;
      for( i = 60000; i > 0; i-- );
      P4OUT |= BIT0;
    }break;
    case 1:
    {
      P4OUT &= ~BIT1;
      for( i = 60000; i > 0; i-- );
      P4OUT |= BIT1;
    }break;
    case 2:
    {
      P4OUT &= ~BIT2;
      for( i = 60000; i > 0; i-- );
      P4OUT |= BIT2;
    }break;
    case 3:
    {
      P4OUT &= ~BIT3;
      for( i = 60000; i > 0; i-- );
      P4OUT |= BIT3;
    }break;
    case 4:
    {
      P4OUT &= ~BIT4;
      for( i = 60000; i > 0; i-- );
      P4OUT |= BIT4;
    }break;
    case 5:
    {
      P4OUT &= ~BIT5;
      for( i = 60000; i > 0; i-- );
      P4OUT |= BIT5;
    }break;
    case 6:
    {
      P4OUT &= ~BIT6;
      for( i = 60000; i > 0; i-- );
      P4OUT |= BIT6;
    }break;
    case 7:
    {
      P4OUT &= ~BIT7;
      for( i = 60000; i > 0; i-- );
      P4OUT |= BIT7;
    }break;
    case 8:
    {
      P4OUT &= ~(BIT0 + BIT1);
      for( i = 60000; i > 0; i-- );
      P4OUT |= (BIT0 + BIT1);
    }break;
    case 9:
    {
      P4OUT &= ~(BIT0 + BIT2);
      for( i = 60000; i > 0; i-- );
      P4OUT |= (BIT0 + BIT2);
    }break;
    case 10:
    {
      P4OUT &= ~(BIT0 + BIT3);
      for( i = 60000; i > 0; i-- );
      P4OUT |= (BIT0 + BIT3);
    }break;
    case 11:
    {
      P4OUT &= ~(BIT0 + BIT4);
      for( i = 60000; i > 0; i-- );
      P4OUT |= (BIT0 + BIT4);
    }break;
    case 12:
    {
      P4OUT &= ~(BIT0 + BIT5);
      for( i = 60000; i > 0; i-- );
      P4OUT |= (BIT0 + BIT5);
    }break;
    case 13:
    {
      P4OUT &= ~(BIT0 + BIT6);
      for( i = 60000; i > 0; i-- );
      P4OUT |= (BIT0 + BIT6);
    }break;
    case 14:
    {
      P4OUT &= ~(BIT0 + BIT7);
      for( i = 60000; i > 0; i-- );
      P4OUT |= (BIT0 + BIT7);
    }break;
    case 15:
    {
      P4OUT &= ~(BIT0

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      46742  2011-08-10 13:03  KeyBoard\KeyBoard.ewp

     文件       2672  2011-08-10 20:55  KeyBoard\settings\KeyBoard.cspy.bat

     文件       3060  2011-08-10 20:55  KeyBoard\settings\KeyBoard.ewp.wsdt

     文件       1032  2011-08-10 20:55  KeyBoard\settings\KeyBoard.dni

     文件       5147  2011-08-10 20:55  KeyBoard\settings\KeyBoard.dbgdt

     文件      20591  2011-08-10 20:54  KeyBoard\Debug\Exe\KeyBoard.d43

     文件        168  2011-08-10 20:55  KeyBoard\Debug\Obj\KeyBoard.pbd

     文件      29213  2011-08-10 20:54  KeyBoard\Debug\Obj\main.r43

     文件        162  2011-08-10 13:02  KeyBoard\KeyBoard.ewp.eww

     文件       2085  2011-08-10 20:55  KeyBoard\KeyBoard.dep

     文件       5695  2011-08-10 20:55  KeyBoard\main.c

     文件      13744  2011-08-10 13:03  KeyBoard\KeyBoard.ewd

     目录          0  2011-08-10 12:55  KeyBoard\Debug\Exe

     目录          0  2011-08-10 12:55  KeyBoard\Debug\Obj

     目录          0  2011-08-10 12:55  KeyBoard\Debug\List

     目录          0  2011-08-10 12:55  KeyBoard\settings

     目录          0  2011-08-10 12:55  KeyBoard\Debug

     目录          0  2011-08-10 12:54  KeyBoard

----------- ---------  ---------- -----  ----

               130311                    18


评论

共有 条评论