Forum: Mikrocontroller und Digitale Elektronik Kommunikation per uc und Handy


von Posseidon (Gast)


Lesenswert?

Hi Leute

Also ich hab folgendes Problem!
Hab mein Siemens M35i Handy per datenkabel an den PC angshclossen (COM1) 
und dann per hyperterminal drauf zugegriffen (Geschw: 19200 baud, 
Datenbits: 8 parität: Keine, Protokoll: Kein stoppbits: 1) ok dann kann 
ich die at befehle eingeben und das handy reagiert drauf ganz normal!

sodala jetzt wollt ich das gleiche mit meinem u-Controller versuchen nur 
da gibt das handy keine Zeichen von sich. die geschwindigkeit wäre 
richtig eingestellt.

ich schicke die daten einfahc über die UART schnittstelle raus! das 
hyperterminal empfängt den text den ich rausschicke ohne probleme nur 
das handy reagiert nicht darauf!

Jetzt meine Frage: Kennt wer erstens ein Tutorial mit dem man per uC ein 
Handy ansteuern kann? bzw kann mir jemand sagen wie man das macht! bis 
jetzt hab ich einfach das beispiel aus dem Tutorial dieser Seite 
genommen und so wie dort TEST ausgegeben wird halt einen Befehl ans 
handy geschickt!!!

BITTE HELFT!

Greez und thx Posseidon

von thkaiser (Gast)


Lesenswert?

Kann es sein, daß für das Handy außer RXD und TXD auch die anderen 
Signale (z.B. CTS, RTS ...) generiert werden müssen?

von Posseidon (Gast)


Lesenswert?

hmm normalerweiße nicht oder? wenn ich über das hyperterminal at+cmgd=1 
raussend und es handy dann als bestätigung zum löschen der sms OK 
zurückschreibt dann wird cts und rts doch nit verwendet oder?

von AndreasH (Gast)


Lesenswert?

@Posseidon:
Das kannst Du so nicht sagen.
Wenn ich bei mir Hyperterminal aufrufen und Com1/2 anwähle ist dort 
unter den Eingenschaften unter Protokoll "Hardware" eingestellt.
Ich meine, dass hiermit der Hardwarehandshake eingeschaltet ist.
Versuch doch einfach mal hier "keins" einzustellen.
Wenn dann dein Handy noch antwortet dann ist es ohne Hardwarehandshake.

Die andere Möglichkeit ist, das Kabel aufzuschrauben. Wenn möglich und 
nicht verschweisst. Da siehst Du auch ob die Leitungen für RTS/CTS usw. 
angeschlossen sind.

Wenn GND,TXD und RXD aber nicht vertauscht sind, dann riecht das schon 
nach Hardwarehandshake. Vorausgesetzt, Du hast die selben zeichen 
gesendet wie mit Hyperterminal.

von BAB (Gast)


Lesenswert?

wie hast du dein handy am UC angeschlossen??
mit dem datenkabel?

von Posseidon (Gast)


Lesenswert?

protokoll ist abgeschaltet und es funktioniert einwandfrei mit dem 
Hyperterminal!

ich schließe das handy mit dem datenkabel an!!


andere Frage gleich zu diesem Problem dazu weiß wer wie man einen Hex 
Code in Asci umwandelt?

von Arne (Gast)


Lesenswert?

Hallo Posseidon,

welchen Treiberbaustein benutzt Du vom MC zum Handy? Es wäre nicht 
undenkbar, das sich da noch ein Wandler fürs Handy Strom abzwackt und 
Dein RS232-Treiber (womöglich MAX232/Derivat) da anderer Meinung ist. 
Die Teile hocken oft direkt im eingegossenen Stecker, wo man sie weder 
vermutet oder erahnen könnte und wollen dennoch versorgt werden! DTR und 
RTS mal messen, wenn das Handy im PC-Einsatz ist. Diese Leitungen der 
ser. Schnittstelle vom MC mit entsprechender Versorgung nachstellen. 
Schutzwiderstand zur Strombegrenzung von ca. 220 Ohm empfehlenswert!

Wenn alles nichts hilft, noch mal 'nen 1488 und 1489 als Treiber mit 
festen +/-12V max. 50mA versuchen. Die IC's finden sich notfalls an nahe 
zu jeder seriellen Schnittstelle eines PC's!

Dass ich keine Garantie für den Vorschlag übernehme, dürfte wohl klar 
sein, bin aber so auch schon einigen UART-Stinkern auf die Schliche 
gekommen :)


Die Wandlung Hex-Code im ASCII-Format auszugeben, ist rel. einfach. Aus 
einem Hex-Wert (1Byte = 8Bit) erhälst Du zwei ASCII-Zeichen. Daher mußt 
Du Nibble für Nibble, also 4Bit-weise abarbeiten, d.h. zuerst die obern 
4 Bit und dann die unteren 4 Bit, wenn ich jetzt mal von 'nem Byte 
ausgehe. Zum berechnen müssen die oberen 4Bit nach unten geschoben 
werden (z.B. div 16).
Beim berechnen des unteren Nibble nicht vergessen, daß obere zu löschen!

Die eigentlich Berechnung:
Urspünglichen 4-Bit-Wert sichern, 10d abziehen: Wenn Überschlag des 
Accus erfolgt (Carry schlägt aus), stellt das Nibble eine Ziffer dar, 
d.h. 48d (ASCII-CODE für '0') auf das Ursprungsnibble addieren. Erfolgt 
kein Überschlag (Carry entspannt = 0), stellt das Nibble einen 
Buchstaben dar, d.h. 65d (ASCII-CODE für 'A') auf Ursprungsnibbel 
addieren.
Wenn Du das in Assembler für 'nen MCs-51er brauchst, kannst Du es auch 
von mir bekommen. Ist schnell gefunden!

so ... und nu wird hier mal geschlafen... |-)

Gruß,
Arne

von Sven (Gast)


Lesenswert?

Hallo,

Probier es mal mit 5 V an pin 4 des Datenkabels.
Das braucht nämlich Betriebsspannung,damit der integrierte Pegelwandler 
arbeiten kann.
Wenn man das Handy per Datenkabel an den PC anschließt, bekommt es die 
Spannung Automatisch von der Seriellen Schnittstelle.


Frohe Weihnachten noch an alle


Sven

von Thorsten (Gast)


Lesenswert?

Hallo, der letzte Eintrag ist zwar schon ein paar Jährchen her, aber ich 
habe genau das selbe Problem.
Hab festgestellt, dass der Pin7 des 9pol. D-sub Steckers ne Funktion 
hat. Hab einen nicht benötigten Pin nach dem anderen (außer Rxd Txd 
Masse) beim Betrieb am PC mit Terminalprogramm weggenommen. Siehe da, 
beim Pin7 funktioniert es nicht mehr. Super, dachte uch. Beim Betreib am 
µC einfach den Pin7 mit auf die 5V gelegt und es funktioniert trotzdem 
nicht...
Keine Ahnung was ich machen soll. Zerlegen kann ich des Datenkabel 
nicht, des ist vergossen. Hat einer von euch ne Idee?
Übrigens Handy ist ein Siemens ME45 das aber Baugleich zum S45 ist.
Ach ja, Rxd und Txd hab ich auch schon mal verdreht, probehalber, 
brachte aber nix, wie auch.
Schönen Abend noch.

Gruß
Thorsten

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.