#include
#define xtal 1140
#define uint unsigned int
#define uchar unsigned char
//#define k1 PORTD
//const unsigned char tt[]={0x3F,0x06,0x5B,0x4F,0x66, //0,1,2,3,4
// 0x6D,0x7D,0x07,0x7F,0x6F} //5,6,7,8,9
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=xtal;y>0;y--);
}
void init_led()
{
DDRA=0XFF;
PORTA=0xff;
DDRE=1<<2;
PORTE=1<<2;
}
void init_device()
{
init_led();
init_key();
}
void init_key()
{
DDRD=0X00;
PORTD=0Xff;
}
void keyscan()
{
////////////////////////////////////////key1
if((PIND&0x01)==0)
{
PORTA=0XFE;
//delay(2000);
}
////////////////////////////////////key2
if((PIND&0x02)==0)
{
PORTA=0XFD;
//delay(200);
}
////////////////////////////////////key3
if((PIND&0x04)==0)
{
PORTA=0XFB;
//delay(200);
}
////////////////////////////////////key4
if((PIND&0x08)==0)
{
PORTA=0XF7;
//delay(200);
}
////////////////////////////////////key5
if((PIND&0x010)==0)
{
PORTA=0Xef;
//delay(200);
}
////////////////////////////////////key6
if((PIND&0x20)==0)
{
PORTA=0xdf;
//delay(200);
}
////////////////////////////////////key7
if((PIND&0x40)==0)
{
PORTA=0Xbf;
//delay(200);
}
////////////////////////////////////key8
if((PIND&0x080)==0)
{
PORTA=0X7f;
//delay(200);
}
}
void main()
{
init_device();
while(1)
{
keyscan();
//PORTA=0XFE;
}
}
阅读(1112) | 评论(0) | 转发(0) |