STC89C52,P2口做输入的问题
程序如下:unsigned char VA;
VA = P2;
sbit LB = P1^7;
VA = 0xff;// 获取输入前把P2所有引脚置为1
LB = 1; // 获取输入前把P1^7引脚置为1
...
Read();
实测的时候,从GND直接拉线到P2以及P1^7,发现拉到P1^7可以从LB读到0,但是拉到P2的任何一脚,读VA却总是0XFF,这是怎么回事?P2做输入跟P1有什么不同吗?
unsigned char VA;
VA = 0xff;你这句是给变量VA赋值0xff,与P2端口完全无关
想VA等效P2可以使用宏定义:
#defineVAP2
VA = 0xff;
页:
[1]