mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Suche USB I/O Baustein mit I2C Schnittstelle !


Autor: Marco Kaminski (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe einen AVR ATmeag80535, diesen möchte ich nun an USB bringen.
Eigentlich hatte ich mir den PDIUSBD11 ausgeguckt, weil der über I2C
angesprochen werden kann. Der ist allerdings schlecht zu besorgen.

Kennt da jemand vielleicht eine Alternative? Sollte I2C-Schnittstelle
haben und möglichst kein SMD-Gehäuse.

Autor: Thomas Burkhardt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

die Ez-USB von Cypress haben I2C, sind einfacher zu beschaffen - gibt
mittlerweile sogar welche bei Reichelt. Die sind allerdings auch nur
SMD... Trau dich :) ist nicht so schlimm...

Autor: Marco Kaminski (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Thomas

Ein AN2132 war meine erste Wahl bevor ich zum PDIUSBD11 gekommen bin,
weil dort aber wieder ein eigener Controller drinn ist denn ich dann
programmieren müsste, hatte ich mich dagegen entschieden.

SMD-Löten ist eigentlich kein Problem, wenn man ein geätzte Platine
hat, aber auf Lochraster-Platinen ist das ein wenig blöd.

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der PDIUSB11 ist abgekündigt und hat Probleme mit USB Hosts.
Ich würde mir das noch mal überlegen.

Thomas

Autor: Björn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ohne SMD ist vielleicht die Appnote von Igor Cesko was. die Funktioniert
mit nem AT90S2313 ist allerdings low speed usb

Autor: KlaRa (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Marco,
schau mal in meinen Thread zu "USB I/O Interface".

Gruss Klaus.

Autor: Rufus T. Firefly (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das kann man nicht direkt als Ersatz verwenden.
Mit dem PDIUSBD11 kann man - theoretisch - beliebige USB-Devices
implementieren, da der USB-Device-Stack auf dem angeschlossenen
Microcontroller implementiert wird.
Allerdings ist aufgrund der maximal 400 kHz der I²C-Schnittstelle die
nutzbare Datenrate der USB-Schnittstelle nicht sonderlich hoch.
Um eine Maus oder Tastatur selbst zu bauen oder Geräte mit
vergleichbarer Datenrate genügt ein PDIUSBD11 allerdings völlig.

Ob es möglich ist, vergleichbare Funktionalität in einem Igor-USB-2313
zu implementieren, ist schwer zu beantworten. Dann müsste das Teil
einerseits USB-Daten puffern und andererseits einen I²C-Slave
implementieren. Immerhin würde viel von dem von Igor implementierten
Kram wegfallen können, da ja der USB-Stack im I²C-Master implementiert
werden muss, damit müsste der 2313 "nur" noch die USB-Endpunkte
zwischenpuffern.

Vermutlich einfacher lässt sich sowas in einem EzUSB-Chip
implementieren - aber vielleicht sollte ja Marco mal seine
Vorstellungen näher erläutern, was für Daten er wie mit welchem Aufwand
per USB übertragen will.

Autor: Marco Kaminski (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hatte mir überlegt mit dem AVR mehrere Temperatursensoren
auszulesen, damit dann mehrere Lüfter entsprechend zu regeln. Die
USB-Schnittselle ist dann für ein Monitorprgramm auf dem PC gedacht.

LOW-Speed ist also vollkomen ausreichend.

Mittlerweile tendiere ich wieder zum Ez-USB, dann kann ich auch ein
wenig mit rumexperimentiern.

Ist der AN2131 eine gute Wahl oder würdet ihr mir zu einem anderen
raten?

Autor: Rufus T. Firefly (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn Du es übers Herz bringst, ein 32poliges PQFP-Gehäuse von Hand zu
löten, dann dürfte dir ein FT245 oder FT232 von FTDI das Leben
deutlich einfacher machen, da Du Dir um die Treiberentwicklung auf
der PC-Seite keine Gedanken machen musst.

Der AN2131 und seine großen Brüder sind, wenn ich mich nicht irre, in
80poligen Flatpacks untergebracht ...

Autor: KlaRa (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Marco,
ich suche auch eine USB - I2C Lösung. Im Elektor 12/2004 ist da etwas
vorgestellt worden, was mir nicht elegant genug ist und einen satten
Preis hat. Dem Treiber trau ich auch nicht so.
Ich habe eigentlich nichts richtig passendes gefunden. Am besten
gefällt mir noch das Modul tinUSB 232 von http://www.embedded-msr.de/
.
Das ist schön klein und hat auf RS232 Seite zudem noch TTL-Pegel, so
das man eigentlich nur noch zwei PINS auf RS232 Seite zusammen schalten
muss, oder besser noch einen Transistor und zwei Widerstände spendiert,
um aus einer RS232 eine I2C Schnittstelle zu machen.

Gruss Klaus.

Autor: Thomas Burkhardt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi


die AN2131 gibt auch mit nur 44 Pins. Und zum Auslesen von
Temperatursensoren brauchts nicht mal mehr einen anderen Controller :)

Siehe auch: http://www.keiang.de/
irgendwo Lüftersteuerung finden...

Autor: Marco Kaminski (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@KlaRa
Wenn ich dich richtig verstehe, möchtest du über den USB I2C-Bausteine
'verwenden'. Ich möchte dagegen USB nur als Kommunikation zwischen
AVR und Monitorprogramm verwenden, daher hatte ich auch erst an den
Baustein von Philips gedacht, dann brauche ich keine 2 Controller zu
programmieren, sondern mache alles im AVR.

Und was die Treiber angeht, den werde ich mit Sicherheit auch
selberschreiben. Schließlich will ich dabei ja auch was lernen.

@Thomas
Danke für den Link, da kann man sich bestimmt was abgucken!

Die 44-Pin Version des AN2131 gibt es auch bei Reichelt zu kaufen. Den
werde ich mir wohl bestellen, und dann mache die komplette Steuerung im
USB-Controller.

Wegen dem löten, da es gibt doch Adapter, weiss jemand wo es die gibt?

Autor: Rufus T. Firefly (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lötadapter für SMD-Gehäuse gibt es beispielsweise bei Segor.

In Bezug auf die I²C-Nutzung habe ich Dich also in der Tat richtig
verstanden. Mit einem FT232/245 wärst Du IMHO immer noch besser
bedient, weil Du da im AVR nur mit einer seriellen oder parallelen
Schnittstelle kommunizieren musst und Dich überhaupt nicht um
USB-Implementationsdetails scheren musst.

Treiber selberschreiben? Für Windows? Hut ab. Das ist alles andere als
trivial, daran scheitern sogar "professionelle" Treiberprogrammierer;
was meinst Du, warum die oft so grottenschlecht sind?

Du kannst Dir ja libusb bzw. libusb-win32 ansehen, das ist eine Library
für Linux und Win32, mit der ohne Treiberprogrammierung mit
USB-Devices kommuniziert werden kann.

Autor: Marco Kaminski (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zu spät nun habe ich mir den AN2131 bestellt.

Aber danke für den Tipp mit libusb-win32, da kann ich ja dann auch
erstmal ohne eigene Treiber testen. Ansonsten hoffe ich das mir das
gekaufte Buch "USB 2.0 - Handbuch für Entwickler" beim eigenen
Treiber weiterhilft.

Bei Segor habe ich keinen passenden Lötadapter gefunden. Über Google
habe ich aber http://www.elk-tronic.de gefunden, die haben einen
passenden Adapter. Ausserdem sind die vergleichbaren Adapter nur ca.
1/4 so teuer wie bei Segor.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.