数字从同一个arduino上的引脚读取?

时间:2016-09-21 13:18:06

标签: arduino

我想知道电缆是否已连接。所以我想连接让引脚6到引脚13.现在我将引脚6的pinMode设置为输出引脚13的引脚模式到INPUT。然后我使用digitalWrite方法查看引脚13和6之间是否存在连接。

以下是代码:

void setup() {
  pinMode(6, INPUT);
  pinMode(13, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  analogWrite(13, 100);
  Serial.println(analogRead(6));

}

不幸的是,这不起作用:(

那我还能做什么呢?

2 个答案:

答案 0 :(得分:0)

您谈论的是digitalReaddigitalWrite,但代码analogReadanalogWrite代替使用。

analogWritePWM支持的针脚上设置PWM。但是,如果您的引脚没有PWM支持,则会设置LOWHIGH(不确定何时,如果值大于127,则可能是最差情况39; s等于255)。在大多数主板上,13引脚通常不支持PWM

同样analogRead仅适用于模拟引脚(A0 - An)。所以使用pin 6不是一个好主意。

答案 1 :(得分:0)

据我了解,您正在寻找此代码。我希望这可以达到你的观点

int pin6 = 6;
int pin7 = 7;
int pin8 = 8;
int pin9 = 9;
int pin10 = 10;
int pin11 = 11;
int pin12 = 12;
int pin13 = 13;

void setup()
{
pinMode(pin6, INPUT);
pinMode(pin7, INPUT);
pinMode(pin8, INPUT);
pinMode(pin9, INPUT);
pinMode(pin10, INPUT);
pinMode(pin11, INPUT);
pinMode(pin12, INPUT);
pinMode(pin13, INPUT);
Serial.begin(9600);
}

void loop()
{
pin6status = digitalRead(pin6);
pin7status = digitalRead(pin7);
pin8status = digitalRead(pin8);
pin9status = digitalRead(pin9);
pin10status = digitalRead(pin10);
pin11status = digitalRead(pin11);
pin12status = digitalRead(pin12);
pin13status = digitalRead(pin13);

if (pin6status == HIGH)
{Serial.print(PIN6 = CONNECTED);}
else {Serial.print(PIN6 = NOT CONNECTED)}    

if (pin7status == HIGH)
{Serial.print(PIN 7 = CONNECTED);}
else {Serial.print(PIN 7 = NOT CONNECTED);}

if (pin8status == HIGH)
{Serial.print(PIN8 = CONNECTED);}
else {Serial.print(PIN8 = NOT CONNECTED);}    

if (pin9status == HIGH)
{Serial.print(PIN 9 = CONNECTED);}
else {Serial.print(PIN 9 = NOT CONNECTED);}

if (pin10status == HIGH)
{Serial.print(PIN 10 = CONNECTED);}
else {Serial.print(PIN 10 = NOT CONNECTED);}    

if (pin11status == HIGH)
{Serial.print(PIN 11 = CONNECTED);}
else {Serial.print(PIN 11 = NOT CONNECTED);}

if (pin12status == HIGH)
{Serial.print(PIN 12 = CONNECTED);}
else {Serial.print(PIN 12 = NOT CONNECTED);}    

if (pin13status == HIGH)
{Serial.print(PIN 13 = CONNECTED);}
else {Serial.print(PIN 13 = NOT CONNECTED);}
}