Guten Tag, ich habe ein paar grundsätzliche Fragen zum AT90USB bzw. ähnliche Cotroller. Ja, ich weiß, dass ich diese Fragen auch anderweitig hätte klären können, ich wollte mir jedoch stundenlange Recherche ersparen und habe mir deshalb erlaubt, eben hier die Comunity zu fragen, um zu entscheiden, ob ein weiteres Vorgehen auf diesem Gebiet überhaupt interessant ist für mich. So, genug gelabert, nun zu meinen Fragen. Wie funktioniert dieser Controller im groben? Ist es wirklich so, wie ich denke und vor allem hoffe, wie es ist, dass ich den Controller entsprechend verkabele und ihn dann an den USB Port des PCs anschließe, um ihn über diesen im Prinzip live zu programmieren? Also kann der Controller so wie er ist, unprogrammiert an den PC angeschlossen werden und erst dann über eben diese USB-Verbindung programmiert werden? Also kann ich ihn praktisch über ein externes Programm, welches auf dem PC läuft, steuern, ohne dass er selbst wirklich programmiert ist? Also erfolgt eine live programmierung über einen entsprechenden Treiber (also mein Programm) oder muss der Controller entsprechend vorprogrammiert werden, um vom PC angesteuert zu werden? Was ich zunächst erreichen möchte, ist ein Hard- und Softwaremäßiger Aufbau, mit dem ich den Controller als Schittstelle nutze, um Verbraucher anzusteuern und im weiteren Verlauf Sensoren (bsp. Thermometer) abzufragen. Auch ein selbstgebauter "Controler" für den PC ist geplant, wenn das denn möglich ist. Die Zustände des Boards möchte ich dann über ein Windows Programm visualisieren und steuern. Über die nötigen Kenntnisse in C++ verfüge ich, wobei ich mich natürlich noch in den AT90USB einlesen muss, was sicher Stunden oder ehr Tage dauern wird. Naja es wird machbar sein denke ich... Vielleicht kann mir ja noch jemand sagen, wie denn so ein Programm im Groben arbeitet. Kann ich den angschlossenen USB Controller ähnlich steuern, wie einen eigenständigen MC? Also die einzelnen Pins abfragen bzw. ansteuern? Oder wie läuft das? Vielen Dank schonmal im Voraus und sorry für den langen Text.
Nein der AT90USB sowie die ATmegaXXuX Bauhreihe verfügen über einen "eingebauten" Bootloader. In diesen Bootloader kann mittels "Atmel Flip" dein eigenes Programm geflasht werden. Es spart dir den In-System-Programmer (ISP). Dein Programm für den uC musst du dennoch zuvor selber in ASM oder C schreiben.
Du kannst natürlich ein uC-Programm schreiben, welches über die USB Schnittstelle (z.B. Virtual COM-Port) mit deinem C++-Programm auf dem Rechner kommuniziert und dementsprechent Sensoren ausliest und der gleichen...
Hi, also es geht bestimmt, dass man den "Controller-Code" über USB in den AT90USB bekommt. Das funktioniert dann wie Christian schon geschrieben hat, über "Atmel-Flip"! Näheres weiß ich zu diesem Thema leider auch nicht. Am besten verwendet man für Deine Idee einen Bootloader. Der Bootloader-Modus wird über ein bestimmtes Event ausgelöst. Der Controller wird im Ablauf seiner Applikation angehalten und in den Bootloader- Mode geschaltet. Über den Bootloader kann man dann in den Applikationsbereich "neu reinschreiben". Ein guter Artikel wäre z.B. dieser hier: http://www.mikrocontroller.net/articles/AVR_Bootloader_in_C_-_eine_einfache_Anleitung Ich würde aber behaupten, so einfach wie Du das schreibst und vorstellst, ist es auf jeden Fall nicht. Wenn Du noch nie etwas mit µC gemacht hast, wird das ein langes Projekt bis Du das hast, was Du gerne möchtest. Aber es ist auf jeden Fall nicht unmöglich! (wenn man es nur will) Gute Hilfestellung gibt das Forum auch hier: http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial (versuch z.B. erst mal eine LED an einem Port mit 1Hz blinken zu lassen) Ich habe meine Diplomarbeit mit Hilfe des AT90USB1287 gemacht. Ist echt ein cooler Controller im Vergleich zu den anderen AVR- Controller. Wenn Du dich allerdings erst noch in alles Einarbeiten musst und Du in der Controller-Wahl noch frei bist, würde ich auf einen SAM4 umsteigen. Ich habe erste Gehversuche auf dem SAM4L gemacht und mit Hilfe des Atmel Studio 6.2 kann man in wenigen Minuten z.B. ein "USB HID Generic Device" erstellen. Das ist mit dem ASF ganz einfach möglich. [wenn man mal verstanden hat wie das funktioniert ;o)] Es gibt dann bestimmte Makros (Funktionsaufrufe) die man verwenden kann um Daten aus der Applikation oder in die Applikation per USB zu schreiben. Natürlich ist es dann noch mehr Einarbeitung in die ARM- Controller im Vergleich zu den AVR's weil diese schon etwas aufwendiger sind bis man mit Ihnen arbeiten kann. (z.B. aktivieren sämtlicher Taktquellen für die Peripherie) Bei den AVR's bekommst Du im Vergleich zu den ARM's massig Hilfe z.B. hier im Forum. Das ASF sollte auch nur dazu dienen um zu testen was man vorhat. Es wird im ASF- Projekt sehr viel includiert und bläht so ein Projekt völlig auf. Also für mich nur in der Testphase geeignet. Vielleicht hat Dir das etwas geholfen! Viele Grüße und viel Erfolg beim Einarbeiten ;o)
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.