Stap 3: Programma voor Arduino
Programma voor Arduino is in dit geval vrij eenvoudig hier, onthouden dat we aangesloten Tx en Rx op Arduino Rx en Tx op HC-06 Bluetooth-module, dus gewoon de Arduino gewoon ontvangt de teksten van de Rx en doen iets volgens de teksten. Gezien de besparing van de macht ik deze LowPower-bibliotheek toevoegen in de code, kunt u de bibliotheek downloaden van GitHub, link gaat hier: https://github.com/rocketscream/Low-Power
Ik zet Arduoino slaapstand in idle, alleen in deze modus kunt u nog steeds houden USART (Rx & Tx) wakker, wanneer de teksten komen daarin zal wakker van Arduino en het vragen sommige dingen doen, hier is hoe de code eruit ziet:
#include "LowPower.h"
String readString;
VOID Setup {}
Serial.begin(9600);
pinMode (2, OUTPUT);
digitalWrite (2, HIGH);
}
void loop {}
nietig serialEvent();
LowPower.idle (SLEEP_FOREVER, ADC_OFF, TIMER2_OFF, TIMER1_OFF, TIMER0_OFF, SPI_OFF, USART0_ON, TWI_OFF); Laat je Arduino in slaap mode(idel)
}
ongeldig serialEvent() {}
while(Serial.available()) {}
delay(3);
char c = Serial.read();
readString += c;
}
Als (readString.length() > 0)
{
Serial.Print(readString);
Als (readString == "On") {}
digitalWrite (2, laag); Tafellamp inschakelen
}
Als (readString == "Off") {}
digitalWrite (2, HIGH); Tafellamp uitschakelen
}
readString = "";
}
}
De code wordt uitgelegd: de meeste van de tijd je Arduino in de inactieve stand, is alleen wanneer het signaal vandaan Rx pin beginnen zal te werken. U kunt een tekenreeks met de naam readString hier, voor het opslaan van de tekst vandaan Rx pin instellen. Als we in de laatste sectie, praten wanneer je aanraken van de knoppen op de app, stuurt deze teksten via Bluetooth. Dus wanneer je Arduino het bericht "On", gewoon instellen Pin2 zo laag ontvangt, dit signaal de estafette doorkomen, aan de andere kant laat, als je Arduino het bericht "Off", ingestelde Pin2 zo hoog ontvangt, zal deze actie zwenking vandoor uw tafellamp.
Meer Info: Arduino slaap zedig kunnen zijn beetje griezelig, aangezien de 328 ATmega chip zes slaap zedig ondersteunt, maar alleen in de inactieve stand zal USART nog steeds wakker, signalen ontvangen Rx pin om de chip wakker te houden. Normaal wanneer een Arduino werkt in de inactieve stand haar Vermogensdissipatie ongeveer 60% zal dalen, low-power is een vrij koel gebied te ontdekken.