Forum: Mikrocontroller und Digitale Elektronik USB I/O-Interface


von KlaRa (Gast)


Lesenswert?

Hallo,
was USB anbetrifft bin ich Neuling. Ich möchte vom PC aus einen I2C Bus
über USB realisieren.
Es ginge zwar mit einem USB - RS232 Umsetzer aber ich brauche für USB
nur einen 5V Pegel. Deshalb tuen es ein paar I/O's auch.
Hier im Forum wird ja jede Menge über das Thema geschrieben, aber ich
kann mich nicht so recht entscheiden.
Ich möchte mich nicht mit der internen USB-Programmierung beschäftigen.
Eine Schnittstelle über DLL wäre gut da ich vom PC aus mit VB arbeite.
Wer kann mir aus der Praxis heraus etwas empfehlen?

Gruss Klaus.

von Rahul (Gast)


Lesenswert?

guck mal nach dem IO-Warrior (ist das jetzt so richtig geschrieben?)
Der ist relativ simpel per VB ansprechtbar, da DLL vorhanden.
I²C müsste der auch haben (wird zumindest von Leuten bei uns in der FH
dafür benutzt).
Gruß
Rahul

von Jörn (Gast)


Lesenswert?

schau dir mal den neuen Chip von FTDI an (FT2232C)
Der IC hat hat eine Multiprotokoll Engine drin, die auch für I2C
konfiguriert werden kann.

http://www.ftdichip.com/Projects/MPSSE/FT2232C-Proj02_v11.pdf

GRuss Jörn

von Simon Küppers (Gast)


Lesenswert?

Der IO-Warrior ist absolut easy, hab damit auch schon rumgespielt.

Homepage ist www.codemercs.com, du findest dort sogar ein komplettes
kostenloses SDK (nunja die SDK Platine kostet natürlich extra ;))

von KlaRa (Gast)


Lesenswert?

Hallo,
vielen Dank für eure Antworten. Der FT2232C und der IO-Warrior sind für
meine Zwecke eigentlich überdimensioniert. Bei beiden finde ich aber vor
allem keine vernüftigen Samples für die I2C Ansteuerung. Ausserdem habe
ich hier 40 polige Fassungen.
Die Firma Rautmann, http://www.embedded-msr.de/, bietet den FT232BM als
tinUSB232 für 24€ an. Hier müsste ich den I2C-Bus über die RS232
emulieren. Das mache ich auch jetzt schon. Ein direktes Ansprechen über
DLL ist wohl auch möglich aber wieder gibt es da nur magere Samples.
Einige sind von 2001.
Man fragt sich da ob der Hersteller schon "satt genug" ist oder ob er
doch noch mehr Umsatz haben möchte.

Weiss jemand etwas über den tinUSB232?

Weiss jemand etwas über die Firma Rautmann? Die Internetseite scheint
noch nicht komplett zu sein. "Online bestellen", "Kontakt" und
"Die Firma" sind wohl noch in Arbeit.

Gruss Klaus.

von Jörn (Gast)


Lesenswert?

Für den FT2232C hab ich von FTDI schon ein Design gesehen zum EEPROM
lesen/schreiben. Bestand aus Schaltplan und Delphicode.

Gruss Jörn

von Olaf (Gast)


Lesenswert?

Hallo zusammen,

in ELEKTOR 12/2004 ist ein komplettes USB/IIC-Interface beschrieben, es
arbeitet mit TUSB3410. Da kann man dann auch die Platine bestellen usw.

Grüße Olaf

von KlaRa (Gast)


Lesenswert?

Hallo Jörn,
der FT2232C ist mir etwas zu gross. Ich bauche ja nur 3-4 IO's

Hallo Olaf,
der Elektorartikel ist mir bekannt. Ich bin aber skeptisch was die
Qualität betrifft. Auch die DLL, der Zugriff auf den I2C - Bus scheint
mir mit der heissen Nadel gestrickt zu sein. Die Schaltung müsste ich
auch anpassen.
Mir gefällt immer mehr eine USB - RS232 Lösung. Die Umwandlung in eine
I2C Schnittstelle ist simpel. Nur TTL-Pegel sollte vorhanden sein.
Das tinUSB232 der Firma Rautenbach sieht da für mich ganz gut aus. Das
Modul arbeitet mit dem FT232BM. Die Treiber dürften deshalb ausgereift
sein. Zumindest gibt es beim Hersteller Support.

Hat jemand Erfahrungen damit oder kann er mir etwas anderes empfehlen?

Gruss Klaus.

von Rufus T. Firefly (Gast)


Lesenswert?

Eine weitere Möglichkeit wäre eine Modifikation des Igor'schen
USB-RS232-Adapters. Der bietet übrigens auch einige direkt
manipulierbare I/O-Anschlüsse.

von Matthias (Gast)


Lesenswert?

Hi

vergiss die Lösung mit einem USB-RS232 Adapter ganz schnell wieder. Das
was da an Performance rauskommt ist unter aller Sau. Bit-Banging über
USB mit den FTDI-Chips ist, wie viele Versuche schon ergeben haben,
einfach nur langsam.

Du könntest z.B. meinen USBisp zweckentfremden und das isp-Interface in
einen I2C-Bus verwandeln. Da wär zumindest die Hardware fertig. Oder,
wie von Rufus vorgeschlagen, den IgorUSB ummodeln. Wobei dann der
I2C-Bus in die USB Kommunikation eingeflickt werden muß.

Matthias

von Steffen (Gast)


Lesenswert?

@Mathias

"vergiss die Lösung mit einem USB-RS232 Adapter ganz schnell wieder.
Das
was da an Performance rauskommt ist unter aller Sau. Bit-Banging über
USB mit den FTDI-Chips ist, wie viele Versuche schon ergeben haben,
einfach nur langsam."

Du hast Recht, wenn Du jedes einzelne Bit im BitBang-Mode setzt bzw.
rücksetzt, schickst Du die Daten als Paket sind schon höhere Datenraten
möglich, auch wenn diese nicht an Lösungen mit IIC Engine herankommen.

von Matthias (Gast)


Lesenswert?

Hi

I²C ist sowieso bis IIRC max. 4MHz möglich. Das sind dann (als obere
Grenze) 500kByte/s. Das bringt man allemal durch einen FTDI245BM.

Matthias

von KlaRa (Gast)


Lesenswert?

Hallo Matthias,
der Standart I2C Bus hat einen 100KHz Takt. Der etwas schnellere 400
Khz. Zu dem ist die Länge des Busses von entscheidener Rolle. Bei 100
KHz kann ich ohne spezielle Massnahmen so 10 - 20 m überbrücken.

Wo finde ich etwas zum Igor'schen USB-RS232-Adapter und zu Deinem
USBisp?

Gruss Klaus.

von Dominik Tewiele (Gast)


Lesenswert?

Igor hat dem AT90S23XX USB beigebracht ;-)

Läuft ganz gut... glaube aber nicht, dass man damit die volle
Performance bekommt. Zum probieren ist er aber sehr gut geeignet.

http://www.cesko.euro-science.net/IgorPlugUSB/IgorPlug-USB%20(AVR)_eng.htm

schönes Wochenende!

von Dominik Tewiele (Gast)


Lesenswert?

ähm den link nicht klicken, sondern kopieren ;-)

von KlaRa (Gast)


Lesenswert?

Hallo Dominik,
was muss ich da tun um das zum Laufen zu bringen?
Wenn ich da noch den AT90S23XX programmieren muss, dann würde ich mich
verzetteln. Ich habe vorerst andere Schwerpunkte. Und die Zeit ist
immer knapp.

Gruss Klaus.

von Dominik Tewiele (Gast)


Lesenswert?

Du Lädst dir einfach die Fertige *.hex - Datei, flasht damit z.B. deinen
AT90S2313 und schon ist's fertig. Naja, du müsstest schon den
AT90S2313, da nur dieser mit der "Firmware" 8 IO's hat.
Software beispiele gibt's da auch zum Download.

Wenn du keinen ISP für AVR's hast schick mir einfach einen AT90S2313
per Post und ich schick ihn dir mit der Firmware zurück.

Dom

von KlaRa (Gast)


Lesenswert?

Hallo Dominik,
vielen Dank für die Erläuterung und Dein Angebot. Ich muss mich aber
zur Zeit noch auf andere Dinge konzentrieren. Wenn ich jetzt anfangen
würde auch noch den AT90S2313 zu programmieren, so würde ich mich
verzetteln.
Ich werde vermutlich eine ferige USB/RS232 Lösung nehmen und den
I2C-Bus emulieren.

Gruss Klaus.

von John (Gast)


Lesenswert?

Entgegen einiger Aussagen oben geht IIC bis 3.4Mbit, bitte beachten!

von Rufus T. Firefly (Gast)


Lesenswert?

@John: I²C mag das schon tun, aber nicht das I²C-Interface des
PDIUSBD11.

von Dominik Tewiele (Gast)


Lesenswert?

Naja, mit dem AT90S2313 hast du garnichts am Hut. Du musst lediglich das
IIC - Protokoll in in VB programmieren und das ist ja nocht so schwer.

Also wenn es nicht so sehr auf Geschwindigkeit angekommt, ist dies
garantiert die günstigste Variante.

Dominik

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.