Hallo Leute Bin wieder mal auf Eure Hilfe angewiesen! Habe mir eine Schaltung mit einem RFM12B aufgebaut, welche auch einwandfrei lief. (DIP- Modul) Das SMD- Modul auf die endgültige Printplatte bei selber Verdrahtung und Software läuft aber nur sehr unzuverlässig. Ich bringe das Ding nur zum Laufen, wenn ich die Speisung schnell aus und wieder einschalte. Ich habe dabei festgestellt, dass der Reset (10k Pull-up auf 3,3V) immer low bleibt und der Quarz auf dem Modul nicht anschwingt. Ich habe dannach alles versucht, was ich hier jrgendwie gefunden habe, ohne Erfolg. (nRES mit/ohne Pull- up, Kondensatoren auf Speisung 47uF/100nF/10nF, 10k auf FSK Pin) Die Speisung brauche übrigens ca. 2ms von 0 auf 3,3V. An der Software kann es meiner Meinung nicht liegen, da das Modul ja noch gar nicht aus dem Reset kommt. Zuletzt habe ich an die SMD Pads ca. 3cm lange Drähte gelötet und das Modul so vom Print distanziert. Und siehe da... das Teil läuft ohne Probleme. Kann es demzufolge sein, dass meine Massefläche unter dem Modul zu Problemen führt. Ich habe jede Menge Vias unter das Modul gepappt in der Meinung, was gutes zu tun. (Die Vias sind selbstverständlich mit Lötstop abgedeckt) Wäre toll, wenn mit jemand sagen könnte, ob er schon ähnliche Beobachtungen gemacht hat.
Unter dem Modul sollten keine anderen Leiterzüge oder Massen geroutet werden. Am besten irgendwo separat am Hauptplatinenrand platzieren. Ist auch besser für die Abstrahlung und empfangsseitige Empfindlichkeit. Blockkondensatoren müssen auf jeden Fall dran, in nächster Nähe zum Modul 100nF und dann noch 10µF Tantal.
Danke Travel Rec. für Deine Antwort! Wenn ich Dich richtig verstanden habe, sollte sich unter dem Modul auch keine Massefläche befinden. Auf dem Pollin Funkboard habe ich allerdings gesehen, dass eine durchgehende Massefläche vorhanden ist und damit habe ich eigentlich nie Probleme gehabt. Auf meinem Modul befindet sich ein kleiner SMD Quarz. Könnte es sein, dass er weniger gut anschwingt als der grössere alte Quarz? Die Distanz der Entkoppel- Kondensatoren zum Modul beträgt ca. 3-4cm konnte es konstruktiv leider nicht besser lösen. Spielen evt. die Signalpegel der SPI- Schnittstelle eine Rolle beim Power- up des Moduls? Hat jemand schon Erfahrung gemacht mit dem SW- Reset Kommando bzw. dem Normal/Sensitive Reset Flag (dr) im FIFO and Reset Mode Command? Kann mir jemand sagen, aus welchem Grund der Quarz nach dem Netz- ein nicht anschwingt und der Reset dauernd Low bleibt? Bin für jeden Tip sehr dankbar!
Was genau läuft denn unter dem Modul? Hast du Lötstop auf der Platine? Vlt. Hast du ja irgendwelche DuKo auf dem RFM gebrückt.
Unter dem Modul habe ich nur eine beidseitige Massefläche (Top und Bottom), keine Signalleitungen. Die beiden Masseflächen sind mit ca. 30 Vias verbunden. Unter dem Modul sind die Vias natürlich mit Lötstop abgedeckt. Details siehe Anhang... Im RF Transceiver (Si4421) ist ja ein uController integriert. Dieser läuft ja bestimme mit dem Quarz, der auf dem RFM Modul verbaut ist. Kann es sein, dass beim Modul die Lastkapazität des Quarzes per default nicht optimal eingestellt ist und er desshalb Mühe hat mit anschwingen. Vielleicht verhalten sich ja die beiden verwendeten Bauformen der Quarze nicht identisch. Ich gehe mal davon aus, dass der Wert der Lastkapazität bei der Bestückung berüchsichtigt werden musste, oder aber in der Firmware des Controllers, das diese ja per Software im Bereich von 8,5-16pF einstallbar ist. Die Frage ist halt, wie kann die Lastkapazität SW- mässig verändert werden, wenn der Chip gar nicht aufstartet und dauernd im Reset bleibt? Ich habe bei anderen Schaltungen ja auch schon erlebt, dass das schon ein anfassen des Quarzes genügt, um ihn zum "schweigen" zu bringen.
Hat denn noch niemand dieses Power- up Problem gehabt?
nRES - braucht normalerweise keine Beschaltung, der pull-up ist schon intern vorhanden C13 an DCLK - wird nur für die Betriebsart mit Analog Filter benötigt, dann funktioniert aber weder FIFO noch clock recovery, ist das beabsichtigt? Die RFM reagieren unter Umständen empfindlich auf Einbrüche in der Versorgungsspannung mit einem Reset. Ich habe schon etliche RFM's auf Testboards betrieben, bis jetzt ist noch nie einer hängen geblieben.
Hi Holger Ja, die Beschaltung ist beabsichtigt. Ich verwende die Module im OOK- Betrieb (ASK) und auf dem Microchip Prototyp- Board mit freiverdrahtetem DIL Modul funktioniert das Ganze auch ohne Probleme. Nur auf meinem Print haben die Dinger Probleme beim Aufstarten...
DMM, Speicher Oszi, Logic Analyzer... Leider kein Spectrum Analyzer :-(
Ich sehe einfach, dass beim Einschalten der Speisung der Quarz auf dem Modul nicht schwingt und der Reset dauernd auf Low bleibt. Der SCK Ausgang demzufolge natürlich die 1MHz auch nicht ausgiebt...
Hier die beiden Boardseiten. Beide Masseflächen sind mit GND verbunden.
Misst du am Quarz direkt oder am CLK Pin? Kannst du mit dem LA testen, ob auf dem SPI Bus eine Übertragung statt findet? SPI sollte auch ohne den Oszillator funktionieren, da der eigentlich primär nur die HF-Seite versorgt und auch abgeschaltet werden kann.
Ich habe am Quarz und am CLK Pin gemessen. Beide tot... Ich habe das Flash im uC versuchsweise gelöscht. Dannach sollte meiner Meinung nach alle Portpins als Eingänge geschaltet sein. Nichts... Dannach die selbe SW wieder geladen, welche einwandfrei auf dem Prototyp- Bord läuft. Hat alles nichts gebracht.
Versuchte auch ein paar Sekunden nach dem Einschalten ein SW- Reset Kommando zu schicken um das Modul zurückzuholen, falls die Speisung zu langsam ansteigt oder zu Beginn nicht stabil ist. Alles ohne Erflog. Komisch ist einfach, dass alles sauber läuft, sobald ich das Modul vom Print distanziere und er nicht vollflächig auflöte.
Schreibe doch mal ein Programm, welches einfach nur die Statusbits abfragt. Bei der 1. Abfrage sollte nur das POR Bit gesetzt sein, bei einer nochmaligen Abfrage aber nicht mehr.
Andreas Häusler schrieb: > Komisch ist einfach, dass alles sauber läuft, sobald ich das Modul vom > Print distanziere und er nicht vollflächig auflöte. Ich habe bis zu 40 cm Kabel an den Testboards für Erweiterungen und Logikanalysator. Die RFM's funktionieren trotzdem.
Ich weiß nicht ob es nur daran liegt, aber du hast eine wahnsinnig schlechte Masseanbindung. Verfolge mal GND auf dem Weg zum RFM: viele sehr dünne oder sehr lange "Leiterbahnen", absolut nicht niederimpedant. Versuch mal direkt am RFM noch einen (oder mehrere) Blockkondensator(en) zu platzieren.
Neuer Versuch... Klebestreifen unter das Modul geklebt und wieder direkt aufgelötet und siehe da.... es läuft! Trotz Lötstoplack scheint die Masseflächt meinen Modulen nicht gut zu tun. Der Schwingkreis der RFM muss scheinbar extrem hochomig sein. Evt. sind da zwischen ground plane und Funkmodul Kapazitäten im Spiel, die sich in meinem Fall negativ auswirken. @Holger: Kann nun leider nicht mehr kontrollieren, ob der Status bei den fehlerhaften Modulen OK war. (Module laufen ja jetzt) Bin aber der Meinung, dass der Status immer ganz unterschiedliche Werte zurück gab, solange die Module im Reset waren. Bei funktionierenden Modulen habe ich immer die korrekten Werte 0x4000 und dannach 0x0000.
Na da schau her. Geht doch. Am Anfang hatte ich auch die RFM's direkt auf der Platine, diese ist auch doppelseitig. Da ich aber auch die RFM 01 und 02 benutze, habe ich die SMD's später "gesockelt". Damit lassen die sich ganz schnell tauschen.
Vielleicht kann mir noch jemand erklären, wesshalb es beim Pollin Board mit der selben Massefläche funktioniert und bei mir nicht! (Das dort verwendete Modul hatte übrigens einen andern Quarz im HC49 Gehäuse!) Wäre froh um ein wenig mehr Klarheit. @Micha: Du hast recht, hab ich erst jetzt gesehen. Habe oben im weissen Bereich noch Netzspannung(!), deshalb die Abstände zur Massefläche. Werde ich in der Serie noch besser machen, danke. Weiss jetzt aber immer noch nicht sicher, ob ich den ground plane in Zukunft weglassen soll oder nicht... Wirkt sich die fehlende Massefläche unter dem Modul unter Umständen auf die Reichweite der Module aus? (Bei den Tests habe ich übrigens direkt 5V eingespiesen, um die Fehlerquelle mit Netz auezuschliessen.) @ Holder: Hattest Du bei Deiner doppelseitigen Platine auch GND direkt unter den Modulen?
Andreas Häusler schrieb: > Werde ich in der Serie noch besser machen, danke. Du solltest ebefalls versuchen so viele Leiterbahnen wie möglich auf eine Fläche und auf Masse möglichst durchgehend auf die andere Fläche zu bekommen. Und solche Inseln wie etwa in Bildmitte oberhalb der Bohrung (bottom) machen auch wenig Sinn - also weglassen und DKs löschen.
Ich habe auch die Pollin-Boards, die haben ja eine durchgehende Massefläche. Ich schätze das Problem sind die Dukos auf deiner Platine. Da ist doch mit Sicherheit kein Lötstopplack drum herum. Die RFM haben auch 2 vergoldete Dukos, welche für einen HC49 Quarz vorgesehen sind. Einer davon geht an Masse, der andere an den Chip. Da gab es mit Sicherheit einen Kurzschluss.
Die 2 vergoldeten Dukos hab ich schon gesehen. Hab die Vias jetzt noch mal ganau angeschaut. Der Restring unten ist zwar mit Lötstop abgedeckt, aber die Durchkontaktierung im Loch selbst kann ich mit der Messspitze problemlos erreichen. Evt. reicht das ja umd das Problem zu verursachen. Werde in der Serie wahrscheindlich zu den SMD Pads auch noch Stiftleisten im 2mm Raster vorsehen um im Notfall die Module vom Bord distanzieren zu können. Habe übrigens diesbezüglich auch dem Support von HopeRF geschrieben, werde Euch auf dem Laufenden halten. Herzlichen Dank für Eure Hilfe...
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.