51单片机结构很简单,IO口是准输入输出的,无法设置,不像其他一些高级点的单片机。P1,P2,P3口的上拉电阻都是固化在芯片内部的,不能通过软件设置断开。你想把上拉电阻取消作为输入口,估计是想实现模拟输入,51单片机实现不了。可以用一下STM32,控制起来也很简单,但IO口强大得多,能实现你想要的功能。51准输入:你首先把IO口置高,然后读取IO口的电平即可得知连在IO口上的外部电平。