Hallo, für eine Standardanwendung (z.B. Messung. Steuerung) möchte ich einen Mikrocontroller am PC betreiben - sprich mit dauernder Verbindung zum Datenaustausch. USB ist Pflicht. Nun frage ich mich wie wohl diese Verbindung zum PC kostengünstig und einfach zu realisieren ist? Einerseits mit einem extra Baustein der Serial->USB konvertiert oder gleich mit einem Mikrocontroller der USB an Bord hat? Was denkt ihr? Gibt es Vor- bzw. Nachteile? (z.B. Geschwindigkeit, Auslastung,..)? Danke für Hilfe! Grußm Dani
µC mit onboard USB (z.B. Cypress EZUSB und Nachfolger) haben keine Nachteile hinsichtlich Auslastung, da der USB-Core vom Rest unabhängig ist und viel alleine macht. Man spart halt einen extra Chip, wenn man keinen usb-seriell Konverter braucht. Auch ne Frage, auf welcher Architektur du bleiben willst und was du machen willst. 8051-Kompatibel oder AVR oder ARM. Man kann's eigentlich nicht so einfach sagen ;)
Hm, da ich gerne C als Sprache verwenden würde und es von Atmel nen freien Compiler gibt (sowie am meisten Community) würd ich die Mikrocontrollerreihe mit USB von denen nehmen... Kosten glaub 10-12 pro Stück. Ist halt im Vergleich zu nem PIC mit USB (4-5$) schon ein Unterschied. ARMs mit USB weiß ich grad gar keine... Was wäre zu empfehlen unter den Bedingungen: -möglichst gure freie Entwicklungsumgebung für C -möglichst viel Info im Netz -preisgünstig bei Entwicklung und Einkauf -USB-Schnittstelle Danke!!! Gruß, Dani
Also einige Atmel ARM controller haben USB! Beispiel: AT91SAM7S64 http://www.atmel.com/dyn/products/param_table.asp?family_id=605&OrderBy=part_no&Direction=ASC Gibts bei ebay für 8 Euro inkl. Versand Entwicklungsumgebung: WinARM, kostenlos Erfahrungen hab ich damit keine! Infos im Netz sind wohl eher noch selten zu finden... Andere Möglichkeit ist eben der exterene USB-RS232 Wandler-Chip. Der Vorteil ist, dass man nicht an USB-MCs gebunden ist und beispielsweise einen beliebigen AVR mit kostenlosen Enwicklertools und viel Infos im Netz verwenden kann... Der FT232RL (~6Euro bei reichelt.de) braucht nur wenige externe Bauteile und zusammen mit einem AVR-Controller kommst du auch ca. auf die 10-12Euro und kannst im Windows mit entsprechendem VCOM Treiber die ganze Soße wie ein normale RS232 Schnittstelle ansprechen. Ich glaub damit sind theoretisch RS232 Datenraten bis 1Mbit möglich.
Hi, Danke erstmal für die schnellen Antworten. Ein Controller mit integriertem USB scheint mir die richtige Wahl im Vgl. zu seriell-usb-seriell. Auch SW USB ist nicht das Wahre. Die Wahl zwischen Atmel und Microchip Controller werd ich mal hier nicht auch noch anfragen - ich schätze das löst Glaubenskriege neu aus. :) Meine Wahl wird zu 99,9% auf einen Atmel fallen aufgrund der Entwicklertools. Nur komm ich noch nicht mit dem Unterschied AVR und ARM klar - kann mir das kurz wer...? Danke! Gruß. Dani
ein hab' ich noch, weil mit AVR und easy: http://www.avrfreaks.net/index.php?module=FreaksTools&func=viewItem&item_id=459&item_type=tool den Link müßt ihr ev. zusammenbauen... :-)
Hmm... Ich war wohl voreilig. Das USB-Protokoll selber umzusetzen dürfte schon ein Stück Arbeit sein - zumal Kollege Igor monatelang dran geschraubt hat. Preislich hat diese Lösung auch was für sich. Was für Datenraten sind denn mit dieser Softwarelösung möglich? Und - bei dem PIC wurden 80KBit/s genannt. Ist das ein reeller Wert? Danke! Gruß, Daniel
Hi! Ich schätze das kommt so rüber als ob ich die USB-Schnittstelle für das Reprogrammieren benutzen will... Eventuell sollte ich mal das Umfeld verkünden (und mich darauf vorbereiten gesteinigt zu werden) - am Mikrocontroller hängen 6 Sensoren deren Werte im ersten Schritt nur ausgelesen und an den PC übertragen werden sollen. Natürlich finden noch ein paar kleinere Filterungen vor der Übertragung statt. Schritt 2 beinhaltet dann die Steuerung von Aktuatoren. Die Frage ist wieviel Laufzeit schluckt diese durchgängige Übertragung per USB? Natürlich ist das abhängig von der Menge der zu übertragenden Daten - aber kann man einen gewissen Auslastungsfaktor durch den benötigten "Grundumsatz" festlegen? Anbei: Die Daten sollten 256Byte nicht übersteigen - allerdings sehr oft an den PC gesendet werden, etwa alle 20-30ms. Sorry für die Fragerei aber ich bin recht unerfahren in der Buskommunikation mit Müs... Danke und Gruß
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.