Forum: Mikrocontroller und Digitale Elektronik allerletzter Versuch mit RFM12 und Mega 8


von Grobi (Gast)


Angehängte Dateien:

Lesenswert?

Also ich habe nochmal einen allerletzten Versuch mit meinen beiden 
RFM12s gestartet bevor ich sie in die Tonne werfe.
Ich habe einfach ein RFM12 wie im Schaltplan (s. Anhang) an nen Mega 8 
angeschlossen. Als Anzeige diehnt ne LED. Jetzt soll die LED beim 
Programm start 10 mal blinken, dann das RFM12 initialisiert werden und 
dann die LED einfach weiterblinken lassen. Der Mega 8 läuft mit dem 
externen Takt des RFM12. Vor der Initialisierung mit 1MHz und danach 
sollte es mit 10 MHz laufen, also die LED viel schneller blinken als bei 
den 10 malen vorher. Tut sie aber nich, blinkt genauso schnell wie vor 
der Initialisierung. Bitte schaut euch einfach mal mein Programm an, 
vieleicht mach ich ja beim init schon irgendwas falsch. Das komische is 
das sich beide Module so verhalten, habs auch schon mit software spi 
probiert, selber effekt, die beiden scheinen einfach auf nix zu 
reagieren.

MfG
Grobi

von 900ss (900ss)


Lesenswert?

Fuses falsch? Blinkt die LED auch, wenn Du den RFM nicht anschließt?

von Pete K. (pete77)


Lesenswert?

Abblockkondensatoren ?

Wie ist das Gesamtschaltbild, d.h. die RFM12 angeschlossen ?

Ist denn auch SPI richtig angeschlossen ? Ich sehe DO<->DO und DI<->DI, 
muss das nicht DO<->DI sein ?

von Grobi (Gast)


Lesenswert?

SPI
Mega 8 - RFM12
SCK      SCK
MISO     SDO
MOSI     SDI
SS       nsel
sollte soweit richtig sein.
Beim RFM12 ist FSK/data.. mit nem 10K auf +5V gelegt.

von Grobi (Gast)


Lesenswert?

Die fuses sind auf externen takt eingestellt CS3-0 und SU0 programmiert, 
wenn ich die CLK leitung weglasse leuchtet nix mehr

von joachim (Gast)


Lesenswert?

Hallo
Irgendetwas machst Du falsch!
Ich hatte erst 2 Pollin-Funkboards gekauft und dann noch 10 Stck. RFM 12 
aus der letzten Sammelbestellung bekommen (dem Organisator noch mal 
besten Dank). Von M8 bis M32 alle AVR ausprobiert bei Verwendung des 
SNAP-Protokolls - nach Anfängerfehler (Achtung: Optokoppler!) immer und 
über mehrere Tage stabil gelaufen mit 1 bis 32 Byte Daten. Entfernung 
bei mir erheblich mehr als 200 m.

Falls Du es noch nicht geschafft hast, Deine RFM 12 zum Laufen zu 
bringen, dann sage bitte kurz Bescheid.

Joachim

Kaum macht man es richtig, schon geht's.

von Grobi (Gast)


Lesenswert?

...irgendwas machst du falsch!
ja das denke ich auch ;-)

hab es bis jetzt noch nicht hinbekommen, alles zum 
100000000000000000000000 mal überprüft :-( Hab mir jetzt n rfm01 und 
rfm02 bestellt, denn eigentlich brauch ich auch nur einen Sender und 
Empfänger weil das ganze soll ne Fernsteuerung für nen e-Heli werden, 
und werde es mit denen versuchen. aber wenn jemand noch nen Tipp hat WAS 
ich vieleicht falsch mache, wäre ich natürlich äußerst erfreut...

Grobi

von Benedikt K. (benedikt)


Lesenswert?

Grobi wrote:
> Hab mir jetzt n rfm01 und rfm02 bestellt,

Schlechte Entscheidung: Das RFM02 ist meiner Meinung nach ziemlich 
hässlich anzusteuern.

von Andreas K. (a-k)


Lesenswert?

Grobi wrote:

> Hab mir jetzt n rfm01 und rfm02 bestellt, denn eigentlich brauch
> ich auch nur einen Sender und Empfänger

Wenn du das in der Annahme getan hast, RFM01 und RFM02 wären kastrierte 
RFM12, dann lies lieber mal die Datasheets. Die 3 Dinger sehen sich zwar 
alle äusserlich ähnlich, das Register/Kommandoprotokoll ist aber 
durchaus verschieden.

Und wenn du schon am RFM12 scheiterst, dann viel Spass mit dem RFM02. 
Nicht dass der so viel komplizierter wäre. Nein. Nur arbeitet er ein 
bischen anders, weil im Unterschied zum RFM12 kein interner Sendepuffer 
vorhanden ist und die Bits daher einzeln per Interrupt-Signal 
reingetaktet werden.

von Benedikt K. (benedikt)


Lesenswert?

Gut dass ich nicht der einzige mit der Meinung bin...

von Grobi (Gast)


Lesenswert?

hmmm ok da war ich vielleicht n bischen vorschnell mit dem rfm01 und 02, 
hätte ich mir vielleicht doch etwas genauer ansehen sollen.
Egal, 10€ sind jetzt auch kein Weltuntergang und ich habe einfach die 
Hoffnung das es mit denen funktioniert.
Eine andere Idee ist mit nem MC3361 oder TD7088 etc. einen kleinen 3 
oder 4 Kanal (3 Kanäle würden mir ausreichen) RC Empfänger zu bauen der 
mit dem original Sender funktioniert.
Aber das halte ich nüchtern betrachtet doch für etwas schwieriger da ich 
mit dem ganzen HF zeugs noch nicht wirklich in berührung gekommen bin, 
es gibt aber ein paar funktionierende Schaltungen im Netz (google is ur 
friend) die genau das leisten.
Der MC3361 kostet bei R*ichelt 0.56€, 455KHz Drossel usw. und 35 MHz 
Quarz ließen sich bestimmt noch von der original Empfängerplatine 
verweden.
Diese hat auch nich viel mehr als n paar Widerstände, Kondensatoren und 
nen TA31136 (Schmalband FM Empfänger IC) drauf.
Vielleicht doch keine so schlechte Idee.

Grobi

von tom (Gast)


Lesenswert?

Vielleicht solltest Du doch mal nen vollständigen Schaltplan einstellen. 
Manchmal sieht man den Wald vor lauter Bäumen nicht.

von Peter D. (peda)


Lesenswert?

Versuch doch erstmal die AVR-Demo vom Hersteller zum Laufen zu bringen:

http://www.hoperf.com/pdf/RF12B_code.pdf

Der Schaltplan ist auch dabei.


Peter

von Grobi (Gast)


Angehängte Dateien:

Lesenswert?

Habs nochmal probiert und so gehalten wies im Codeblatt steht also 
Software SPI und die nIRQ leitung benutzt, aber keine änderung, die LED 
blink nach dem Umschaltern auf 10MHZ und dem restlichen init genauso 
schnell wie zuvor mit 1MHz.

Grobi

von Manuel S. (thymythos) Benutzerseite


Lesenswert?

Wenn die Init schon nicht geht, stimmt meistens was mit der Verkablung 
nicht. SS ist bei AVR auch mit vorsicht zu genießen, da du damit leicht 
den Slave Modus aktivierst. Also lieber SS auf Ausgang und nicht mehr 
anfassen und einen anderen Pin an nSEL!

von Grobi (Gast)


Lesenswert?

hmmpf, habe nochmal alles auf nen anderen Port des AVR gelegt um 
auszuschließen das irgendwas mit den SPI pins nicht stimmt, immer noch 
das selbe :-(
In irgendeinem Thread steht was von 22µ Elko zwischen VCC und GND direkt 
am Modul da die Dinger wohl sehr empfindlich auf Schwankungen in der 
Stromversorgung reagieren. Das wäre so meine letzte Idee ansonsten hab 
ich echt alles durch, verschiedene Controller, verschiedene Portpins, hw 
SPI, software SPI usw....
Kann in meiner Software vielleicht noch n Fehler sein, macht es einen 
Unterschied ob ich das Modul direkt beim Programmstart(nach ablauf der 
POR zeit) initialisiere, oder später? Macht es dem AVR wirklich nix aus 
das sich seine taktgeschwindigkeit mal eben so ver10facht? Ist da ein 
Denkfehler in meiner Software ,da mein delay beim Blinken ne einfache 
for-schleife ist müsste die Ausführungsgeschwindigkeit doch auch 
wirklich von der Controllergeschwindigkeit abhängen oder? Ich hab echt 
keine Ahnung mehr wie ich das zum laufen bringen könnte, am liebsten die 
ganze klamotte in nen Päckchen legen und an jemanden verschicken der 
sich damit auskennt, wenn der/die es dann auch nich hinbekommt, hat mir 
P*llin wohl doch Mist verkauft.

Grobi

von Peter D. (peda)


Lesenswert?

Nochmal:

Was spricht dagegen, das Beispiel des Herstellers 1:1 nachzubauen und zu 
programmieren?

Und wenns dann nicht geht, Kontakt aufzunehmen.


Ich sehe jetzt nicht den Sinn darin, sich an Nebensächlichkeiten 
(Taktumschaltung) zu verheizen.
Experimente kann man machen, nachdem es funktioniert (oder einfach 
seinlassen, wenn man nicht wirklich 1.000.000 Stück produzieren will, 
damit es auf jeden Cent ankommt).


Peter

von Joern DK7JB .. (moin)


Lesenswert?

Zu demem Code kann ich nichts sagen, da ich nur Bascom kann.
Hier aber noch ein paar Hinweise:
- Originaldatenblatt: Unter Google nach "IA4420" suchen.
  Nur mit dieser Hilfe  konnte ich meine Sache zum Laufen bekommen.
- Gute Hinweise unter http://www.comwebnet.de/
  Unter "Projekte und rfm12" ein Link zu einem funktionierenden Code mit
  vielen Erklärungen und einem Schaltplan.
- Den Controller zunächst mit einem eigenen Takt versehen
- Irgendwo meine ich gelesen zu haben, dass die Democodes von deinem 
Händler mit dem P und dem Hersteller fehlerhaft sind. Das habe ich aber 
nicht überprüft.

moin

von Manuel S. (thymythos) Benutzerseite


Lesenswert?

Die Wiki-Artikel hast du auch schon gefunden, nehm ich an?

http://www.mikrocontroller.net/articles/RFM12
http://www.mikrocontroller.net/articles/AVR_RFM12

Du hast in deinem Schaltplan nichts von nFFS<->VCC geschrieben 
(WICHTIG!!!).

von Joern DK7JB .. (moin)


Lesenswert?

Hier noch der Link zum Originaldatenblatt. In der letzten Zeit ist es 
nochmals verbessert worden:
http://www.integration.com/int_Documents.php?pid=22

von Grobi (Gast)


Lesenswert?

Ich werd bekloppt!!!! Den 22µ Elko zwischen VCC und GND direkt am Modul 
und schon blinkt die LED nach der Initialisierung 10 mal schneller also 
mit 10 MHz!!! Es klappt!!!!!!! ... soweit...
Ich danke jedem für die Tipps und Hilfe!!!

Grobi

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
Noch kein Account? Hier anmelden.