Ich möchte an einen µC über USB einen Barcodescanner anschliessen. Der liefert seine Daten als Tastatureingaben. Die EIngaben sollen überprüft, bearbeitet und dann abgewnadelt über eine weitere USB-Scnittstelle wiederum an einen PC gesandt werden. Variante 1: Der USB-Barcodescanner wird als serielle Schnittstelle konfiguriert und man benutzt einen USB2Serial Adapter und geht dann an den µC. Dazu bräcuhte ich aber weitere Hardware. Gibt es preiswerte µC mit 2 USB? Oder bessere Ideen? Reine RS232-Barcodescanner scheinen auszusterben.
Du brauchst also einen µC mit einer USB-Host- (bzw. OTG-) und einer USB-Device-Schnittstelle. Sowas gibts, sogar auf einem Bastelboard. https://www.pjrc.com/store/teensy40.html
"Preiswert" liegt immer im Auge des Betrachters ... Im Prinzip wie Sand am Meer, wenn man z. B. in CubeMX sucht, gibt's da über 700 (naja, viele Gehäuse-Varianten usw.): STM32F730R8T6 wäre ein günstiger Kandidat.
Auch die STM32F4xx haben zwei USB, die unabhängig voneinander laufen. Ich habe hier einen F429 mit Mass Storage Host auf einem und CDC auf dem anderen Port. Preiswert gibts die auf den Discovery Boards.
:
Bearbeitet durch User
N. N. schrieb: > Gibt es preiswerte µC mit 2 USB? Wieviele Tausend willst du davon bauen, das du explizit nach "preiswerten" µC suchst?
N. N. schrieb: > Ich möchte an einen µC über USB einen Barcodescanner anschliessen. > Der liefert seine Daten als Tastatureingaben. Die EIngaben sollen > überprüft, bearbeitet und dann abgewnadelt über eine weitere > USB-Scnittstelle wiederum an einen PC gesandt werden. Und warum schließt du den Scanner nicht direkt an den PC an und tut dort die Daten umwandlen? Denn genau das macht dein gesuchter Mikrocontroller auch. Ein Raspberry Pi hat einen Host USB-Port, wo man den Scanner anstecken und vermutlich relativ leicht auswerten kann. Er hat aber keinen Upstream USB-Port. Den müßte man nachrüsten. Machbar, aber aufwändig. > Reine RS232-Barcodescanner scheinen auszusterben. Kann sein. Aber viele ehemalige RS232 Geräte nutzen weiterhin logisches RS232 über USB, so wie über einen FT232 und andere ICs. D.h. aus Sicht des PCs ist es immer noch ein COM-Port, der leicht ausgelesen werden kann.
Falk B. schrieb: > Kann sein. Aber viele ehemalige RS232 Geräte nutzen weiterhin logisches > RS232 über USB, so wie über einen FT232 und andere ICs. D.h. aus Sicht > des PCs ist es immer noch ein COM-Port, der leicht ausgelesen werden > kann. Wenn der Barcode Scanner sich als Tastatur ausgibt, wird er wohl keine ehemalig RS232-Schnittstelle mit USB-Seriell Wandler besitzen, sondern gleich als HID arbeiten. Der Gerätemanager dürfte es verraten. N. N. schrieb: > Ich möchte an einen µC über USB einen Barcodescanner anschliessen. > Der liefert seine Daten als Tastatureingaben.
:
Bearbeitet durch User
Hast du schon mal die USB Programmierung auf einem Microcontroller selber gemacht? Du müsstest einen Master und einen Slave programmieren. Und dann noch eine Verbindung dazwischen. Das ist alles machbar, habe ich selber schon mal gemacht. Da sitzt man aber doch länger dran, einfach weil es auch so viele Probleme geben kann. Falls du das noch nie selber gemacht hast, dann kauf lieber einen USB-Serial Adapter.
N. N. schrieb: > Gibt es preiswerte µC mit 2 USB? Oder bessere Ideen? Gäbe es (Tennsy 4.0 oder 4.1), aber die USB Host Programmierung auf nacktem µC ist verdammt aufwändig. Barcode Scanner können über USB eine Tastatur emulieren, müssen das aber nicht unbedingt immer tun. Vermutlich ist das Projekt insgesamt deutlich billiger mit einem Raspberry Pi, weil man da mit dem Linux das ganze USB Host Zeuch schon vorhanden hat.
Rainer W. schrieb: > Wenn der Barcode Scanner sich als Tastatur ausgibt, wird er wohl keine > ehemalig RS232-Schnittstelle mit USB-Seriell Wandler besitzen, sondern > gleich als HID arbeiten. So ist es. Aber: sehr viele moderne Scanner lassen sich sowohl als Tastatur(USB-HID) als auch als COM-Gerät(USB-CDC) betreiben. Vielfach braucht man nur einen Code aus dem Handbuch des Scanners zu scannen, um den Wechsel zu erledigen. Darüber hinaus können diese Dinger meist noch viel umfassender konfiguriert werden. Beispiele: Es sollen nur Payloads mit bestimmtem Muster durchgelassen werden: kein Problem. Oder es soll ein Tab-Zeichen oder ein Return nach dem Payload angehängt werden: auch kein Problem. Oder es soll ausschließlich EAN128 und DataMatrix gescannt werden: auch kein Problem. Manches davon kann ebenfalls über Codes aus dem Handbuch konfigurieren, aber vieles auch nicht. Für diese fortgeschrittene Konfiguration gibt's dann kostenlose Tools vom Hersteller. Sprich: so lange es nicht darum geht, die gescannten Daten mit variablen Zusatzdaten aus einer anderen Quelle zu vermengen, bevor sie an den PC gehen, braucht man das Projekt des TO nicht, sondern einfach nur einen brauchbaren modernen Scanner.
Das könnte der CH554, der wurde hier ausgiebig beschrieben: Beitrag "uC für 0,20€ CH552 / CH554 von WCH Billig Micro mit USB Funktion, Chip vorstellung" Gibt vieles fertig als Democode, darüber hinaus kann es aber steinig werden, da die Doku z.T. dürftig ist. Wenn das Projekt zügig fertig werden soll würde ich persönlich zwei Raspberry Pi Pico Boards nehmen und diese per UART untereinander verbinden. Die Boards sind günstig, Pythoncode gibt es für beide Seiten mehr oder weniger fertig. Die Verbindung untereinander ist auch ein Klacks. Im Übrigen glaube ich nicht, dass RS232 Scanner aussterben. Das wird doch bei den meisten Marken einfach über ein anderes Anschlusskabel realisiert. HID Keyboard und USB Seriell sind auch weitere Optionen.
:
Bearbeitet durch User
Den CH559 verkauft WCH in ihrem eigenen Store auf Aliexpress: https://www.aliexpress.com/item/1005004595087640.html Dort verlinkt sind auch Datenblatt, Programmiersoftware und Unterlagen eines Evaluation-Boards. http://www.wch-ic.com/downloads/CH559DS1_PDF.html http://www.wch-ic.com/downloads/WCHISPTool_Setup_exe.html https://www.wch.[ZEH-ENN]/downloads/CH559EVT_ZIP.html Der letzte Link verweist auf die chinesische TLD, die die Forensoftware für Spam hält, also von Hand auf cn korrigieren. Mit der dort enthaltenen Dokumentation kann man ohne einen guten Übersetzer wenig anfangen, aber es sind etliche Codebeispiele enthalten, denen man trotz der chinesischen Kommentare das eine oder andere Detail entlocken können müsste. Und auch anderswo findet sich Sourceode dafür: https://github.com/atc1441/ch55xduino-1 https://github.com/atc1441/CH559sdccUSBHost
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.