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

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

问题描述:

我想知道是否连接了电缆。所以我想连接让我们说引脚6到引脚13.现在我设置引脚6的引脚模式来输出引脚13的引脚模式到输入。然后我用的digitalWrite方法,看看是否有针13和6从同一个arduino上的引脚进行数字读取?

这之间的连接代码:

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

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

} 

不幸的是,这并不工作:(

这样还能有什么怎么办?

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

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);} 
} 

你在谈论digitalReaddigitalWrite但在代码analogReadanalogWrite来代替。

analogWrite设置PWM支持PWM的引脚。但是,如果您的引脚不支持PWM,则它会设置LOWHIGH(不确定何时,如果值大于127或最差情况等于255)。而且在大多数主板上,通常不支持PWM,因此13引脚通常不支持。

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