Stap 7: Programmering & codering
-Allereerst in setup functie moet u voor het initialiseren van de digitale pinnen als uitgang. Controleer ook of dat alle pinnen zijn ingesteld op "Laag". Dit zal verhinderen te drukken op een toets per ongeluk Wanneer Arduino ster-up.
VOID Setup {}
Initialiseer de digitale pinnen als uitgang.
pinMode (2, OUTPUT); PAARS
pinMode (3, OUTPUT); ROOD
pinMode (4, OUTPUT); BROWN
pinMode (5, OUTPUT); GROEN
pinMode (6, OUTPUT); BLAUW
pinMode (7, OUTPUT); GEEL
digitalWrite (2, laag); de pincode instellen op OFF
digitalWrite (3, laag); de pincode instellen op OFF
digitalWrite (4, laag); de pincode instellen op OFF
digitalWrite (5, laag); de pincode instellen op OFF
digitalWrite (6, laag); de pincode instellen op OFF
digitalWrite (7, laag); de pincode instellen op OFF
}
-Om over te schakelen op de a/c unit, eerst identificeren van de knopkleur waarna pincode. Daarna, voeg deze code toe aan lus functie. Uit de bovenstaande foto, merken de ON/OFF pinnen op arduino D3 (rood) en D6 (blauw). Deze pinnen moeten ingesteld op "Hoog" voor 10ms dan op "Laag".
void loop {}
digitalWrite (3, hoge); Druk op de knop
digitalWrite (6, hoge);
delay(10); wacht een reactie op de kracht
digitalWrite (3, laag); ontspanknop
digitalWrite (6, laag);
while(1 == 1) {/ / om te voorkomen dat de lus op Arduino
}
}
-Voegde ik de voorwaarde while om te verhinderen dat Arduino voortdurend op toets te drukken.
-Als u instellen de a/c-temperiture 3 degres wilt, moet u aan de for -lustoevoegen. Maar eerst, identificeren welke pinnen controle die knop. In dit geval zijn ze D4 (BROWN) en D5 (groen).
for (int i = 0; ik < 3; i ++) {}
digitalWrite (4, HIGH); Druk op de knop
digitalWrite (5, hoge);
delay(10); wacht een reactie op de kracht
digitalWrite (4, laag); ontspanknop
digitalWrite (5, laag);
delay(1000); Wacht één seconde tussen elke pers
}
-Voegde ik helmknop vertraging binnen een seconde voor de simulatie van de echte pers op externe sleutels met de hand. Dit laat een rem tijd tot de a/c unit reactie op het eerdere signaal.
VIDEO:
Aanvullende opmerkingen:
* Zorg ervoor dat alle de pinnen op Arduino ingesteld op "Laag" wanneer het niet nodig is.
* Arduino heeft een voortzetting lus functie die niet zal stoppen of totdat u om te dwingen beëindigen.
* Een universele airconditioner afstandsbediening heeft een honderden aantal codes te behandelen van verschillende eenheden. Zorg ervoor dat u het aan uw eigen eenheid instellen voor gebruik in combinatie met Arduino.
* Kun je een label op de achterzijde van de afstandsbediening van uw airco te identificeren van elke pin met Arduino pinnen.
-De gebruik van de plint, maakt de afstandsbediening gemakkelijk te dragen wanneer zijn niet nodig voor het in de basis.
* Naast de prijzen van de Arduino, draden en PCB bestuur, is de a/c Universal Remote Control kosten ongeveer 12$. De totale kosten, met inbegrip van alle dingen, is ongeveer 65$.
Toekomstige werkzaamheden:
Dit is niet een compleet project. Het heeft sommige uitvaardiging. Bijvoorbeeld wanneer de Arduino airco eenheid ingesteld op een specifieke configuratie dan iemand de afstandsbediening vanuit zijn basis vertrekt en opnieuw instellen op een andere configuratie. In dit geval heeft Arduino geen idee wat nieuwe configuratie is ingesteld.
Als een oplossing, kunnen we de Arduino Mini toevoegen aan de afstandsbediening (http://arduino.cc/en/Main/ArduinoBoardProMini). Dit zal elke nieuwe configuratie die is ingesteld in de tijd die de afstandsbediening niet op zijn basis is registreren.
Ook, er kunnen worden toegevoegd een draadloze Xbee module, zodat we van de plint ontdoen kunnen. Dus met een willekeurige toets drukt, stuurt het de nieuwe configuratie naar het hoofdmenu van de Arduino.
Ik hoop dat dit kan u helpen bij uw projecten.
Laat een commentaar als er om het even welk onbegrijpelijk stap.
Bedankt voor uw aandacht: D