Sagt mal Jungs (und Maedels) ihr seit doch alle echte Bastler von Schrot und Korn. Dann habt ich doch bestimmt schonmal den USB-RS232 Converter von Prolific verwendet. Hat es da schonmal einer geschafft die GP0-4 Leitungen anzusprechen? Oder die Leitungen wie DSR_N, DCD_N usw als Ausgaenge zu verwenden? Laut Datenblatt soll das ja moeglich sein, aber die schweigen sich leider total ueber Kommandos und Register in dem Prozessor aus.
Oder weiss wo man ein Datenblatt findet das etwas ausfuehrlicher ist?
Olaf
ps: Ich spreche den Baustein natuerlich nicht ueber seine serielle Emulation an, sondern direkt! DTR_N und RTS_N kann ich so schon wackeln lassen.
Sowas in der Art habe ich mir schon fast gedacht. Allerdings frage ich mich was an ein paar einzelnen Portleitungen an so einen nun wirklich vollkommen unaufregenden Baustein so geheimnisvoll sein soll.
Noch interessanter finde ich aber das diese Leitungen wohl weltweit noch niemand eingesetzt hat. Ich kann doch nicht der erste sein der auf die Idee gekommen ist. Es gibt im ganzen Internet nirgendwo auch nur eine halbe Sourcezeile die sich auf die GP-IO Leitungen bezieht.
Habe das gleiche Problem mit einem TUSB3410. Hat auch schöne GPIO's, im TI UART code werden die aber als debug output verwendet. (Es gibt aber auch einen HID Beispielcode, in dem die GPIO's voll zu Ehren kommen - dann ist aber wieder kein UART da, den brauch ich eben auch.)
Hauptproblem ist der USB Treiber auf der PC Seite. Ein CDC device kennt keine GPIO's. Der soll in meinem Fall die GPIO's steuern.
Also Treiber selber machen. Und dann hilft eben keine Zeile Code aus dem Internet, ausser zur Orientierung.
Bleibt noch den binary code zu patchen.
Hach, damals, als es noch den parallelen Port gab...
--
www.oho-elektronik.de
OHO-Elektronik
Michael Randelzhofer
FPGA und CPLD Mini Module
Klein aber oho !
Kontakt:
Tel: 08131 339230
mr@oho-elektronik.de
Usst.ID: DE130097310
Moment. Die Portleitungen gehören nicht zur Schnittstellenbeschreibung und sind damit für Standardanwendungen nicht notwendig. Mit den Leitungen lassen sich sensor/actor Anwendungen im design einarbeiten. Son Chip muss auch sein Geld irgendwie verdienen....
Um mal an Mike anzuknüpfen: Doch es gab mal einen .INF-Filecode, mit dem dann später auch die IO_Leitungen ansprechbar waren. Bitte frag mich nicht wo ich das gelesen habe. Da musst Du ggfls. selber nochmal suchen. 8)
"Peter Kern" schrieb im Newsbeitrag news: snipped-for-privacy@mid.individual.net...
Hallo Peter,
falls du mich meinst: mit SDCC, hab schon ein kleineres Gerüst am laufen, geht ganz gut, und 8051 Tools gibts zum Glück massenweise kostenlos, vor allem Disassembler... (z.B. d51v26.zip)
MIKE
formatting link
OHO-Elektronik Michael Randelzhofer FPGA und CPLD Mini Module Klein aber oho ! Kontakt: Tel: 08131 339230 snipped-for-privacy@oho-elektronik.de Usst.ID: DE130097310
Ich weiss nicht was ein CDC-Device ist. Aber ich hatte mit dem Ansteuern des PL-2303HX keine Probleme. Ich musste nur dafuer sorgen der Kernel nicht seinen eigenen USB-RS232 Treiber startet damit ich den Baustein direkt ueber libusb ansprechnen kann.
Wie kommst du darauf? Tatsaechlich konnte ich sogar einiges aus dem Treiber im Kernel uebernehmen. Der Aufruf der Funktionen in libusb ist sehr aehnlich. Ich hab sogar durch rumspielen mit den Initialisierungsdaten schon herausgefunden wie ich DTR und RTS auf einen festen Pegel programmieren kann und vermute die GP-IO Leitungen im selben Register. Leider muss man die Leitungen wohl noch irgendwo auf Ausgang schalten, seufz.
Was soll den der Quatsch? Selbst wenn ich fuer Windows programmieren wuerde, was freiwillig sicher nie der Fall waere, so gaebe es auch dort eine Version von libusb die ein Ansprechen sehr einfach machen sollte weil man sich einfach von Linux inspirieren lassen kann.
Ich geb zu das ich nicht bei null angefangen habe weil ich ein vorhandenes Testprogramm das ich mal fuer einen AVR mit SoftwareUSB geschrieben habe, geaendert habe. Aber es hat etwa eine Stunde gebraucht bis ich dieselbe Funktionalitaet wie sie der Kerneltreiber bietet aus dem Baustein holen konnte. Daher wuerde ich bestimmt nicht auf die Idee kommen irgendeinen Binaercode zu patchen.
Es ist nur leider ziemlich sinnfrei das IC so anzusprechen und nicht den im Kernel integrierten Treiber zu nutzen solange man eben nicht die Zusatzleitungen nutzen kann, oder die Datenrichtung der vorhandenen RS232 Ein/Ausgaenge umschalten kann.
die bist Linux, ich bin Windows. Unter Windows ist auch alles ganz easy, wenn man das dauernd macht. Ich mach das aber zum ersten Mal, einen Win USB Driver und die USB Firmware für den TUSB3410. Für Linux hab ich da schon eine ganze Menge an Beispielen gefunden, das hilft auch. Aber unter Win ist das alles anders.
CDC ist die Communication Device Class. Kann nur etwa 80Kbytes pro sec, also ist ein bulk driver angesagt. Aber ich backe erst mal kleine Brötli...
Ach ja, wenn mir da jemand Tips geben kann, ich könnte mich mit schönen kleinen FPGA Modulen revanchieren... (Ja genau, mit USB interface und 100,
250 oder 500kGates...)
Ich bin auch auf der embedded world: Halle12 Stand 12-536.
MIKE
formatting link
OHO-Elektronik Michael Randelzhofer FPGA und CPLD Mini Module Klein aber oho ! Kontakt: Tel: 08131 339230 snipped-for-privacy@oho-elektronik.de Usst.ID: DE130097310
Ich habs schon versucht, aber alles wider verworfen weil es dermaßen langsam war. 2ms für jede änderung ist schon recht träge. Die Ansteuerung lief bei mir unter linux über die FTD2XX_API und libusb.
Jetzt nutze ich den syncronen bitbang mode über die 8 normalen Leitungen was super klappt.
Wie gesagt, ich habe keine praktische Erfahrung mit der Programmierung unter Windows. Aber soweit ich weiss gibt es libusb auch fuer Windows und ich habe sogar mal irgendwo eine Anpassung fuer Delphi und Borland-C rumliegen sehen. Damit sollten Beispiele von Linux fast sofort zu uebernehmen sein.
Ich kann dir hoechstens den Tip geben das es irgendwo im Windows Treibergedoehns einen riesen Bug gibt der sowohl mit Prolific wie auch FTDI auftritt, aber nicht mit jedem Rechner. Bei getrennter Nutzung von RS232 TxD/RxD und Nutzung der Steuerleitungen (DTR/RTS) zu anderen Zwecken vergisst Windows ab und an mal, also so alle Stunden oder Tage mal so eine Steuerleitung auf den gewuenschten Pegel zu setzen. Es hilft zwischendrin einfach mal DSR einzulesen und dann passiert das nicht mehr.
Bekomme ich jetzt schon eine Leerplatine? :-)
Mein Problem mit den FPGAs ist aber derzeit das ich das Konzept sehr interessant und spassig finde, habe ja auch schon etwas damit rumgespielt, mir aber noch keine private Anwendung eingefallen ist. Mir fehlt da einfach noch die brilliante Projektidee. :-/
Aber die Prolific-Bausteine sind doch eben keine CDC-Devices, sondern Vendor-specific Device Class. Merkt man doch schon allein daran, dass es eines speziellen Treibers bedarf, auch unter Linux, wo die dann demzufolge als ttyUSBx auftauchen und nicht als ttyACMx wie echte CDC-Devices.
Ich hab heute mal bei Glyn angerufen, die haben mir eine etwas ausfuehrlichere Doku zum PL-2303 per Email angeboten, aber noch nicht eingetroffen. Scheint nichts geheimes dran zu sein, interessiert sich wohl sonst nur keiner fuer.
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.