Home Automation met Arduino, Buttons, LCD, EEPROM en slimme telefoon (6 / 7 stap)

Stap 6: Nu we gebruiken EEPROM te sparen laatste status van schakelaars

Met behulp van de EEPROM

Ik ben het toevoegen van interne EEPROM om op te slaan de laatste status

Als het apparaat uit te gaan van de macht en opnieuw aangesloten

het laden van de laatste status van schakelaars

die schakelaars die op voordat de macht af nu zijn ze nog steeds op

 #include <SoftwareSerial.h> // SoftwareSerial mySerial(1, 0); // 1-RX, 0-TX - #include <LiquidCrystal.h>#include <EEPROM.h>int ch1 = A0; int ch2 = A1; int ch3 = A2; int ch4 = A3; LiquidCrystal lcd(12, 11, 5, 4, 3, 2);;//(rs, enable, d4, d5, d6, d7) int switchPin[] = {6,7,8,9}; void setup() { mySerial.begin(9600); pinMode(ch1, OUTPUT); pinMode(ch2, OUTPUT); pinMode(ch3, OUTPUT); pinMode(ch4, OUTPUT);lcd.begin(16, 2);pinMode(switchPin[0], INPUT); digitalWrite(switchPin[0], HIGH); pinMode(switchPin[1], INPUT); digitalWrite(switchPin[1], HIGH); pinMode(switchPin[2], INPUT); digitalWrite(switchPin[2], HIGH); pinMode(switchPin[3], INPUT); digitalWrite(switchPin[3], HIGH); pinMode(switchPin[4], INPUT); digitalWrite(switchPin[4], HIGH); if (EEPROM.read(0) == 1) { // switch is pressed - pullup keeps pin high normally digitalWrite(ch1, HIGH) ; lcd.setCursor(0, 0); lcd.print("r1 ON"); // toggle running variable // indicate via LED } if (EEPROM.read(0) == 0) { // switch is pressed - pullup keeps pin high normally digitalWrite(ch1, LOW) ; lcd.setCursor(0, 0); lcd.print("r1 OFF"); // toggle running variable // indicate via LED } if (EEPROM.read(1) == 1) { // switch is pressed - pullup keeps pin high normally digitalWrite(ch2, HIGH) ; lcd.setCursor(8, 0); lcd.print("r2 ON"); // toggle running variable // indicate via LED } if (EEPROM.read(1) == 0) { // switch is pressed - pullup keeps pin high normally digitalWrite(ch2, LOW) ; lcd.setCursor(8, 0); lcd.print("r2 OFF"); // toggle running variable // indicate via LED } if (EEPROM.read(2) == 1) { // switch is pressed - pullup keeps pin high normally digitalWrite(ch3, HIGH) ; lcd.setCursor(0, 1); lcd.print("r3 ON"); // toggle running variable // indicate via LED } if (EEPROM.read(2) == 0) { // switch is pressed - pullup keeps pin high normally digitalWrite(ch3, LOW) ; lcd.setCursor(0, 1); lcd.print("r3 OFF"); // toggle running variable // indicate via LED } if (EEPROM.read(3) == 1) { // switch is pressed - pullup keeps pin high normally digitalWrite(ch4, HIGH) ; lcd.setCursor(8, 1); lcd.print("r4 ON"); // toggle running variable // indicate via LED } if (EEPROM.read(3) == 0) { // switch is pressed - pullup keeps pin high normally digitalWrite(ch4, LOW) ; lcd.setCursor(8, 1); lcd.print("r3 OFF"); // toggle running variable // indicate via LED } } void loop() { char caracter = mySerial.read(); //--------------------------------ch1--------------------- if(caracter == 'A') { digitalWrite(ch1,HIGH); lcd.setCursor(0, 0); lcd.print("r1 ON"); EEPROM.write(0, 1); }if(caracter == 'a') { digitalWrite(ch1,LOW); lcd.setCursor(0, 0); lcd.print("r1 OFF"); EEPROM.write(0, 0); } //---------------------------------ch1---------------------- //---------------------------------ch2--------------------- if(caracter == 'B') { digitalWrite(ch2,HIGH); lcd.setCursor(8, 0); lcd.print("r2 ON"); EEPROM.write(1, 1); }if(caracter == 'b') { digitalWrite(ch2,LOW); lcd.setCursor(8, 0); lcd.print("r2 OFF"); EEPROM.write(1, 0); } //---------------------------------ch2---------------------- //---------------------------------ch3--------------------- if(caracter == 'C') { digitalWrite(ch3,HIGH); lcd.setCursor(0, 1); lcd.print("r3 ON"); EEPROM.write(2, 1); }if(caracter == 'c') { digitalWrite(ch3,LOW); lcd.setCursor(0, 1); lcd.print("r3 OFF"); EEPROM.write(2, 0); } //---------------------------------ch3---------------------- //---------------------------------ch4--------------------- if(caracter == 'D') { digitalWrite(ch4,HIGH); lcd.setCursor(8, 1); lcd.print("r4 ON"); EEPROM.write(3, 1); }if(caracter == 'd') { digitalWrite(ch4,LOW); lcd.setCursor(8, 1); lcd.print("r4 OFF"); EEPROM.write(3, 0); } //---------------------------------ch4---------------------- if (digitalRead(switchPin[0]) == LOW) { // switch is pressed - pullup keeps pin high normally digitalWrite(ch1, HIGH) ; lcd.setCursor(0, 0); lcd.print("r1 ON"); EEPROM.write(0, 1); } if (digitalRead(switchPin[0]) == LOW) { // switch is pressed - pullup keeps pin high normally digitalWrite(ch1, LOW) ; lcd.setCursor(0, 0); lcd.print("r1 OFF"); EEPROM.write(0, 0); } if (digitalRead(switchPin[1]) == LOW) { // switch is pressed - pullup keeps pin high normally digitalWrite(ch2, HIGH) ; lcd.setCursor(8, 0); lcd.print("r2 ON"); EEPROM.write(1, 1); } if (digitalRead(switchPin[1]) == LOW) { // switch is pressed - pullup keeps pin high normally digitalWrite(ch2, LOW) ; lcd.setCursor(8, 0); lcd.print("r2 OFF"); EEPROM.write(1, 0); } if (digitalRead(switchPin[2]) == LOW) { // switch is pressed - pullup keeps pin high normally digitalWrite(ch3, HIGH) ; lcd.setCursor(0, 1); lcd.print("r3 ON"); EEPROM.write(2, 1); } if (digitalRead(switchPin[2]) == LOW) { // switch is pressed - pullup keeps pin high normally digitalWrite(ch3, LOW) ; lcd.setCursor(0, 1); lcd.print("r3 OFF"); EEPROM.write(2, 0); } if (digitalRead(switchPin[3]) == LOW) { // switch is pressed - pullup keeps pin high normally digitalWrite(ch4, HIGH) ; lcd.setCursor(8, 1); lcd.print("r4 ON");// toggle running variable EEPROM.write(3, 1); } if (digitalRead(switchPin[3]) == LOW) { // switch is pressed - pullup keeps pin high normally digitalWrite(ch4, LOW) ; lcd.setCursor(8, 1); lcd.print("r4 OFF"); EEPROM.write(3, 0); } delay(0); } 

Gerelateerde Artikelen

Home Automation met Arduino

Home Automation met Arduino

In dit Instructable zal ik proberen uit te leggen hoe een server voor huisautomatisering die de mogelijkheid heeft om gemeenschappelijke huishoudelijke elektrische artikelen voor tampon ter te een gemeenschappelijk stekkerdoos met 5-weg-240 v wissels
Smart Home Automation met Android + Ethernet Internet + Arduino

Smart Home Automation met Android + Ethernet Internet + Arduino

Domotica wordt meer en meer populair, betaalbare en fascineert mensen. Internet biedt dergelijke mogelijkheden als nooit tevoren. Maak indruk op uw vrienden tonen op Smartphone, dat u kunt aan/uit-lamp in uw appartement mijl afstand schakelen en tege
Smart Home Automation met Voice command

Smart Home Automation met Voice command

Dit is een stapsgewijze tutorial bouw van het circuit voor 'Smart Home Automation met Voice Command' functie.Download onze gratis Arduino Project Code hier.Vereisten:• Arduino Uno• LED• Weerstand (220 Ohm)• Bluetooth-Module (BlueSmirf / BlueMate Zilv
Home Automation met behulp van de Arduino Uno

Home Automation met behulp van de Arduino Uno

Ooit wilde maken uw huis geautomatiseerde? Wilde de verlichting, ventilator en andere toestellen van uw smartphone? Of een tutorial over aangesloten apparaten en aan de slag met het gezocht? Android Home Automation zal u tonen hoe te maken van uw hui
Home Automation met behulp van RF-Transceiver met Arduino Micrcontroller

Home Automation met behulp van RF-Transceiver met Arduino Micrcontroller

Dit project laten zien voor het ontwerp en de ontwikkeling van een Home Automation systeem met behulp van RF-Transceiver gecontroleerd door Arduino Micrcontroller. De gebruiker zal verschillende indoor apparatuur zoals bollen, deuren en fans met behu
Home Automation met behulp van de Arduino deel-ik

Home Automation met behulp van de Arduino deel-ik

Het is niet zoals alle andere domotica zoals we eerder gezien. Ze controleren apparaten op afstand wat is het verschil. Het is omdat het uit de wereld kan controleren. U kunt met behulp van elk willekeurig apparaat met internetverbinding hebben dat w
Home Automation met behulp van de Arduino en Bluetooth

Home Automation met behulp van de Arduino en Bluetooth

De "Home Automation System"(HAS) concept bestaat al vele jaren. De termen "Smart Home", "Intelligente huis" gevolgd en is gebruikt om het concept van netwerken toestellen en apparaten in het huisDomoticasysteem is een proces
DIY Smart Home Automation met behulp van Android

DIY Smart Home Automation met behulp van Android

Smart Home Automation laat de gebruiker te bepalen van het huis van zijn of haar telefoon en acties die afhankelijk van tijd of andere sensor lezingen zoals licht, temperatuur of geluid vanaf elk apparaat in het netwerk van de Home Automation gebeure
Uber Home Automation w / Arduino & Pi

Uber Home Automation w / Arduino & Pi

[BEWERKEN] Ik heb een forum om samen te werken op gateway code.http://homeautomation.proboards.com/Board/2/openha...Een paar jaar geleden, werd ik de hondeigenaar van een voor de eerste keer. Ik hield niet van Cody in de kennel alleen hele dag verlat
Home Automation met HomeGenie

Home Automation met HomeGenie

Dus wilt u stap uw spel Domotica? Zoek niet verder! Veel van ons probeerde huis automatiseren door ad hoc-methode, nu hier is een grote open source systeem dat betrouwbare stichtingen voor uw volgende project geeft.HomeGenie geeft u een webserver voo
Home automation met ATTiny en mobiele telefoon

Home automation met ATTiny en mobiele telefoon

In ons huisje in het bos hebben we niet een betrouwbare internetverbinding. In de winter die het is echt koud wanneer we invoert en het duurt enkele uren voordat het huis opwarmt bij het draaien op de vloer verwarming nadat we komen in.Ik wilde om de
LinKit one - Home Automation met Bluetooth Controller Android App

LinKit one - Home Automation met Bluetooth Controller Android App

Alle opties zijn voorzien van slimme telefoons. Slimme telefoons maken ons werk zeer gemakkelijk en maakt ons lui. Draai in- en uitschakelen met behulp van slimme telefoon met Blauwe tand huistoestellen is in de markt, maar de kosten hoog. Dus DIY Bl
Home automation met knooppunt js, raspberry pi en heimcontrol

Home automation met knooppunt js, raspberry pi en heimcontrol

In de tutorial zal sudo apt-get update<br> sudo apt-get install git-core git scons build-essential scons libpcre++-dev libboost-dev libboost-program-options-dev libboost-thread-dev libboost-filesystem-dev overzicht van het gebruik van heimcontrol pl
Procedure: Stem Feedback toevoegen aan uw Home Automation met koppelen een!

Procedure: Stem Feedback toevoegen aan uw Home Automation met koppelen een!

Hallo iedereen,Vandaag zal ik u tonen hoe u stem feedback toevoegt aan uw Home Automation.Dit zal altijd een goede additief aan uw Home Automation Project met Link het één omdat uw Linkit ONE zou een feedback als een "Heb ik draaide op verlichting vo