haohouse 发表于 2012-7-17 10:50:20

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有什么不同吗?

BXAK 发表于 2012-7-17 13:46:29

unsigned char VA;

VA = 0xff;你这句是给变量VA赋值0xff,与P2端口完全无关


想VA等效P2可以使用宏定义:
#defineVAP2

VA = 0xff;
页: [1]
查看完整版本: STC89C52,P2口做输入的问题