我也是学生啊,学生用学校的邮箱注册TI的账号,申请样片的成功率特别高,所以我就是申请的5529和2553。我有一段矩阵按键的程序是5529的,亲测可用/*
* ArrayKey.c
*
* Created on: 2014年7月16日
* Author: swj
*/
#include "msp430.h"
#include "global.h"
uchar i,j,keyvalue = 1,temp;
static const uchar buffer[4] = {0xef,0xdf,0xbf,0x7f};
void KeyIO_init()
{
P6DIR = 0xF0;
P6OUT = 0x0F;
P6REN = 0x0F;
}
uchar KeyScan()
{
for(j = 0;j < 4;j++)
{
P6OUT = buffer[j];
delay_us(2);
temp = 0x01;
for(i = 0;i < 4;i++)
{
if(!(P6IN & temp))
{
return ((i + 4*j) + 1);
}
temp <<= 1;
}
}
}
uchar Key_16()
{
KeyIO_init();
if((P6IN & 0x0f) != 0x0f)
{
delay_ms(5);
if((P6IN & 0x0f) != 0x0f)
{
keyvalue = KeyScan();
}
while((P6IN & 0x0f) != 0x0f);//防止按键久按不放
}
return keyvalue;
}
|