?? key.c
字號(hào):
//-----------------------------------------------------------------------------
//實(shí)驗(yàn)?zāi)康?熟悉2*2鍵盤(pán)操作.按鍵后會(huì)在液晶屏上
//顯示所按下的鍵號(hào),如按S1鍵,在液晶上顯示S1.
//-----------------------------------------------------------------------------
// Includes
//-----------------------------------------------------------------------------
#include <c8051f350.h>
#include <INTRINS.H>
#include <stdio.h>
sbit key1=P1^1;
sbit key2=P1^3;
sbit key3=P1^4;
sbit key4=P1^5;
unsigned long q;
//--------------------------------
void YJ_Init(void);
void Write_CHAR(unsigned char yjchar);
unsigned char key_in(void);
//-----------------------------------------------------
void delay(void)
{
int a=1000;
while(a!=0)
{
a--;
}
}
/*----------------------------------------------------*/
//按鍵連接到p1.1、p1.3、p1.4、P1.5,均為開(kāi)漏輸出
unsigned char key_in(void)
{ XBR0 = 0x00;
P1=0xff;
// P1=0x72;
if(key1==0)
{
key1=1;
delay();//延時(shí)
if(key1==0)
{
while(key1==0);
XBR0 = 0x02;
return(0x31);//返回字符"1"表示按鍵S1按下
}
}
if(key2==0)
{
key2=1;
delay();//延時(shí)
if(key2==0)
{
while(key2==0);
XBR0 = 0x02;
return(0x32);//返回字符"2"表示按鍵S2按下
}
}
if(key3==0)
{
key3=1;
delay();//延時(shí)
if(key3==0)
{
while(key3==0);
XBR0 = 0x02;
return(0x33);//返回字符"3"表示按鍵S3按下
}
}
if(key4==0)
{
key4=1;
delay();//延時(shí)
if(key4==0)
{
while(key4==0);
XBR0 = 0x02;
return(0x34);//返回字符"4"表示按鍵S4按下
}
}
XBR0 = 0x02;
return(0);//返回0,表示沒(méi)有按鍵按下
}
//---------------------------------------------
void main(void)
{
unsigned char data1;
PCA0MD &= ~0x40; // WDTE = 0 (watchdog timer enable bit)
OSCICN |= 0x03; // Set internal oscillator to highest
// setting (24500000)
P0SKIP = 0x7E;
XBR0 = 0x00; // XBAR0: Initial Reset value
XBR1 = 0x40; // XBAR1: Initial Reset value
while(1)
{
data1=key_in(); //讀按鍵
if(data1!=0) //有按鍵按下,顯示對(duì)應(yīng)的按鍵
{
YJ_Init(); //LCD初始化
//準(zhǔn)備送數(shù)據(jù)
for(q=0;q<1000;q++);
Write_CHAR(0x53);
Write_CHAR(data1); //控制LCD
for(q=0;q<1000;q++);
}
}
}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -