IR afstandsbediening Station voor Android - TV AFSLAAN (4 / 4 stap)

Stap 4: De ARDUINO programma voorbereiden op het IR-STATION


The Arduino programma in deze handleiding is gebaseerd op de sjabloon sensoduino.ino die vangt de sensorgegevens via Bluetooth door verzonden vanaf uw Android apparaat. De wijzigingen omvatten het onderscheppen van de Audio sensor data verzonden via Bluetooth seriële vervolgens meten de audio sensorgegevens om te zien als het boven een drempel door de potentiometer ligt. Zo ja, stuur een IR-afstandsbediening-opdracht op de TV of stereo het volume om omlaag te brengen. U kunt gemakkelijk deze voorbeeldcode voor het verzenden van verschillende afstandsbediening functies op andere gadgets.

Dit Arduino-programma werkt voor de meeste afstandsbedieningen, maar je moet het op de hoogte wordt gesteld van uw afstandsbediening-protocol van de info die u in de vorige stap hebt verzameld wanneer u uw knoppen van de afstandsbediening IRrecvDump hulpprogramma gedecodeerd.

Het is mogelijk om de externe selectie dynamisch maken tijdens runtime dus u hoeft niet te wijzigen en code uploaden maar voor deze handleiding zal ik houd het simpel.

Aan het begin van het programma van de Arduino hieronder is er een aantal regels die beginnen met
#define LABEL nummer.  Wijzig de waarde om te bepalen hoe het IR-Station werkt. Hier is een uitleg van de relevante LABEL-constanten zijn.

EXTERNE KNOPCODE & bits

#define REMOTE_CODE uw externe code als resultaat wordt gegeven door de IRrecvDump decoderingsorgaan utility voorafgegaan door "0 x"

#define REMOTE_BIT uw gegevensgrootte externe code zoals die wordt geretourneerd door de IRrecvDump decoderingsorgaan utility.

VOLUME NIVEAU DREMPEL

#define THRESHOLD_VALUE

Als u niet gebruik van de potmeter wilt om de drempelwaarde die worden gebruikt voor het activeren van de IR-transmissie, wijzigt u de waarde van de THRESHOLD_VALUE zodat deze overeenkomen met uw wensen.  Dit is een getal dat bepaalt op welk punt de Arduino zal beginnen toezending van de IR-code, in ons geval de Volume Down IR-codes

VOLUME VERANDERING INTENSITEIT

#define REPEAT_TX (van 1 tot zoveel als u wilt. Beginnen met 3 dan fine tune)

Wijzigen hoe vaak u wilt dat de externe IR-code doorgegeven aan de TV of extern gecontroleerde apparaat. Als u wilt meer drastische daling in het volume TV vergroten dit nummer. Als u wilt dat een meer geleidelijke verandering in volume, verlaagt dit nummer.

/============================================================================

U kunt kopiëren en plak deze code in de Arduino en uploaden

/*
PROJECT: SensoDuino IR afstandsbediening Station 0.1
PROGRAMMEUR: Hazim Bitar (techbitar.com)
DATUM: 25 NOV 2013
FILE: sensoduino_ir_station.ino (gebaseerd op sensoduino.ino)
LICENTIE: publiek domein
*/

#include < IRremote.h >

#define THRESHOLD_VALUE 0 / / Set kritische niveau te detecteren. Negeren als potentiometer wordt gebruikt
#define REPEAT_TX 3 / / hoe vaak voor het verzenden van de externe IR-code
#define REMOTE_CODE 0x1CE3E817 / / remote code te zenden voor volume naar beneden voor mijn TV. Vervang met uw apparaat IR-code
#define REMOTE_BIT 32
#define LED 13 / / LED gebruikt te knipperen wanneer volume te hoog

IRsend irsend; IR-object instantiëren

#define START_CMD_CHAR ">"
#define END_CMD_CHAR "\n"
#define DIV_CMD_CHAR ","

#define DEBUG 1 / / Set op 0 als u niet dat uitgang voor seriële van sensorgegevens wilt

Tekenreeks inText;
float value0, waarde1, waarde2; Vars met sensor-waardes.

VOID Setup {}

Dit is de lijst van de Help van de Sensor voor sensor nummers
Serial.begin(9600); 9600 is de standaardsnelheid van de HC-05 en meeste Bluetooth seriële modules
Serial.println("\nSensoDuino 0.13 by TechBitar.com (2013).\n");
Serial.println ("Android Sensor Type nr:");
Serial.println ("1-VERSNELLINGSMETER (m/s ^ 2 - X, Y, Z)");
Serial.println ("2-MAGNETIC_FIELD (uT - X, Y, Z)");
Serial.println ("3-oriëntatie (yaw, pitch, roll)");
Serial.println ("4-GYROSCOOP (rad/s - X, Y, Z)");
Serial.println ("5-LIGHT (SI lux)");
Serial.println ("6-PRESSURE (hPa mbar)");
Serial.println ("7-apparaat TEMPERATURE (C)");
Serial.println ("8-nabijheid (centimeter of 1,0)");
Serial.println ("9-ZWAARTEKRACHT (m/s ^ 2 - X, Y, Z)");
Serial.println ("10-LINEAR_ACCELERATION (m/s ^ 2 - X, Y, Z)");
Serial.println ("11-ROTATION_VECTOR (X, Y, Z)");
Serial.println ("12-RELATIVE_HUMIDITY (%)");
Serial.println ("13-AMBIENT_TEMPERATURE (C)");
Serial.println ("14-MAGNETIC_FIELD_UNCALIBRATED (uT - X, Y, Z)");
Serial.println ("15-GAME_ROTATION_VECTOR (X, Y, Z)");
Serial.println ("16-GYROSCOPE_UNCALIBRATED (rad/s - X, Y, Z)");
Serial.println ("17-SIGNIFICANT_MOTION (1,0)");
Serial.println ("95 - TIME (H, M, S)");
Serial.println ("96 - datum (Y, M, D)");
Serial.println ("97 - AUDIO (Vol.)");
Serial.println ("98 - GPS1 (lat., lang, alt)");
Serial.println ("99 - GPS2 (lager, snelheid, datum/tijd)");
Serial.println ("\n\nNOTE: negeren van waarden van 99.99\n\n");
Serial.Flush();

pinMode (LED, uitvoer);
}

void loop
{
Serial.Flush();
int inCommand = 0;
int sensorType = 0;
unsigned long logCount = 0L;

char getChar = ' ';  Lees seriële

wachten voor binnenkomende gegevens
Als (Serial.available() < 1) keren; als seriële leeg, terug naar loop.

parseren van binnenkomende opdracht start vlag
getChar = Serial.read();
Als (getChar! = START_CMD_CHAR) terugkeer; Als geen opdracht vlag start, terug naar loop.

parseren van inkomende pin # en waarde
sensorType = Serial.parseInt(); lezen van sensor typr
logCount = Serial.parseInt();  Lees totale aangemelde sensor lezingen
value0 = Serial.parseFloat();  1e sensor waarde
waarde1 = Serial.parseFloat();  2rd sensor waarde als bestaat
waarde2 = Serial.parseFloat();  3e sensor waarde als bestaat

Sensor en waarden van sensoren voor foutopsporing weergeven.
Als (DEBUG) {}
Serial.Print ("type beeldsensor:");
Serial.println(sensorType);
Serial.Print ("Sensor log #:");
Serial.println(logCount);
Serial.Print ("Val [0]:");
Serial.println(value0);
Serial.Print ("Val [1]:");
Serial.println(Value1);
Serial.Print ("Val [2]:");
Serial.println(Value2);
Serial.println("---");
delay(10);
}
Het nummer van de sensor zodat deze overeenkomen met de senor wijzigen u die te lezen. Zie bovenstaande Sensor Help lijst.
Als (sensorType! = 97) keren;  Als I 'm not reading Audio Sensor-waardes, ga terug en blijven lezen.

Luiden naar de waarde van de potentiometer (0-1023) of VolValue toe te wijzen
naar de constante THRESHOLD_VALUE als u niet wilt gebruiken van de potentiometer.
int volValue = analogRead(A5);

Aangezien mijn audio sensor op mijn Arduino geeft als waarden van 0 tot en met 32K resultaat zal ik het toewijzen aan analoge min/max
zweven volLimit = volValue * (32000 / 1023.0); 32K is over max geretourneerd door SensoDuino Audio sensor
int soundLevel = value0; De correcte sensor afgelezen SensoDuino (Bluetooth)
if(soundLevel > volLimit) / / vergelijken met niveau Ruisdrempel potentiometer instellen.
{
digitalWrite(LED,HIGH);  tijdens het verzenden van IR inschakelen LED
delay(200);
voor (int txCount = 0; txCount < REPEAT_TX; txCount ++) {/ / overbrengen van het externe IR-code
irsend.sendNEC (REMOTE_CODE, REMOTE_BIT); Zie commentaar hieronder en vervangen aan uw IR-systeem
delay(200);

Uncomment de functie die overeenkomt met uw afstandsbediening-protocol, zoals blijkt uit de IRrecvDump
irsend.sendNEC (REMOTE_CODE, REMOTE_BIT);
irsend.sendSony (REMOTE_CODE, REMOTE_BIT);
irsend.sendRC5 (REMOTE_CODE, REMOTE_BIT);
irsend.sendRC6 (REMOTE_CODE, REMOTE_BIT);
}
}
digitalWrite(LED,LOW); Wanneer klaar verzendende IR, uitschakelen LED

}

Gerelateerde Artikelen

Hoe maak je een opvouwbare binnen groeien-Light Station voor $40

Hoe maak je een opvouwbare binnen groeien-Light Station voor $40

U kunt een heleboel geld door uw groente- en bloem zaden binnenshuis te starten. Het is niet moeilijk om te groeien van zaden onder lampen. Deze video toont u hoe te bouwen van een indoor groeien-licht-station voor onder $40.U kunt de eenheid worden
Top 10 kwaliteit Photo Editor app voor Android

Top 10 kwaliteit Photo Editor app voor Android

Top 10 kwaliteit Photo Editor App om uw foto's Perfect-Andro wortelElke keer als we niet kunnen reizen met een camera en een laptop. En gebruiken we onze mobiele telefoon of smartphone voor fotografie. Alle Smartphone hebben kunnen vastleggen, bewerk
Hoe het schrijven van een 'Hello World!'-app voor Android

Hoe het schrijven van een 'Hello World!'-app voor Android

InleidingDeze tutorial is bedoeld voor iedereen die heeft geen ervaring in het programmeren van toepassingen voor het Android operating system, maar zou willen. Deze is zeer eenvoudig, en het installeren van de nodige programma's is ingewikkelder dan
Google Maps API voor Android

Google Maps API voor Android

Hoi! Ontbreekt uw Android app pizazz of richting? Het toevoegen van Google Maps is een uitstekende manier om het nemen van uw app van saai te onderscheiden. Maar hoe maakt men deze overgang? In deze tutorial zal ik u door het proces van het configure
De Droidalyzer - een open source, Bluetooth alcohol detector accessoire voor Android-telefoons

De Droidalyzer - een open source, Bluetooth alcohol detector accessoire voor Android-telefoons

*** versie van het Product van de Droidalyzer van Seeedstudio nu beschikbaar ***De Droidalyzer is een open source, Bluetooth alcohol detector accessoire voor Android-telefoons. Paar de Bluetooth Droidalyzer aan uw Androïde telefoon ingeschakeld en ve
LUCHT voor Android

LUCHT voor Android

deze presentatie zal u lopen het hele ontwikkelingsproces van de lucht voor mobiele toepassing van ontwerp tot implementatie. Chris Griffith zal u tonen hoe hij ontworpen en gebouwd met behulp van een scala aan hulpmiddelen en technieken.Als u geïnte
Magic Mirror Mini voor Android

Magic Mirror Mini voor Android

een paar jaar geleden, ik heb een project genaamd de DIY Magic Mirror. Het is een interactieve pratende magische spiegel dat verschillende Videoboodschappen vanaf een PC in reactie op de verschillende sensor-ingangen van een Arduino speelt. Ik willen
Hoe te halen een archief manager voor Android

Hoe te halen een archief manager voor Android

Terwijl Google Play doorbladeren op zoek naar de beste bestand archiver voor Android, aandacht moet besteden aan vele aspecten van een app. met behulp van deze handleiding vindt u een app die precies aan uw behoeften zal voldoen.Alle credits gaan naa
Reverse-engineering toepassen RF afstandsbediening Controller voor IoT!

Reverse-engineering toepassen RF afstandsbediening Controller voor IoT!

In dit instructable, leert u hoe om te keren ingenieur radiofrequentie (RF) afstandsbedieningen en implementeren in een zeer goedkope WiFi toegelaten computer, het knooppunt MCU. Met deze techniek kunt u IoT inschakelen oudere toestellen en doelappar
IR Remote Camera sluiter voor Android telefoon

IR Remote Camera sluiter voor Android telefoon

voor je bent zoals foto selfie, zeker moet beschikken over een instrument dat kan maken het gemakkelijker om het nemen van foto.there zijn enkele tools die kunnen worden gebruikt die kan worden gekocht bij amazon(or other online shop).you kunt kiezen
Maker Station: De draagbare herconfigureerbare werken Station voor alle Makers

Maker Station: De draagbare herconfigureerbare werken Station voor alle Makers

toen ik begon dit project ik bouwen een werkplek die ik kon gebruiken voor een verscheidenheid van projecten en dat ik kon nemen met mij wilde als ik dat doe demonstraties.  Ik wilde ook iets dat zou niet dun en iets met een heleboel nut in termen va
K9 voederen Station voor twee!

K9 voederen Station voor twee!

I made this K9 feeding station for 2 med-large size dogs. Het heeft een 3 kwart kom voor water in het midden en een 2 kwart kom aan elke kant voor de menselijke voeding. Het staat ongeveer 14" hoge. Dit helpt gemak nekpijn en helpt bij de vertering v
Python codering voor Android Minecraft PE

Python codering voor Android Minecraft PE

De Raspberry PI versie van Minecraft kunt u script in Python, maken van fractal ontwerpen, tekeningen, turtle graphics, simpele spelletjes, enz. Hetzelfde kan worden gedaan op een desktop-versie met mijn frambozen Jam Mod (hier is mijn Instructable o
SeeForMe toegankelijkheid App voor Android

SeeForMe toegankelijkheid App voor Android

SeeForMe is een Android applicatie die met de toegankelijkheidsprogramma TalkBack integreert, gesproken terugkoppeling geven over drie mogelijke standen van de verwerking van de foto: object, tekst en kleurherkenning. Gebruikers met een visuele beper