hallo,
ich habe folgendes programm, ich will mit einem jockstick eine funksteckdose steuern,
es wird mir angezeigt, das der wert 0 ist und so sollte eigentlich die steckdose angeschaltet werden, wird sie aber nicht. Kann mir hier jemand helfen?
#include <RCSwitch.h>
RCSwitch mySwitch = RCSwitch();
//Arduino pin numbers
const int SW_pin = 0; //digital pin connected to switch output
const int X_pin = 1; //analog pin connected to x output
const int Y_pin = 2; //analog pin connected to y output
void setup() {
pinMode(SW_pin, INPUT);
digitalWrite(SW_pin, HIGH);
Serial.begin(115200);
mySwitch.enableTransmit(9);
mySwitch.setProtocol(1);
}
void loop () {
Serial.print("Switch: ");
Serial.print(digitalRead(SW_pin));
Serial.print("\n");
Serial.print("X-axis: ");
Serial.print(analogRead(X_pin));
Serial.print("\n");
Serial.print("Y-axis: ");
Serial.println(analogRead(Y_pin));
Serial.print("\n\n");
if (X_pin > 200)
{
mySwitch.send(1069393, 24);
}
delay(50000);
}
const int X_pin = 1; //analog pin connected to x output
const int Y_pin = 2; //analog pin connected to y output
//
const int X_pin = A1; //analog pin connected to x output
const int Y_pin = A2; //analog pin connected to y output
//
const int X_pin = 15; //analog pin connected to x output
const int Y_pin = 16; //analog pin connected to y output
Auf die Schreibweise kommts nicht an.
Nur im Kopf muss es stimmen.
Digitalpin 0 verwendest du parallel für die serielle Schnittstelle
Wahr!
Digitalpin 1 verwendest du zeitgleich für die serielle Schnittstelle.
Ihm benutzt kein Digitalpin 1 im Programm.
Bleibt also frei für die Serielle.
Ansonsten ist ja geheim, WELCHER Arduino verwendet wird.
Warts ab, da kommt irgendwas ganz überraschendes bei raus.....
Salamitaktik halt....
Der dicke Hund, kommt immer zum Schluss.
welcher Wert ist denn "0", damit die Steckdose schaltet ?
Hast du auch den richtigen "Funkcode" eingestellt ?
Welchen Sender verwendest du für dein Projekt ?
Zeig uns mal ein Foto deines Aufbaus und welche Funksteckdosen du verwendest.
Es gibt sehr viele, die sich nicht über den Arduino steuern lassen.
Dir fehlen noch ein paar Grunglagen.Ich mach Dir jetzt mal den Vorschlag das Du Dir noch mal ein paar Beispiele aus der IDE ansiehst wie man digitale und analoge Eingänge einliesst und den Wert an Variable übergibt. Es gibt da schöne, leicht verständliche Beispiele. Unter Hilfe / Refferenz findest du auch Erklärungen und Beispiele.
Bitte:
Auch, wenn ein analogRead(0) den Pin A0 dafür benutzt, macht Sich die Lesbarkeit mit einem A0 deutlich besser.
Ich appelliere daher, benutze fpr die Pinzuweisung der Analog-Pins auch die Analog-Nummern.
Dem analogRead() ist Das wurscht - Das kann nicht auf D0...D7 lesen, geht deshalb davon aus, daß Du A0...A7 meinst (bei Uno/Nano) - der blöde Mensch, Der Deinen Code lesen und verstehen soll, kränkelt dabei halt etwas - nimm A0 und selbst wir hier sind glücklich.