Hallo erstmal :) Lesen tu ich nun schon seit was längeren in diesen Forum und bin bislang begeistert, Sachliche Foren in dieser Richtung sind derweil sehr selten nun aber ist es soweit, wo auch ich mir einige Fragen stelle es geht um einen Mikrocontroller der über die UART mit einen PDA über IRdA kommunizieren soll grundlegende Erfahrungen mit dem PIC18F von Microchip sind vorhanden, so das wir uns derweil schwer tun mit einen Umstieg auf die PIC24F Familie wo das IRdA über einen on Board Encoder bereits implementiert ist.... nun weiss ich das der PIC18F ausserdem auch mit bis zu 2 UART's erhältlich ist, nun ist der PIC18F aber gennerelle wohl als 8 Bit Prozessor zu verstehen, daher die 1. Frage, Funktioniert eine Kommunikation prinzipielle über einen externen IRdA Encoder wie dem MCP2140 (denn der würde schon ein ausreichendes Protokoll liefern) mit einen 8Bit Architektur Chip wie den PIC18F? In der Literatur fand ich nichts in der hinsicht, ausser das der externe Encoder erstmal wohl mit PIC Chips zusammenarbeiten kann (der MCPXXX ist ja auch von Microchip ö.Ö), welche eine IRdA Code Tabelle mit on Board haben, bei den PIC 18 F kann ich dies aber nicht mit Sicherheit sagen! spielt so eine Tabelle überhaupt eine Rolle, sollte der MCPXXX Chip die nicht onBoard haben? 2. Frage kann jeder Chip mit einer UART schnittstelle über dem MCP2140 kommunizieren? p.s. bei digikey werben sie mit einen Produkt, bei welchen ein PIC18FXXX in Verwendung ist, welcher wohl laut Werbung mit dem MCP2140 zusammmen arbeitet, (ist Werbung von Leuten denen ich mal eiskalt unterstelle, das die gerne was verkaufen wollen, und ich trau dort den Braten nicht, denn ich suche ja nach einer schnellen Lösung für ein Problem und nicht nach einer Herrausvorderung ....) eine dritte Frage kam noch auf, da microchip mit der PIC24F Familie Chips anbietet, welche wohl mit einen onBoard IRdA Enccoder ausgestattet sind, fragten wir uns, funktioniert die Kommunikation ausschliesslich nur über einen 16 BIT Architektur Chip (die PIC24F sind generelle ja 16bit) oder ist dies nur Zufall? ich bedanke mich mal in Vorraus für jedes Informationsbringende Engargement mit grüssen Axel
Axel F. schrieb: > grundlegende Erfahrungen mit dem PIC18F von Microchip sind vorhanden, so > das wir uns derweil schwer tun mit einen Umstieg auf die PIC24F Familie > wo das IRdA über einen on Board Encoder bereits implementiert ist.... An welcher Stelle tut Ihr Euch schwer? Programmiert Ihr noch in Assembler? Ja dann ist klar. In C sollte der Umstieg relativ schmerzlos sein. > Funktioniert eine Kommunikation prinzipielle über einen externen IRdA > Encoder wie dem MCP2140 (denn der würde schon ein ausreichendes > Protokoll liefern) mit einen 8Bit Architektur Chip wie den PIC18F? Prinzipiell ja. Der Haken ist: Welche Teile von IRDA braucht Ihr? Braucht Ihr OBEX? Wenn ja, dann braucht Ihr mindestens einen 16 Bit PIC und könnt mit IRDA-Bridges wie dem MCP2140, aber auch anderen nicht oder nur eingeschränkt arbeiten. Braucht Ihr FIR? Wenn ja, dann ist der MCP2140 zu langsam, dann braucht Ihr eine gänzlich andere Lösung. Ein wenig Grundwissen über Irda und die einzelnen Protokollbestandteile braucht Ihr, um zu entscheiden, was Ihr nehmen könnt. > kann jeder Chip mit einer UART schnittstelle über dem MCP2140 > kommunizieren? prinzipiell ja. > eine dritte Frage kam noch auf, > da microchip mit der PIC24F Familie Chips anbietet, welche wohl mit > einen onBoard IRdA Enccoder ausgestattet sind, fragten wir uns, > funktioniert die Kommunikation ausschliesslich nur über einen 16 BIT > Architektur Chip (die PIC24F sind generelle ja 16bit) oder ist dies nur > Zufall? Ein Faktor ist der Hardware-Fähigkeit eines UARTs, ein anderer die Komplexität bestimmter Protokollbestandteile wie OBEX. Das hängt davon ab, welche Fähigkeiten Ihr braucht. fchk
Danke erstmal für die ausführliche und schnelle Antwort also, Programmiert wird der chip wohl in ein Like C Derivat, hier sind Erfahrungen vorhanden und dürfte nicht das Problem sein, Befürchtungen waren vorhanden, beim Verwenden von vorhandenen oder nicht vorhandenen Registern oder halt knapp ausgedrückt, die Angst vor bösen Überraschungen zum 2. Punkt das es hier eine Client Server Kommunikation gibt, hmm, hier müsst ich in Erfahrung bringen, ob der eingespannte PDA welcher über IrDA mit den PIC kommunizieren soll, seine Informationen über OBEX bereitstelllt oder nicht, ich denke mal das man hier das OBEX Protokol umgehen kann in dem man im PIC entsprechende Register ausliest und entsprechend interpretiert, hier kommt noch hinzu, das der Auftraggeber das PDA mit eigener Software ausstattet, bei welcher noch spezifiziert werden kann, das er dem OBEX ausweicht also PDA schickt Anforderung an PIC, dieser liest ankommende Daten aus, und interpretiert diese entsprechend hmmm, FIR stimmt, dafür ist der MCP2410 zu langsam, der ist gefixt auf 9600 Baud gefordert in der Anwendung ist aber nur SIR in der Baudrate 9,6k, da würde er funktionieren, als reines Übertragungsprotokol war tinyTP vereinbart ich glaube ich werde noch einmal mich in das OBEX hineinlesen, das kann nicht unwichtig sein, schaden schon gar nicht ...,, deine Antwort zumindest bekräftigt mich grad darin mich für den PIC 18 F zu entscheiden, dann aber müsst ich das OBEX nachimplementieren oder auf den 8 bit portieren, oder ich vereinbare ein eigene Lösung hmmmm, :) danke für die Hilfreiche Antwort jetzt muss ich nur noch herrausfinden wieviel Energie die PIC18FXXX so im Schnitt ziehen LG Axel
Müsst Ihr einen PIC18 verwenden? Ansonsten schaut Euch mal die TI MSP430-Serie an. Plus diese Appnote - die ist für Dich auch so sehr empfehlenswert, weil Du darin sehr viele IRDA Basics findest: http://www.ti.com/mcu/docs/litabsmultiplefilelist.tsp?sectionId=96&tabId=1502&literatureNumber=slaa202a&docCategoryId=1&familyId=342 Die in dieser Appnote vorgeschlagene Lösung hätte den Vorteil, dass Ihr den IRDA-Protokollchip wegoptimieren könntet - weniger Platz, weniger Strom, weniger Kosten. Obendrein ist das eine sehr energieeffiziente Lösung - stromsparend zu programmieren ist beim MSP430 besonders einfach, weswegen die MSP430 sehr gerne bei batteriebetriebenen Geräten zum Einsatz kommen. fchk
Axel F. schrieb: PS: Was mir noch auffiel: > deine Antwort zumindest bekräftigt mich grad darin mich für den PIC 18 F > zu entscheiden, dann aber müsst ich das OBEX nachimplementieren oder auf > den 8 bit portieren, oder ich vereinbare ein eigene Lösung Du hast mich nicht verstanden: Wenn Du den IRDA-Protokollchip verwendest, macht der das GESAMTE Protokoll. Du wirst dann keine Möglichkeit haben, irgendetwas am IRDA-Protokollstack nachzuimplementieren. Dann geht ausschließlich IrComm mit dem, was der Chip halt kann. > jetzt muss ich nur noch herrausfinden wieviel Energie die PIC18FXXX so > im Schnitt ziehen Wenn es denn unbedingt ein PIC18 mit dem Irda-Protokollchip sein muss, dann nimm einen PIC mit einem J in der Typenbezeichnung. Das sind die modernen Typen mit dem geringsten Stromverbrauch und 2.5V Core. fchk
Sorry, konnt erst jetzt Antworten also ein PIC 18 muss es aus den einfachen Grund sein, weil der Verantwortliche Schiss vor anderen Chips hat, es besteht die Befürchtung das es kurzfristig zu Problemen kommen könnte, die dann nicht beherrschbar sind das schränkt die Auswahlmöglichkeit stark ein. nun, das OBEX das weiss ich nun, arbeitet in Zusammenhang mit FIR zusammen, im SIR wird dies nicht verwendet hier bestand auch eines der Probleme hätte nun der Kunde FIR verlangt, so hätten wir uns einen eigenen FIR Treiber basteln müssen, sofern es keinen gegeben hätte, der das ohnehin schon kann, danach gesucht hab ich aber nicht mehr, da der Kunde mit SIR zufrieden ist dort wird das OBEX nicht verwendet (Zumindest beim Kunde nicht) nun OBEX wird aufgesetzt oberhalb von Schicht 5 das ist in etwa die gleiche Kommunikationsschicht wie HTTP beim Internet (OSI-Model) also irgendwo bei Schicht 6 oder 7 es ist eine Server Client Kommunikationsebene, schlicht gesagt, hätte ich eine Art Browser in Chip implementieren müssen, für den Fall das OBEX eine Rolle gespielt hätte,,, da hatte ich aber Glück da konnte ich andere Wege gehen nun jetzt liegt mir erstmal der programmer und ein satz chips vor so das ich erstmal loslegen kann :) ich werde mir deinen linkhinweis zur TI seite einmal anschauen noch, danke dir für deine Hilfe bis dahin :) es grüsst Axel F.
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.