Forum: Mikrocontroller und Digitale Elektronik Irda <-> atmega16l


von Anton (Gast)


Lesenswert?

Hallo zusammen,

ich bin seit längerem auf der Suche nach einer Lösung um mit einem uC
(muss in meinem Fall ein atmega16L sein) über die Irda mit einem PC zu
kommunizieren. D.H. ich will eine Datenübertragung für den Bootloader
herstellen. Ich habe bereits einige Einträge gelesen und bin als Lösung
für die Decodierung und Encodierung auf Bausteine wie den MCP2150, Max
3130 oder HSDL7000 gestossen, doch sind diese Preislich doch recht
teuer (5-15 € je nach Bauform) und ich benötige zusätzlich noch eine
Sende und Empfangsdiode.

Nun meine Fragen:
Wer hat mit einem der Bausteine schon positive Erfahrung?
Gibt es andere, kostengünstigere möglichkeiten meine Anforderungen
umzusetzen?
Würde es funktionieren wenn ich den uC über MCP2150 an IR-
sende/empfansdiode verwende oder habe ich etwas grundliegendes
vergessen?

von Markus (Gast)


Lesenswert?

Muß es wirklich IrDA sein oder reicht eine beliebige Infrarotverbindung?
 Letzteres ist deutlich einfacher zu implementieren.

von Anton (Gast)


Lesenswert?

Da ich sehr kompartiebel bleiben will (komunikation mit PC, Handy, PDA
usw.) ist Irda wohl die beste Lösung. Das diese Lösung nicht die
einfachste ist hab ich leider auch schon feststellen müssen :-(

von leo9 (Gast)


Lesenswert?

Wenn die Performance vom Gesamtsystem ausreicht realisiere die
Signalaufbereitung und -Generierung mit Software. Dann brauchst du nur
den IR-Sender und -Empfänger.
Der Unterschied zwischen IrDa und RS232 liegt ja "nur" in der
Impulslänge, sprich das Bit wird nicht in der Mitte sondern am Anfang
abgetastet. Ansonsten kann man den Code einer SW-UART fast 1:1
verwenden.

grüsse leo9

von Alexander Höller (Gast)


Lesenswert?

Das ist aber nur ganz low-level und der IrDA Stack scheint recht
kompliziert zu sein (hab ich mir mal angesehn, dann aber doch sein
lassen)

mfG,
aleX

von leo9 (Gast)


Lesenswert?

ich kann mich ja täuschen, aber die Implementierung des Protokolls
nehmen dir die Bauteile doch auch nicht ab. Soweit ich die kenn'
verändern sie nur die Signalform.

grüsse leo9

von Markus (Gast)


Lesenswert?

@Anton:
Was willst Du denn konkret damit machen? Du schreibst oben, Du willst
Verbindung mit dem Bootloader haben, aber Du willst wohl kaum ein
Firmwareupdate per Handy machen?

Hier gibt es einen kleinen IrDA-Stack:
http://blaulogic.com/pico_irda.shtml

Markus

von Mark Hämmerling (Gast)


Lesenswert?

Salut,

@leo9:
Doch, ICs wie der MCP2150 sprechen alle Schichten bis hin zu IrCOMM.
D.h., Du kannst den wirklich an einen Standard-UART anschließen und
Dich z.B. mit einem simplen Terminal-Programm unterhalten.
Über die Flowcontrol-Leitungen werden dann Signale wie "IrDA-Gerät in
Reichweite" weitergegeben. RING und CD werden je nach Modell
(MCP2150/MCP2155) entweder empfangen oder gesendet. Je nach Anwendung
halt.

@Markus:
Hm, wieso eigentlich nicht? In-Field-Updates mal locker vom Handy aus?
:) Mal eben per IrOBEX vom Palm hin"beamen"?
Als Schnittstelle für PalmAVR hatte ich IrCOMM bereits eingeplant. Zum
Testen fehlt mir im Moment nur der richtige Quarz für den MCP215x. ;(
Kann ja bescheidgeben wenn's funktioniert.

Gruß,
Mark

von Markus (Gast)


Lesenswert?

@Mark:
Der MCP2150 kann ja wirklich sehr viel, aber er spricht z.B. kein
IrOBEX. Das darf man dann doch wieder in Software machen.

von Mark Hämmerling (Gast)


Lesenswert?

Salut,

@Markus:
Haste natürlich recht... das mit dem IrOBEX hatte ich vorhin nur so als
Idee, weil die Palms das zum Beamen nehmen. Mit dem MCP215x würde das
aber nicht klappen.
Das schöne an denen ist, daß Du scheinbar bestehende Anwendungen mit
IrCOMM ausstatten kannst. Z.B. ein STK500, ohne Dich mit der Firmware
rumärgern zu müssen. Wenn die Firmware aus dem eigenen Haus stammt,
sieht's natürlich schon anders aus. Dann ist u.U. ein Software-Stack
viel praktischer.

Gruß,
Mark

von Markus (Gast)


Lesenswert?

@Mark:
IrOBEX war schon ein gutes Beispiel, schließlich werden z.B. Handys von
sich aus auch nichts anderes sprechen.

Woher bekommt denn eigentlich als Privatkunde den MCP2150 günstig her?
Reichelt und segor führen ihn nicht, Conrad will 16 Euro dafür. Naja,
ich wollte eh' mal versuchen, IrDA in Software zu quetschen.

Markus

von Alexander Höller (Gast)


Lesenswert?

Farnell hat ihn um 7,05 €
Best.Nr.:
3866440 (DIP)
3866452 (SOIC)

Digi-Key hat ihn 7,63 €
MCP2150-I/P-ND (DIP)
MCP2150-I/SO-ND (SOIC)

mfG,
aleX

von Mark Hämmerling (Gast)


Lesenswert?

Salut,

@Markus:
Naja, kommt drauf an, was Du machen willst. Wenn Du Visitenkarten und
Kalenderdaten austauschen willst, ist IrOBEX das richtige. Wenn Du
drahtlos online gehen willst über's Hayes-Interface, dann mußt Du
IrCOMM sprechen.

@Alexander:
Danke für den Tip. Dachte eigentlich, bei Farnell bereits erfolglos
gesucht zu haben. Der Preis ist zwar recht hoch, aber immerhin nur die
Hälfte von dem beim großen C. :)

Gruß,
Mark

von Markus (Gast)


Lesenswert?

@Mark:
Ich will Texte vom Handy auf mein Gerät übertragen. Das einzige was ein
Handy initiieren kann ist wohl IrOBEX.

Markus

von SwissMan (Gast)


Lesenswert?

Habe ich das richtig verstanden, dass es nicht möglich ist, mit dem 
MCP2150 oder MCP2140 Daten ZWISCHEN ZWEI MICROCONTROLLERN auszutauschen 
über die Infrarot Schnittstellt?
Wenn der uC also wahlweise mit PC oder Palm oder einem weiteren 
(identischen) uC Device kommunizieren soll, wie müsste man so etwas 
umsetzen? (Kommunikation jeweils nur peer-to-peer)

Gibt es eine andere Schnittstelle / Protokoll, welche(s) diesen 
Datenaustausch vereinfachen könnte? Konkret möchte ich einen String mit 
15 bytes austauschen und am anderen Ende anzeigen.

von SwissMan (Gast)


Lesenswert?

Ich bin inzwischen mit der Suchfunktion hier im Forum noch fleissig am 
suchen gewesen. Leider bisher ohne erfolg. Entweder taugen die Lösungen 
nur für direkte kommunikation zwischen zwei uC's (z.B. über ein 
Protokoll einer TV Fernsteuerung), oder die Kommunikation mit einem PC 
ist möglich, dafür muss aber auf die Kommunikation zwischen den 
Mikrokontrollern verzichtet werden...

Gibt es auch IrDA Protokoll IC's, welche auch die Kommunikation zwischen 
zwei uC's unterstützen? (Ein Protokoll IC, der auch als Primary device 
fungieren könnte)

Hat sich jemand damit schon beschäftigt?

von Christof C. (tinybastler)


Lesenswert?

Kommunizieren kann man doch auch über RS232 Infrarot. Dann geht beides, 
wieso muss es denn IrDa sein?

von SwissMan (Gast)


Lesenswert?

Gute Frage. Danke für die rasche Antwort.
Mein Laptop hat eine normale Ir Schnittstelle eingebaut. Darüber würde 
ich die Infos gerne senden. Würde das denn gehen ohne IrDA?? Oder 
unterstützt der Laptop nur IrDa? (War meine Vermutung...)

Ausserdem soll es mit meinem Palm und dem Handy funktionnieren. Und 
natürlich sollen sich die uC auch untereinander verständigen können.

Wie bringe ich den Laptop denn dazu (ohne zusatzhardware) rs232 infrarot 
zu kommunizieren? Braucht es dafür nur einen Treiber? Eine Rs232 
Schnittstelle hat der übrigens auch nicht.

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.