51单片机的P1口整体作为输入时,是不是要通过程序使P1口都是高电平?

程序这样写可以吗?#include<reg51.h>unsignedcharA;voidmain(void){P1=1;//使P1口都是高电平,使其整体作为输入...//... 程序这样写可以吗?

#include <reg51.h>
unsigned char A;
void main(void)
{
P1=1; //使P1口都是高电平,使其整体作为输入
... //假设P1口与ADC0808的输出口相连,这里省去的程序为AD转化程序
...
...
A=P1; //AD转化好的数据已经送到P1口,然后赋给变量A
... //对数据的处理,此处略去
...
...
}
展开
 我来答
GUEL86
2013-02-06 · TA获得超过5855个赞
知道大有可为答主
回答量:5538
采纳率:86%
帮助的人:2686万
展开全部
51单片机, 在上电 或者 复位后,I/O 口的 初始值 都是 高电平
P1=1; // 这个语句 只对 P1^0 设置为 高电平。
P1=0xff; // 这个语句 才是 对 P1 的整个 端口 设置为 高电平。
更多追问追答
追问
嗯,确实是0xff。
不过,由于我要使P1口接收好多组8位的数据,那么每当要接收一组数据之前,是不是都要像我所写的程序那样,得把P1口全部置为高电平?
追答
其实 不用,只要你没有 对其 写入 数据 就不用,如果你有输出 写入过数据,那就需要。
堂秋0Gw
2013-02-06 · TA获得超过595个赞
知道小有建树答主
回答量:570
采纳率:0%
帮助的人:527万
展开全部
I/O口的输入输出做到一起的,输出为0相当于接地,输出为1相当于不接地再加上上拉,输入则是采样当前时刻的端口电压值。所以,输出为0时总会读成0(接地);输出为1,信号为0时只要信号的“地”够强,也可以读成0。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
870035058
2013-02-06 · TA获得超过165个赞
知道答主
回答量:241
采纳率:0%
帮助的人:113万
展开全部
楼上都是对的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式