Pergunta: Onde coloco o código se quero que ele seja executado apenas uma vez por inicialização do Arduino?
Antecedentes: costumo usar meu Arduino para executar tarefas que devem ser executadas uma vez por ciclo de energia. (Por exemplo, meu robô só deve avançar uma vez toda vez que o ligar - mais do que isso, e pode cair da mesa.)
O "modelo" padrão do Arduino IDE consiste em loop()
uma setup()
função. O setup
código é executado uma vez por ciclo de energia e loop
é reiniciado toda vez que termina.
Vejo duas abordagens para codificar "tarefas únicas:"
Método 1: "Loop uma vez"
void setup() {
//do setup stuff
}
void loop() {
//do task
while(1) ; //Repeat forever, preventing function from re-starting
}
Método 2: "Somente instalação"
void setup() {
//do setup stuff
//do task
}
void loop() {
//do nothing
}
Forma mais detalhada de pergunta: Um desses métodos é "melhor" no sentido de hardware / software? (por exemplo, existe algo "especial" sobre a setup
função, que só pode ser executada por tanto tempo?)
E, se forem iguais da perspectiva do hardware / software, existe uma "melhor prática" ou uma maneira padrão de escrever código para essas situações na comunidade Arduino?
exit
comando é discutido em arduino.stackexchange.com/questions/188/…