|
#ifndef _KEY_H
#define _KEY_H
#include "stc8g.h"
sbit key_1 = P3^7;
sbit key_2 = P2^1;
sbit key_3 = P2^2;
sbit key_4 = P2^3;
unsigned char key_scan(); //按鍵1按下就返回1,按鍵2按下就返回2,按鍵3.....沒有按鍵就返回0
void delay(unsigned int a);
#endif
#include "key.h"
#include "delay.h"
unsigned char key_scan()
{
unsigned char keynum;
keynum = 0;
if(key_1 == 0)
{
delay(10);
if(key_1 == 0)
{
while(key_1 == 0);
keynum = 1;
}
}
if(key_2 == 0)
{
delay(10);
if(key_2 == 0)
{
while(key_2 == 0);
keynum = 2;
}
}
if(key_3 == 0)
{
delay(10);
if(key_3 == 0)
{
while(key_3 == 0);
keynum = 3;
}
}
return(keynum);
}
#include "stc8g.h"
#include "key.h"
sbit LED_R = P0^5;
//sbit key1 = P3^7;
void main()
{
P0M0 = 0x00; P0M1 = 0x00;
P3M0 = 0x00; P3M1 = 0x00;
while(1)
{
if(key_scan() == 1)
{
LED_R = 0;
}
else
{
LED_R = 1;
}
}
}
|
|