bin ein schritt weitergekommen, der aufbau ist nun folgender:
sender und empfänger sind diese. Sie funktionieren prinzipiell. An den sender habe ich einen NE555 mit folgender schaltung angekoppelt:

der datapin ist an punkt A, Vcc und GND sind gemeinsam aus einer 9V blockbatterie. Die rote LED blinkt am punkt A paralell zum ausgang zum sender als kontrolle.
Der empfänger hängt nur an einer 9V blockbatterie und am arduino mega zum auswerten des ankommenden signals:

Die auswertung habe ich mit diesem sketch versucht zu realisieren:
In dem sketch habe ich beide möglichkeiten - analoge, wie digitale auswertung - unabhängig voneinander (also nicht gleichzeitig) durchgeführt.
Code:
uint8_t abstand_analog;
uint8_t abstand_digital;
#define rfReceivePinAnalog A0
#define rfReceivePinDigital 2
#define ledPin 13
void setup()
{
pinMode(ledPin, OUTPUT);
pinMode(rfReceivePinDigital, INPUT);
Serial.begin(9600);
}
void loop()
{
abstand_digital = 0;
abstand_analog = 0;
digitalWrite(ledPin, LOW);
abstand_analog = analogRead(rfReceivePinAnalog);
abstand_digital = digitalRead(rfReceivePinDigital);
Serial.print(abstand_analog);
Serial.print(" ");
Serial.println(abstand_digital);
delay(300);
if (abstand_analog >= 100)
{
digitalWrite(ledPin, HIGH);
delay(300);
digitalWrite(ledPin, LOW);
delay(300);
}
if (abstand_digital == 1)
{
digitalWrite(ledPin, HIGH);
delay(300);
digitalWrite(ledPin, LOW);
delay(300);
}
}
- die werte bei digitalen auswertung wechseln zwischen 0 und 1
- die analogen werte schwanken zwischen 0 und 255
wie nicht anders zu erwarten war
, allerdings gibt es ein problem:
es kommt mir bei dieser geschichte nicht auf die art oder die größe der empfangenen werte an, sondern nur darum, den abriss der verbindung festzuhalten. Ob jetzt durch dauerleuchten der pin13 LED, oder ein daueraus ist auch nicht wichtig.
Das problem dabei ist, dass selbst beim abgeschaltetem sender noch daten von A0 ausgelesen werden, beim analogen beispiel alle möglichen, also von 1 bis 255. Auch bei abgeschaltetem empfänger(!) werden noch sehr unterschiedlich daten am A0 ausgelesen. Erst beim abklemmen der leitung von A0 zum datapin des empfängers sind die ausgelesenen daten in einem "schmalen" bereich um die 30-40. Wie erreiche ich, dass die daten am empfänger nur noch "nullen" sind nach dem abriss der verbindung? Die werte sinken zwar zwar, aber es dauert wahnsinig lange und selbst nach minuten kommen noch einzelne werte um 250.
Was passiert da? Was für ein hintergrundrauschen wird da von A0 ausgelesen?
Ich bin ratlos...
Lesezeichen