小Y

小Y

0个粉丝

4

问答

0

专栏

2

资料

小Y  发布于  2008-08-24 15:26:21
采纳率 0%
4个问答
3127

求4x4单片机键盘扫描程序

 
如题....有的分享下谢谢啊..
我来回答
回答1个
时间排序
认可量排序

lufu

0个粉丝

17

问答

0

专栏

5

资料

lufu 2008-08-24 15:27:24
认可0
#include
//#include
#include
#define uchar unsigned char
#define TURE 1
#define FALSE 0
int key;
int del;
void Tkey(void);
void led(void);


/************主  程序*************/
void main(void)
{
  void tkey(void);
  void led(void);
  void delay(int);

  
  
  SCON=0x00;
  TI=0;
  while(TURE)
  {
   Tkey();
   led();
   delay(2000);
  }

}






/********矩键查寻键值4*4程序******/按键为P1.0---P1.7
void Tkey(void)
{
  uchar readkey;//rereadkey;
  uchar x_temp,y_temp;


  P1=0x0f;
  x_temp=P1&0x0f;
  if(x_temp==0x0f) goto keyout;
  P1=0xf0;
  y_temp=P1&0xf0;
  readkey=x_temp|y_temp;
  readkey=~readkey;


switch(readkey)
    {
            case 0x11:key=0; break;
           case 0x21:key=1; break;
         case 0x41:key=2; break;
         case 0x81:key=3; break;
         case 0x12:key=4; break;
         case 0x22:key=5; break;
         case 0x42:key=6; break;
         case 0x82:key=7; break;
         case 0x14:key=8; break;
         case 0x24:key=9; break;
         case 0x44:key=10;break;
         case 0x84:key=11;break;
         case 0x18:key=12;break;
         case 0x28:key=13;break;
         case 0x48:key=14;break;
         case 0x88:key=15;break;
         default:  key=16;break;
    }

keyout:_nop_();
}




/************显示程序*************/
void led(void)
{uchar code LEDValue[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};  //0-9
uchar data num[6];
uchar k;
num[0]=0;
num[1]=0;
num[2]=0;
num[3]=0;
num[4]=key/10;
num[5]=key-(key/10)*10;

for(k=0;k<=5;k++)
{
   SBUF=LEDValue[num[5-k]];
   while(TI==0);
   TI=0;
}
}





/************延时程序*************/
void delay(del)
{
for(del;del>0;del--);
}
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区