使用继电器不工作的Arduino自关机

时间:2017-01-17 10:04:54

标签: arduino

我正在开发一个需要关闭arduino主电源(不是睡眠)以节省电池的项目。 请遵循以下教程: zola lab

这是Zola计划(我选择中继选项):

enter image description here

这就是我所做的: enter image description here

代码:

//  www.zolalab.com.br  -  By Eduardo Zola  -  2016


void setup() 
{
   pinMode(7,OUTPUT);    // Relay Signal Pin
   digitalWrite(7,HIGH);

   pinMode(8,OUTPUT);     // buzzer & LED  (start with buzzer on)
   digitalWrite(8,HIGH);  

   pinMode(13,OUTPUT);   // LED built-in Arduino
   digitalWrite(13,HIGH);

   delay(50);           
   digitalWrite(8,LOW);   // turn off buzzer


   delay(5000);   // wait for 5 seconds to shutdown the circuit


   for(int i = 0;i<3;i++){
    digitalWrite(8,HIGH);delay(80);digitalWrite(8,LOW);delay(600);
   };   // beeps
   digitalWrite(8,HIGH);delay(1000);digitalWrite(8,LOW);

   digitalWrite(7,LOW);  // shutdown the circuit

}

void loop() 
{

}

我的主板5v面包板位于左上方。

继电器不同。我的接力是这样的: enter image description here

问题是,当我点击面包板中的开关按钮时,什么都没发生。 任何帮助都将非常感激。

2 个答案:

答案 0 :(得分:1)

像你这样的面包板通常在中间分开电源导轨。在您的设置照片上,看起来您将电源连接到电路板的上半部分,并将电路重置为较低的电路。尝试连接同一半的所有内容,或使用跳线连接电源轨。

答案 1 :(得分:0)

找到解决方案。 针对第7针将digitalWriteHIGH更改为LOW,将LOW更改为HIGH

void setup() 
{
    pinMode(7,OUTPUT);    // Relay Signal Pin
    digitalWrite(7,LOW); // <-- change this

    ...
    ...

    digitalWrite(7,HIGH);  // shutdown the circuit <-- change this too
}

void loop() 
{
}

希望这有助于其他人进行相同的接力。