Hallo, nach 3 intensiven Tagen fehlt mir jede Idee was verkehrt sein könnte. Fast schon möchte ich eine Belohnung ausschreiben. Es muss gehen aber es geht nicht ... oder "Ich schaff das nicht!" Die strategische Lage: Das Funkmodul läuft an einem STM32F407 ohne Probleme und war im ACK Modus. Ok, also muss es auf einem F103 auch laufen. Vorher auch mal Payload mit ACK aber das brauche ich eigentlich nicht. Die Software auf beiden Systemen ist die Gleiche, bis auf die Hardware Unterschiede zwischen der F1 und der F4 CPU. Da F103 Board ist so ein DIP40 Modul, nur die CPU drauf und die Bootloader Pins über Jumper + USB. Ich debugge es mit einem ST LInkV2, der an die Pins angesteckt ist. Geht prima, auch im Debug RAM Modus. Mit dem LA habe ich mir die Sigale angeschaut, alles bestens! Die SPI tackert die Werte richtig in die Register des RF rein, ich habe sie auch alle wieder ausgelesen, auch die Pipe Adressen, und es steht richtig drin. Kanal ok, Pipes ok, Shockburst usw. Die Rgeister des Rf kann ich inzwischen auch auswendig runterbeten. SPI auf 2.0 Mhz, AHB/APB1/APB2 Prescaler sind alle auf 1 derzeit (Maximale Drehzahl 72Mhz = HCLK). Später ggf. größerer Teiler, spart Strom. Piepsen am Board ergab einwandfreie Verbindungen, die Pins takten einwandfrei, alle einzeln im SingleStep durchgetestet, 1,0,1,0 .... Was geht nicht? Der Sender (Arduino) funkt laufen ein paar Daten in den Raum. Er hat keine Fehlerquelle, mein großes Board empfängt alles einwandfrei was er sendet. An zwei LED sehe ich, ob er ein ACK vom Empfänger bekam oder nicht. Rot = kein ACK, grün = alles prima. Der STM32F103 reagiert nur leider nicht mit einem INT darauf wenn eine Sendung kommt. Auch eine LED ist am INT Pin, eine Blaue mit 100uA Strom damit er nicht belastet wird. Geprüft wurde: INT Auslösung manuell mit GND Kabel -> ok INT Auslösung durch Flag MAX_RT des Funkmoduls -> OK Also ist die INT Strecke vom RF Modul zur CPU in Ordnung. Der INT Pin reagiert auf die Flanke und das RF Modul kann diese Flanke erzeugen. Nur das RX_DS Flag im Stazus Register was ein Paket anzeigt wird nie gesetzt. Denn das würde den INT auslösen. Aber auch manuelle Abfragen zeigen, dass es nie gesetzt wird. Und jetzt gehen mir die Ideen komplett aus :-( Viellicht setze ich doch ne Belohnung aus, wert wäre es mir das schon.. Gruss, Christian
Hallo, Nur aus Neugier: Was für einen Logik Analysator verwendet du? Zur Sache: 1. Schau dir den Signalverlauf doch einmal bei der Funktionierenden Lösung an, und vergleiche mit der nichtfunktionierenden. 2.Versuche mal mit "Breakpoints", den Programm Ablauf in "funktionierenden" und "nicht funktionierenden" nachzu vollziehen und zu vergleichen. Habe auch keine Antwort. Bei keinen Ideen hilft nur: 1. Schritt für Schritt Vergleich 2. Mal Abschalten und zwischendrin was anderes machen ;-) Gruß Marc
Marc schrieb: > Nur aus Neugier: > Was für einen Logik Analysator verwendet du? So ein China Teil, Selae irgendwas. > Zur Sache: > > 1. Schau dir den Signalverlauf doch einmal bei der Funktionierenden > Lösung an, > und vergleiche mit der nichtfunktionierenden. Das ist zwar mühsam aber vermutlich die einzige Chance die beiden Konfigurations Bitströme nebeneinander zu legen, denn danach passiert nix mehr, das Modul ist scharf und wartet. Und wenn die genau gleich sind, dann muss es "anderswo" dran liegen. PS: Board und RF Modul habe ich auch ausgetauscht, nüscht :-(
Christian J. schrieb: > So ein China Teil, Selae irgendwas. Der Selae Logikanalysator kommt aus Californien/USA https://www.saleae.com/ Was du da verwendest ist wohl eher ein Clone mit der Salea Software
Christian J. schrieb: > mein großes Board empfängt alles einwandfrei... könnte es sich da nicht um einen kleinen Denkfehler handeln? Diese Funkmodule sind doch nicht für Broadcast gedacht, sondern für Einzelverbindung mit Handshake, bis das/die Paket(e) richtig rübergekommen sind. Was passiert denn, wenn du dein "großes Board" ausschaltest und nur mit deinem STM32F1xx arbeitest? W.S.
W.S. schrieb: > Was passiert denn, wenn du dein "großes Board" > ausschaltest und nur mit deinem STM32F1xx arbeitest? Das ist natürlich so! Es dürfen nicht zwei Empfänger mit der gleichen Kennung online sein, das gibt Datenmurks. Vergleiche grad die Bitströme der beiden Boards...... bin noch dran. Blöd, dass man Funkwellen nicht debuggen kann. Ergebnis: Niete! Die Konfigurationsdatenströme sind absolut identisch, MOSI und MISO Antwort des RF Moduls. Bullshit!
Ok, Alibi Tätigkeiten beendet wie Nachlöten aller Pins und Header, sogar Kupferfolie zwischen CPU und Funkmodul gehalten, wer weiss.... auch die Linker Options mal geändert. Geguckt ob die Pins viellleicht noch eine andere Funktion haben, die was blockiert.... Ende Gelände. Nach 3 Tagen und 3 Mal drüber schlafen fällt mir nichts mehr ein, was an dieser überschaubaren Platine anders ist.
Naja, ich habs gefunden. Wieder mal zurück an meine Lehrzeit erinnert als es noch keine uC, DC/DC Wandler usw gab. "Jung, wenn es nicht funktioniert prüf erstmal die Versorgungsspannung" Denn 3.3V sind für die ebay Teile einfach nicht drin, auch wenn sie auf dem Voltmeter stehen. Rappelvoll mit Spikes. :-)
Christian J. schrieb: > "Jung, wenn es nicht funktioniert prüf erstmal die Versorgungsspannung" Ich wollts nicht sagen. :-)
noreply@noreply.com schrieb: > Ich wollts nicht sagen. :-) Und nun ist der linke grüne Klotz nur noch stromlose Deko, da ich ihn nicht rausreissen will, des Loches wegen. Wegen der Optik, Auge des Künstlers halt :-) Wie war das noch mit dem Sachsen bei 200 Puls! "Er gääääähhhht, das sch**** Ding gääääht!"
Was ist das für ein Steckbrett? Sieht interessant aus.
Christian J. schrieb: > Vergleiche grad die Bitströme der beiden Boards...... bin noch dran. > Blöd, dass man Funkwellen nicht debuggen kann. > Kann man aber sniffen und analysieren :P
Christian J. schrieb: > Lochrasterplatine? Auf dem Bild sah das Teil weiß aus und ich dachte das wäre ein "besonderes" Steckbrett.
F. F. schrieb: > Auf dem Bild sah das Teil weiß aus und ich dachte das wäre ein > "besonderes" Steckbrett. Ist einfach eine ROTH Epoxy FR4 1,5mm und eine Baumarkt Sprühdose "weiss" :-) Sieht besser aus als dieses braun/grau etc. Hab da so nen Tick, das Ding hängt schliesslich nachher an der Wand ohne Gehäuse.
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.

