Hallo, vorab: ich Programmiere noch nicht lange mit dem Attiny. Ich habe ein 433mhz sender & empfänger, und versuche diese mit dem Attiny auszuwerten bzw. zu senden. Die Module funktionieren, da ich diese bisher mit einem Raspberrypi Zero in Benutzung hatte. Nun will ich aber keinen ganzen pi nur für 1io kabel verschwenden, daher der Attiny. Nun zum Problem: Ich habe im Internet gesucht, und auch gefunden, jedoch funktioniert es bei mir nicht. Hier zuerst der Code für der Empfänger: // #include <RCSwitch.h> RCSwitch mySwitch = RCSwitch(); int ledPin = 0; void setup() { mySwitch.enableReceive(1); } void loop() { if (mySwitch.available()) { int value = mySwitch.getReceivedValue(); if (value == 0) { digitalWrite(ledPin, 0); } else { digitalWrite(ledPin, 1); } mySwitch.resetAvailable(); } } // Und hier die Verkabelung: ATT pin6 - Empfänger Data pin ATT pin5 - Led
Mit welcher Hardware und welcher Bibliothek dort sendest du? Ich habe mir ein Schänzchen gesucht, mit einem Arduino zu senden, und dann mit dem Raspberry zu empfangen. Und muss als nächstes meinen Kram auf den von dir erwähnten Tiny portieren.
> jedoch funktioniert es bei mir nicht.
Das ist keine aussagekräftige Fehlerbeschreibung. Enstprechend bekommst
du eine passender Antwort:
Entweder ist dein Programm oder die Hardware irgendwo fehlerhaft.
Nachtrag: Ein Schaltplan könnte auch hilfreich sein, sowie ein
Oszillogramm der seriellen Dateinleitungen.
Es gibt keine Fehlermeldung. Das Programm wurde auf den Tiny ohne Fehlermeldung drauf geladen. Ich habe es mit verschiedenen Bibliotheken versucht, wie man sehen kann versuche ich grade die RCSwitch Bibliothek(Die selbe wie auf dem Pi). Ebenfalls bin ich auf den Gedanken gekommen, dass es vielleicht nicht möglich ist, vom Tiny zum Pi zu senden, jedoch habe ich einen sender an einen anderen Tiny gesteckt um zu sehen was passiert, was nichts war.
Hallo Philipp, das hast Du sicher übersehen, oder? Stefan U. schrieb: > Nachtrag: Ein Schaltplan könnte auch hilfreich sein
Hast du mal geprüft ob die Bibliothek überhaupt auf nem Tiny läuft, und am Ende nicht einen Mega als Untersatz braucht?
Was funktioniert denn nicht? Mikrocontroller haben zahlreiche Funktionen, gehen wir die mal durch: 1) Spannungsversorgung liegt an, aber ist sie stabil? 2) Das Programm lässt sich in den Flash Speicher übertragen -> Ok 3) Der Mikrocontroller wird getaktet und arbeitet (mit LED-Blinkprogramm testen). 4) Auf den seriellen Leitungen RxD und TxD tut sich irgendwas (mit LED's bei niedriger Baudrate testen) 5) Mit einem Oszillogramm verifiziert man, ob die seriellen Daten korrekt übertragen wurden bzw. was daran falsch ist. Außerdem solltest du uns wirklich deinen Schaltplan zeigen, auch ein Foto vom Aufbau hilft oft, grobe Fehler zu erkennen.
Philipp D. schrieb: > Ich habe im Internet gesucht, und auch gefunden, jedoch > funktioniert es bei mir nicht. RCSwitch funktioniert mit Arduino UNO und einigen Funksteckdosen-Protokollen ziemlich sicher: https://www.youtube.com/watch?v=9JBkpcDb5wI Du musst schon herausfinden, was bei deinen Konfigurationen anders ist.
Liegt der Fehler möglicherweise einfach daran, dass Du vergessen hast ledPin in setup() als Output zu definieren?
Hallo Philipp, du definierst LED-Pin = 0 und ReceivePin = 1, verkabelst aber, wie du unten schreibst, Led auf Pin 5 und ReceiverPin auf 6. Das würde ich noch einmal prüfen.
Hallo, ich habe gerade heute meinen ATtiny85 mit einem 433 Mhz Sender ganz leicht zum laufen bekommen. Bei der Programmierung des ATtiny habe ich für mich den einfachsten Weg gewählt. Ich habe mir einen Programmer mit einem 6adrigen Kabel gekauft(zusammen knapp 9€). Programmieren über den Arduino IDE mit USBasp. klappt auf Anhieb. Ich habe auch erst mit dem BLINK Sketch angefangen.Der fertige Aufbau ist gerade mal 4x3cm gross. bisher hatte ich die Schaltung mit einem Arduino pro mini realisiert. Ich überwache damit meinen Teichwasserfalll auf Trockenlauf. Demnächst baue ich meine Teichwasserniveauregelung auch vom Arduino Pro Min auf den ATtiny85 um. Man spart sehr viel Platz, Geld und Stromverbrauch. Bei mir läuft die Regelung über ein Solarpanel mit einem kleinen 12V Akku 1,2 Ah und einem Step up Regler auf 5V hervorragend. Ich muss aber auch erwähnen, dass ich auch grosse Schwierigkeiten hatte. Nur, wie beschrieben, mit dem Arduino IDE und als Programmer Arduino as ISP hat es nicht geklappt. herfel
Soweit ich in der RCSwitch.h lese (mein Englisch ist nicht das beste) funktioniert mit dem Tiny85 das Empfangen nicht? // At least for the ATTiny X4/X5, receiving has to be disabled due to // missing libm depencies (udivmodhi4) #if defined( _AVR_ATtinyX5_ ) or defined ( _AVR_ATtinyX4_ ) #define RCSwitchDisableReceiving #endif Oder liege ich da falsch? Mein Nano als Empfänger funktioniert einwandfrei. Wenn ich aber den selben Code (mit geänderten Pins) auf den Tiny lade funktioniert der Empfang nicht mehr. Das manuelle schalten über angeschlossenen Button funktioniert aber.
Ich würde mal nachschauen, wozu die libm überhaupt benötigt wird. Vielleicht kann man die entsprechenden Stellen im Quelltext durch etwas Anderes ersetzen.
Bin da auch gerade mal am schauen.. Schnellste Lösung mit rc-switch, hier ganz unten: https://arduino.stackexchange.com/questions/6681/rcswitch-on-attiny85 Hier etwas anders.. ein Pull Request: https://github.com/sui77/rc-switch/pull/59
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.