Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1965933
  • 博文数量: 356
  • 博客积分: 8284
  • 博客等级: 中将
  • 技术积分: 4580
  • 用 户 组: 普通用户
  • 注册时间: 2009-05-15 20:25
个人简介

天行健,君子以自强不息

文章分类

全部博文(356)

文章存档

2018年(1)

2016年(4)

2015年(13)

2014年(14)

2013年(2)

2012年(25)

2011年(43)

2010年(65)

2009年(189)

分类:

2010-01-03 00:11:53

#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;
  }
  
  
}
阅读(956) | 评论(0) | 转发(0) |
0

上一篇:ATMEGA128 流水灯程序

下一篇:自己做的音箱

给主人留下些什么吧!~~