Das Deutsche Casio-Taschenrechner Forum wurde zum 31.12.2013 geschlossen und kann weiterhin als Nachschlagewerk verwendet werden.
Wer mehr erfahren möchte: Ein sehr guter Beitrag von Elias

Drahtlose übertragung von Daten

Die populärsten Taschenrechner. (Ohne CAS - Ausnahme: CFX-9970G)

Re: Drahtlose übertragung von Daten

Beitragvon Jocbe » Sa 5. Sep 2009, 15:12

Hallo,
Aber nach 13h könnte sich das Funkmodul abstellen, wenn es merkt, dass gerade die Datenübertragung aktiv ist, oder? Ist es denn schlimm, wenn 13h auch vom Funkmodul übertragen wird, wenn man Daten übertragt? Solange nichts hängen bleibt und der GTR mach, was er soll, ist doch eig. alles ok!?
Jocbe
 
Beiträge: 41
Registriert: Do 23. Jul 2009, 00:20
Taschenrechner:  
fx-9860G SD (mit OS2)
CFX-9850GB Plus (Speicher- & Quarzupgrade)
CFX-9850GC Plus

Re: Drahtlose übertragung von Daten

Beitragvon elias.koegel » Sa 5. Sep 2009, 17:41

Das ist ja nicht das Problem. Das Problem ist, dass sowohl Funkmodul als auch der andere GTR gleichzeitig mit 13h antworten, was zur Folge hat, dass auf der Leitung reinstes Chaos ist und mit geringer Wahrscheinlichkeit ein 13h am sendenden GTR ankommt. Habe ich das so richtig verstanden?

Falls ja, könntest du das Modul einschalten, die 15h empfangen und einen kurzen Moment warten. Genau so lange, wie man braucht, um festzustellen, ob auf der Gegenseite ein GTR anfängt, die 13h zu übertragen. Sollte das der Fall sein, kannst du das Modul abschalten. Ansonsten muss das Modul mit der Übertragung fortfahren. Wenn ich das richtig in Erinnerung habe, ist der Zeitraum, in dem die 13h kommen muss groß genug, um sowas machen zu können. Da muss man halt nur rausbekommen, wie lange ein GTR braucht, bis er mit 13h antwortet.
Und außerdem muss man den Status der Tx-Leitung prüfen können. Also müsste man die TX-Leitung noch auf einen anderen (hochohmigen) Eingang vom µC legen, der dann überprüft, ob die Leitung gerade benutzt wird, oder nicht.
Noch ein Problem fällt mir gerade ein: Ist Tx hochohmig, wenn der gerade nichts sendet? Wie's aussieht ist er das nicht. Zumindest ist im Datenblatt der IDLE-Status als high eingezeichnet. Aber da bin ich mir nicht sicher.
Datasheet m8, page 138 hat geschrieben:IDLE: No transfers on the communication line (RxD or TxD). An IDLE line must be high.

Wenn das wirklich so ist, dürfte es sogar Probleme bei der Übertragung zwischen den zwei Rechnern geben, solange der µC an ist, und nichts sendet (aber die UART aktiv ist). Du müsstest also sowieso die UART ausschalten, die beiden Kanäle als Eingänge definieren und deren Pullups ausschalten. Dann müsste es gehen.
Benutzeravatar
elias.koegel
 
Beiträge: 296
Registriert: Mo 8. Dez 2008, 18:16
Taschenrechner: .
CFX 9850 GB+
FX 991s

Re: Drahtlose übertragung von Daten

Beitragvon kehrblech » Sa 5. Sep 2009, 18:27

Falls ja, könntest du das Modul einschalten, die 15h empfangen und einen kurzen Moment warten. Genau so lange, wie man braucht, um festzustellen, ob auf der Gegenseite ein GTR anfängt, die 13h zu übertragen. Sollte das der Fall sein, kannst du das Modul abschalten. Ansonsten muss das Modul mit der Übertragung fortfahren. Wenn ich das richtig in Erinnerung habe, ist der Zeitraum, in dem die 13h kommen muss groß genug, um sowas machen zu können. Da muss man halt nur rausbekommen, wie lange ein GTR braucht, bis er mit 13h antwortet.

Das sollte funktionieren. Hat eben nur den Nachteil, das die Datenübertragung unnötig länger wird.
Wenn das wirklich so ist, dürfte es sogar Probleme bei der Übertragung zwischen den zwei Rechnern geben, solange der µC an ist, und nichts sendet (aber die UART aktiv ist). Du müsstest also sowieso die UART ausschalten, die beiden Kanäle als Eingänge definieren und deren Pullups ausschalten. Dann müsste es gehen.

TX liegt auf VCC, wenn nichts gesendet wird. Im alten Modul habe ich TX erst eingeschaltet, wenn das entsprechende Signal vom Taschenrechenr kam, vorher war es hochohmig.
Und außerdem muss man den Status der Tx-Leitung prüfen können. Also müsste man die TX-Leitung noch auf einen anderen (hochohmigen) Eingang vom µC legen, der dann überprüft, ob die Leitung gerade benutzt wird, oder nicht.
Ein extra Eingang ist nicht eigentlich nicht nötig. Solange der TX nicht eingeschaltet ist, kann man den TX-Pin dafür benutzen. Sobald man TX aktviert, liegt die Leitung sowieso auf VCC.

Die ganzen Probleme sollten sich also lösen lassen. Und schon fällt mir das nächste ein:
Wann schaltet sich das Funkmodul aus? Denn sobald es das tut, gehen eventuell empfangene Daten verloren. Das alte hat immer auf ein Signal vom Taschenrechner gewartet. Das hat den Nachteil, das es nicht ausgeht, wenn man den Taschenrechner resettet während das Programm läuft. Deshalb habe ich den Zustand des RX-Pins abgefragt. Wenn dieser länger als 100ms auf GND liegt schaltet es sich auch ab. Das geht mit den Send- und Receive-Befehlen nicht mehr, denn zwischen den Befehlen kann es schonmal lange Zeiten geben, in denen nichts gesendet wird. Der Taschenrechner (zumindest der fx-9860 schaltet dann seine TX-Leitung (also das RX des Funkmoduls)) hochohmig. Wie sieht das beim CFX aus?

Bei diesen ganzen Problemen könnte es doch einfacher sein einen Schalter zu benutzen, oder? Natürlich keine schöne Lösung, aber eine wirkungsvolle, denn es gibt noch ein Problem: wenn man im Link-Menü die Schnittstelle auf 3-Pin eingestellt hat, ist das Funkmodul immer an, es kann sich gar nicht ausschalten. Da es deutlich mehr Strom verbraucht als der Taschenrechner, werden die Batterien nicht lange halten.
kehrblech
 
Beiträge: 52
Registriert: Fr 5. Jun 2009, 22:23

Re: Drahtlose übertragung von Daten

Beitragvon elias.koegel » Sa 5. Sep 2009, 19:12

Du hast recht, das einfachste scheint zu sein, einen Schalter einzubauen. Damit wäre die Stromversorgung sicher unterbrochen und es ist sichergestellt, dass keine Übertragung verloren geht. Auch kann man genau definieren, ob ein TR oder das Funkmodul kommunizieren sollen. Also eine durchaus intuitiv zu bedienende Lösung.

Allerdings sehe ich da noch ein Problem. Der Schalter ist ein 1 Wechsler Schiebeschalter. (Was umfangreicheres wird viel zu groß.) Was genau muss man nun schalten?
Ich würde intuitiv Vcc schalten. Allerdings weiß ich nicht, ob die Pins dann hochohmig werden? Sollte das nicht sein, gibt es immer noch Probleme bei der Übertragung zu einem anderen GTR. Außerdem könnte es passieren, dass sich die Schaltung dann über Rx und Tx mit Strom versorgt. (?)
GND schalten dürfte kein bisschen besser sein.
Rx oder Tx schalten könnte gehen, allerdings braucht man dann eine Schaltung, die den Rest der Schaltung aus dem Status von Rx oder Tx mit Strom versorgt, was wieder ganz schön kompliziert werden dürfte.
Benutzeravatar
elias.koegel
 
Beiträge: 296
Registriert: Mo 8. Dez 2008, 18:16
Taschenrechner: .
CFX 9850 GB+
FX 991s

Re: Drahtlose übertragung von Daten

Beitragvon kehrblech » Sa 5. Sep 2009, 19:30

Tja, ich habe keine Ahnung was man schalten kann, sodass es noch funkioniert. Wenn man GND und VCC schaltet sollte es auf jeden Fall gehen. Vielleicht mit dem Schalter GND und VCC dann über einen Transistor?
kehrblech
 
Beiträge: 52
Registriert: Fr 5. Jun 2009, 22:23

Re: Drahtlose übertragung von Daten

Beitragvon Jocbe » So 6. Sep 2009, 18:34

Mann könnte doch auch einen dip-Schalter nehmen. Die sind verhältnismäßig klein und haben viele Schalter. Mann müsste dann zwar ein Schaltersegment für VCC und eines für GND nehmen, sodass man dann immer zwei Schalter ein- bzw. ausschalten muss, aber das dürfte doch eigentlich kein Prob. sein. Bei Reichelt oder Conrad gibt es da ja eine große Außwahl und sehr teuer sind sie auch nicht. Den Dip-Schalter kann man sich ja ins Batteriefach legen bzw. beim fx9860g bauen.
Jocbe
 
Beiträge: 41
Registriert: Do 23. Jul 2009, 00:20
Taschenrechner:  
fx-9860G SD (mit OS2)
CFX-9850GB Plus (Speicher- & Quarzupgrade)
CFX-9850GC Plus

Re: Drahtlose übertragung von Daten

Beitragvon elias.koegel » So 6. Sep 2009, 21:19

Is nur bissl eng im Batteriefach, wenn dort schon zwei solche Schalter eingebaut sind. Und in der Größe lassen die sich echt bescheiden bedienen. (Sind übrigens solche: http://www.reichelt.de/?ACTION=3;ARTICL ... ROVID=2402) Die Schalterleisten passen dort nicht richtig rein.
Ich denke, es könnte reichen, wenn du nur VCC schaltest. (In der Hoffnung, dass die IO-Pins des AVR dann hochohmig sind.) Es darf halt nur kein Widerstand oder Spule an den TX und RX-Leitungen hängen, was aber normalerweise eh nicht der Fall ist. Probier das einfach mal. (Vielleicht erstmal auf einem Probeaufbau ;-) )
Falls das schiefgehen sollte, kannst du ja immer noch die Variante mit einem zweiten Schalter in GND umsetzen.
Benutzeravatar
elias.koegel
 
Beiträge: 296
Registriert: Mo 8. Dez 2008, 18:16
Taschenrechner: .
CFX 9850 GB+
FX 991s

Re: Drahtlose übertragung von Daten

Beitragvon kehrblech » Mo 7. Sep 2009, 15:25

Ich denke, es könnte reichen, wenn du nur VCC schaltest. (In der Hoffnung, dass die IO-Pins des AVR dann hochohmig sind.)

Ne, das geht leider nicht. Der AVR versucht sich dann über die Datenleitungen mit VCC zu versorgen.

Ich habe jetzt aber eine Lösung mit nur einem Schalter gefunden:
VCC wird mit dem Schalter geschaltet, GND über einen NPN-Transistor. Die Basis dieses Transistors ist mit dem VCC des AVRs verbunden, er schaltet also nur durch, wenn der Schalter gerade an ist. Ist der Schalter aus, liegt am AVR gar keine Spannung an. Auf dem Steckbrett läuft es schon (ohne Funk).
kehrblech
 
Beiträge: 52
Registriert: Fr 5. Jun 2009, 22:23

Re: Drahtlose übertragung von Daten

Beitragvon elias.koegel » Mo 7. Sep 2009, 18:00

Eine zugegeben schöne Lösung. Du bist ziemlich begabt, im Probleme elegant lösen, wie mir scheint. Schon die Lösung, die Schaltung bei Nichtbenutzung zu deaktivieren hat mir gut gefallen.
Benutzeravatar
elias.koegel
 
Beiträge: 296
Registriert: Mo 8. Dez 2008, 18:16
Taschenrechner: .
CFX 9850 GB+
FX 991s

Re: Drahtlose übertragung von Daten

Beitragvon kehrblech » Mo 7. Sep 2009, 20:23

So, ich habe mal die Platine entworfen. Sieht bis jetzt so aus. Die etwas übergroße Massefläche bleibt natürlich nicht an der Platine dran, die soll nur verhindern, dass das Ätzmittel zu schnell verbraucht wird. Die Platine wird etwa 23*29mm groß, das müsste passen, oder?
Mit dem Ätzen dauerts leider noch etwas, ich kann hier zu Hause keine so feinen Layouts ausdrucken. Vielleicht am Wochenende.
kehrblech
 
Beiträge: 52
Registriert: Fr 5. Jun 2009, 22:23

VorherigeNächste

Zurück zu CFX-9x50 G / GB / GC, fx-9750 G / GA, fx-7400 G

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste