Forum: HF, Funk und Felder RFM12 Module Betrieb unter Bascom


von Netzwerkkabel (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,
Seit einigen Tagen bastel ich mit zwei RFM12 Modulen rum, ich 
programmiere in Bascom und bekomme die nicht zum laufen. Ein bekannter 
von mir hat mir ein C Programm geschrieben mit dem ein Wort gesendet und 
empfangen wird und direkt über die rs232 Schnittstelle ausgeben wird, 
die Hardware funktioniert also.

Meine Hardware besteht aus zwei Atmega32, die beiden mit 4 MHZ laufen.

Die Funkmodule sind wie folgt angeschlossen.

empfänger:
PortA.0 = SDI
PA.1 = SCK
PA.2 = nSEL
PA.3 = FFit/SDO

Sender:
PortC.2 = SDI
PC.3 = SCK
PC.4 = nSEL
PC.5 = FFit/SDO

und natürlich GND, VCC und 10 K Ohm nach VCC.(bei beiden Modulen)

Beide Programme sind im Anhang, es ist gedacht das SoftSPI genutz wird.

Es würde mich sehr freuen, wenn ihr mal drüber schauen könntet und mir 
helfen.

Gruß Netzwerkkabel

von Netzwerkkabel (Gast)


Lesenswert?

Hallo,
ich habe den dummen verdacht, das ich mit meiner Frage in der falschen 
Kategorie gelandet bin. Kann die verschoben werden ? nach µC & 
Elektronik.

Gruß

von Manuel S. (thymythos) Benutzerseite


Lesenswert?

Die Kategorie stimmt schon, denke nur die meisten, die bisher was mit 
dem RFM12 gemacht haben verwenden C.

Hast du schon die Seite http://www.mikrocontroller.net/articles/RFM12 
angeschaut, Stichwort FAQ?

Kannst du z.B. messen, ob der Takt am RFM12 auf 10MHz wechselt?

von Netzwerkkabel (Gast)


Lesenswert?

Hallo,
habe mir deinen Link mal durchgelesen, das hilft mir aber leider nicht 
wirklich weiter.

Ob ich das messen kann weiß ich nicht, wie macht man so was ? mit einem 
Oszilloskop ? wenn ja, dann kann ich das leider nicht messen.

Mein Problem ist eigentlich, das ich nicht genau weiß, was dort in dem 
Bascom Programm passiert.

Gruß

von Manuel S. (thymythos) Benutzerseite


Lesenswert?

OK, dann fangen wir mal von vorne an.

Hast du das ganze auf ner Lochrasterplatine aufgebaut, oder sind das 
fertige Platinen?

Warum sprichst du von Sender und Empfänger, der RFM12 ist ein 
Transceiver, also beides. Hast du also 4 oder nur 2 RFM12? Wenn 2, warum 
sind die unterschiedlich angeschlossen, wenn die jeweils an einem 
ATmega32 hängen?

Ich nehme an, dass du zumindest prinzipiell programmieren kannst. Warum 
genau verstehst du das Programm nicht? Kannst du weder C noch Basic? 
Oder ist das Programm zu unverständlich geschrieben?

Hast du grundsätzlich verstanden wie das RFM12 funktioniert?

von Netzwerkkabel (Gast)


Lesenswert?

Hallo,

Die ganze Hardware ist aktuell auf zwei Steckbretter aufgebaut, das 
ganze funktioniert aber.

Sender, Empfänger. naja rfm12 halt kann beides, wie du schon sagst.
Ich möchte nur erstmal, von dem einem zu dem anderen was hin senden.

Das Programm ist im Grunde ja für beides, ich muss nur die passenden 
Zeilen aktivieren.

Bascom kann ich Programmieren, wenn es nicht zu Komplieziert wird. C gar 
nicht. Das Prinzip wie das rfm12 arbeitet habe ich nicht so wirklich 
verstanden. und deshalb habe ich Probleme mit der Softspi in dem 
Programm.

Über Hilfe würde ich mich sehr freuen.

Gruß

von Manuel S. (thymythos) Benutzerseite


Lesenswert?

Trotzdem ist noch nicht klar, warum du unterschiedliche 
Anschlussbelegungen gewählt hast...

SoftSPI ist kein Hexenwerk. SPI heißt erst mal, es gibt vier Leitungen, 
Takt (SCK), Daten vom Master zum Slave (MOSI), Daten vom Slave zum 
Master (MISO) und Chipselect (nSEL).

Zu welchem Zeitpunkt des Taktsignals die Daten anliegen ist SPI nicht 
eindeutig definiert, steht aber im Datenblatt des jeweiligen Bauteils. 
Zuerst muss nSEL von 1 auf 0 gelegt werden, damit wird die Kommunikation 
zum RFM12 aktiviert. Nun kann bei jeder steigenden Flanke des SCK ein 
Bit übertragen werden. Dies geschieht gleichzeitig in beide Richtungen.

Beim RFM12 werden immer 16Bit übertragen. Welche Bedeutung diese haben 
steht im Datenblatt. D.h. es werden immer auch 16 Bit vom RFM12 zum 
Atmel übertragen, haben aber oft keine Bedeutung.

Leider ist es nicht einfach festzustellen ob die Kommunikation zum RFM12 
funktioniert. Es gibt keine Möglichkeit Daten auszulesen, die festgelegt 
sind, also z.B. eine Seriennummer.

Hast du noch weitere Fragen zum SPI?

von Avr N. (avrnix) Benutzerseite


Lesenswert?


von Netzwerkkabel (Gast)


Lesenswert?

Hallo,
an unterschiedlichen Pins habe ich die Module angeschlossen, weil die 
Pins schon belegt waren. Das müsste bei der Softspi doch eigentlich kein 
Problen geben.

Wenn ich ganz erlich bin, möchte ich erst einmal das meine Übertragung 
mit Bascom funktioniert, sprich das jemand über meine Programme schaut 
und mir sagt was dort nicht stimmt.

Gruß

von Manuel S. (thymythos) Benutzerseite


Lesenswert?

Das Problem beim RFM12 ist, dass man die Fehler häufig nur durch 
ausprobieren findet. Es wird vermutlich nichts bringen, wenn jemand nur 
über deinen Code schaut. So offensichtlich ist das meist nicht.

Wir können dir aber gerne helfen zu Verstehen, wie das RFM12 
funktioniert und wie du bei der Fehlersuche vorgehen kannst!

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.