这要配合看键盘扫描电路和扫描原理比如4x4键盘16键扫描电路,注意:这个图用的是 P1,你的程序用的是P3对于51单片机,当需要读取管脚状态时需要先给管脚赋值1根据矩阵键盘的原理图可知依次将P1^0~P1^3单独置低电平,其他置高,再读取P1的高4位,就能判断是那个键按下。比如,将P1^0输出低电平,其他的引脚都输出高电平,即P1=0xfe,那么当第1行有按键按下时读取P1的高4位去确定按键位置。