请问IO口INPUT模式自己输入高电平是什么原因
int out1 = 2;int out1_kg1 = 5;
int out1_kg2 = 6;
int out1_kg1_st = LOW;
int out1_kg2_st = LOW;
void setup()//程序初始化
{
pinMode(out1_kg1,INPUT);
pinMode(out1_kg2,INPUT);
//pinMode(out1,OUTPUT);
Serial.begin(9600);//设置波特率9600
delay(500);
//out1_kg1_st = digitalRead(out1_kg1);
//out1_kg2_st = digitalRead(out1_kg2);
}
void loop()//程序主体循环
{
int tp1 = digitalRead(out1_kg1);
int tp2 = digitalRead(out1_kg2);
Serial.println(tp1);
Serial.println(tp2);
Serial.println("---------");
delay(1000);
}
用的是 pro mini 但是我io口上什么都没接怎么会一会输入HIGH,一会输入LOW,这是什么原因啊。。 默认是浮空输入,电平本身就不确定,你可以选择内部上拉或者外部上拉,上拉后,电平默认为高。
内部上拉设置
pinMode(out1_kg1, INPUT_PULLUP);
pinMode(out1_kg2, INPUT_PULLUP);
pathletboy 发表于 2016-12-4 14:53
默认是浮空输入,电平本身就不确定,你可以选择内部上拉或者外部上拉,上拉后,电平默认为高。
内部上拉设 ...
按下按钮会输出什么? 避开电路谈电平,那我只能回答你可高可低。 pathletboy 发表于 2016-12-4 17:28
避开电路谈电平,那我只能回答你可高可低。
pinMode(out1,OUTPUT); pathletboy 发表于 2016-12-4 17:28
避开电路谈电平,那我只能回答你可高可低。
pinMode(out1,OUTPUT);
这样会有影响吗? pathletboy 发表于 2016-12-4 14:53
默认是浮空输入,电平本身就不确定,你可以选择内部上拉或者外部上拉,上拉后,电平默认为高。
内部上拉设 ...
谢谢,问题解决了 悬空引脚可高可低要么上拉要么下拉
页:
[1]