这个keil5一直报错说我没有定义变量
#include <regx52.h>
#include "delay.h"
unsigned char MatrixKey() {
unsigned char KeyNumber = 0;
P1 = 0xff;
P1_3 = 0;
if (P1_7 == 0){delay(20);while (P1_7 == 0); delay (20);KeyNumber = 1;}
if (P1_6 == 0){delay(20);while (P1_6 == 0); delay (20);KeyNumber = 5 ;}
if (P1_5 == 0){delay(20);while (P1_5 == 0); delay (20);KeyNumber = 9;}
if (P1_4 == 0){delay(20);while (P1_4 == 0); delay (20);KeyNumber = 13;}
P1 = 0xff;
P1_2 = 0;
if (P1_7 == 0){delay(20);while (P1_7 == 0); delay (20);KeyNumber = 2;}
if (P1_6 == 0){delay(20);while (P1_6 == 0); delay (20);KeyNumber = 6 ;}
if (P1_5 == 0){delay(20);while (P1_5 == 0); delay (20);KeyNumber = 10;}
if (P1_4 == 0){delay(20);while (P1_4 == 0); delay (20);KeyNumber = 14;}
P1 = 0xff;
P1_1 = 0;
if (P1_7 == 0){delay(20);while (P1_7 == 0); delay (20);KeyNumber = 3;}
if (P1_6 == 0){delay(20);while (P1_6 == 0); delay (20);KeyNumber = 7 ;}
if (P1_5 == 0){delay(20);while (P1_5 == 0); delay (20);KeyNumber = 11;}
if (P1_4 == 0){delay(20);while (P1_4 == 0); delay (20);KeyNumber = 15;}
P1 = 0xff;
P1_0 = 0;
if (P1_7 == 0){delay(20);while (P1_7 == 0); delay (20);KeyNumber = 4;}
if (P1_6 == 0){delay(20);while (P1_6 == 0); delay (20);KeyNumber = 8 ;}
if (P1_5 == 0){delay(20);while (P1_5 == 0); delay (20);KeyNumber = 12;}
if (P1_4 == 0){delay(20);while (P1_4 == 0); delay (20);KeyNumber = 16;}
return KeyNumber ;
}
matrixkey.c(22): error C202: 'KeyNumber': undefined identifier
matrixkey.c(23): error C202: 'KeyNumber': undefined identifier
matrixkey.c(24): error C202: 'KeyNumber': undefined identifier
我明明定义了,究竟是哪里错了?