Liebe µC-Profis.
Was Programmierung am PC betrifft bin ich recht erfahren, aber
Microcontroller sind für mich noch absolutes Neuland, abgesehen von der
alten C-Control von Conrad. Nun würde ich gerne folgendes Projekt
realisieren:
Eine Fernbedienung, die sich über USB programmieren lässt. Also benötige
ich einen Chip mit USB-Funktionalität, reichlich Ein- und Ausgängen und
einem nichtflüchtigen Speicher, der über USB angesprochen werden kann.
Bei der Unmenge von µCs auf dem Markt habe ich nicht mal ansatzweise
eine Ahnung davon, welcher für mich geeignet wäre. Nach Möglichkeit
natürlich was preiswertes, bei dem man nicht erst hunderte von Euro für
ein Starterkit hinlegen muss.
Ich hoffe ich hab genügend Infos geliefert, das mir jemand ein paar
erste Tipps oder Links geben kann.
Danke, bender.
Ja, USB ist das Hauptproblem. Bei AVR in Software möglich (siehe Firma
Objective Development). Bei MSP nur über externen USB-Chip,
beispielsweise FTDI.
Danke schonmal für die Links, da muss ich mich erstmal durcharbeiten.
Vielleicht kann mir aber schonmal jemand eine Frage zu beiden Chips
beantworten: Wie können die beiden oben genannten Chips über USB mit dem
PC kommunizieren? Ist diese Funktion schon im Chip implementiert oder
muss das mit einem zusätzlichen Baustein gelöst werden?
Ich hoffe, ich gehe das jetzt nicht zu naiv an, aber wie gesagt, µCs
sind noch relatives Neuland für mich.
Danke, bender.
@ bender74 (Gast)
>beantworten: Wie können die beiden oben genannten Chips über USB mit dem>PC kommunizieren?
Für den Anfang ist es am einfachsten einen externen USB IC zu nutzen,
eben die bekannten FTDI Dinger. Die Wandeln USB-RS232. Dein uC denkt
dann, er kommuniziert über einen RS232 Port. Das ist einfach
anzuschliessen und zu programmieren und für den Hobbyzweck vollkommen
ausreichend.
> Ist diese Funktion schon im Chip implementiert oder
Sowas gibt es auch, ist aber teuer und komplexer.
MFG
Falk
"Integrierte USB-Schnittstelle" wäre natürlich schön, aber alterntiv
geht dann auch die Methode über einen zusätzlichen Chip oder auch
seriell in Verbindung mit einem USB-Seriell-Adapter.
Die USB-Schnittstelle per Software ist wahrscheinlich recht aufwändig
...
bender74 wrote:
> Danke schonmal für die Links, da muss ich mich erstmal durcharbeiten.
Stimmt!
> Vielleicht kann mir aber schonmal jemand eine Frage zu beiden Chips> beantworten: Wie können die beiden oben genannten Chips über USB mit dem> PC kommunizieren? Ist diese Funktion schon im Chip implementiert oder> muss das mit einem zusätzlichen Baustein gelöst werden?
Hängt vom µC Modell ab. AVR ist ebenso wie MSP430 nicht EIN Chip,
sondern eine µC-Familie. Da gibt es leistungsfähigere und weniger
leistungsfähigere.
Es gibt AVRs, PICs,... mit "eingebautem" USB-Controller (näheres im
USB-Artikel). Es gibt AVR, MSP430 und andere ohne integrierte
USB_Controller. Es gibt AVRs in die man USB-Controller-Eigenschaften
(einen sog. USB-Stack) per Software implementieren kann. Es gibt für AVR
solche USB-Stacks fertig entwickelt; für MSP430 anscheinend icht.
Und ohne USB-Controller auf dem µC? Fast alle µC haben einen UART
zur seriellen Kommunikation. Dort kann man einen UART-nach-USB-Konverter
anhängen, um eine einfache Kommunikation über USB zu implementieren.
Eine solche UART-nach-USB Konverterfamilie stammt von FTDI und läuft als
Modellreihe FT232.
PIC18F2550 oder PIC18F4550 die haben beide ne usb schnittstelle
ausserdem würdest du die kleine PIC-Gemeinde vergrössern wenn du dich
für einen pic begeistern könntest
es gibt wenige genug von uns
Gibbet fuer die PICs denn auch einen unter Linux lauffaehigen C-Compiler
und eine brauchbares Entwicklungsboard? Ich hoffe mal Atmel zieht mit
den USB-Sachen nach, das mit dem FT232 ist ziemlich teuer (der kost
schon alleine fast soviel wie der PIC mit USB) und teilweise ziemlich
zickig.
Michael
>Ich hoffe mal Atmel zieht mit den USB-Sachen nach
Was hast Du gegen die AT90USB?
Den AT90USB162 gibt es schon für ca. 5 Euro.
Ich denke deren Chips sind schon ok, deren Software und Datenblatt sind
ein anderes Thema...
Also ich komme mit den Datenblättern von Microchip deutlich besser
zurecht als mit denen von Atmel. Und wie bereits erwähnt haben manche
PIC18 MCU's schon USB Funktionalität on-chip.
Mit dem Compiler sieht es da schon etwas schlechter aus. Ich benutze
selber den C18 Compiler, der ist aber nur 60 Tage (wenn ich mich recht
erinnere) kostenlos, danach fallen wohl einige Komponenten der
Codeoptimierung weg. Das hat sich bei mir aber bisher noch nicht negativ
ausgewirkt.
Für die Atmels gibts eben den kostenlosen GCC Compiler... Das ist
natürlich ein Vorteil.
Schöne Grüße und viel Spaß beim Einstieg in die Controller-Welt!
Alex
@bender74:
Nimm am Besten wirklich nen 8051er. Wenn Du später wirklich ernsthaft
oder berufstätig mit µCs machen willst, dann kommt man um den
Industriestandard net rum. Auch wenn die Architektur schon einige Jahre
auf dem Buckel hat, ist sie immernoch am weitesten verbreitet.
Wenn Du nur zum Spaß das machen willst, nimm am Besten nen MSP430. Der
hat einen sehr schön kleinen Assembler-Befehlssatz der das Erlernen sehr
einfach macht.
Möglicherweise irre ich mich, aber wird nicht das größte Problem sein,
dann den passenden Treiber für Windows zu schreiben? Deshalb solltest du
die Sache vielleicht von dieser Seite aus angehen und eine Lösung mit
schon fertigen Treibern und Windows-SDK suchen.
> RDUINO http://arduino.cc
Davon muss ich dir einfach abraten. So eine Insellösung macht keinen
Sinn, weil schlecht verbreitet (=> nur wenig Resourcen), eigene
Programmiersprache (=> auf kleinen uC macht eigentlich nur C Sinn).
@ Mathi (Gast)
<Lüge>Der MSP430 wurde speziell für Hobbybastler entwickelt, und besitzt
in professionellen Anwendungen nur eine geringe Verbreitung<\Lüge>
Eigentlich schafft ein AVR alles problemlos, bis auf das USB. Hier würde
ich mir sehr überlegen, mit RS232 zu arbeiten und dann einfach einen
seriell-USB Wandler zu verwenden.
Warum einen AVR? MSP430 ist vermutlich bereits oversized und schwerer zu
kriegen, etwas noch grösseres wie ARM sowieso. Über PICs hört man leider
einfach nicht viel gutes, dafür umso mehr schlechtes. Und für die AVRs
gibt es mit AVRStudio / WinAVR eine sehr nette Toolchain! Jedenfalls:
Mit AVR machst du nix falsch bezüglich obiger Aufgabenstellung.
Danke für eure zahlreichen Tipps und Kommentare. Das wird esrstmal ein
Weilchen dauern bis ich mich durch die ganzen Datenblätter durchgelesen
habe. Auf jeden Fall hab ich jetzt schonmal eine grobe Idee, was auf
mich zukommt.
Gruss, bender.