Hallo,
suche einen kleinen Controller, den ich aus reinem Vergnügen an meinen
Windows7 PC über USB anschließen kann. Zudem liegt eine gute neue und
bekannte IDE zum Programmieren bereit, mit der ich ohne Probleme die
ersten C-Beispiele auf den Controller flashen kann, um dann im ersten
Schritt ein paar LEDs blinken zu lassen.
Wer kann mir noch vor Weihnachten einen Link geben, wo ich das Teil für
max. 100Euro bestellen kann?
Danke EUCH!
STK500-Besitzer schrieb:> Arduino. Alles andere sprengt deinen gesteckten Finanz-Rahmen
Quatsch dein STK500 kostet gerade mal etwas unter 90 Euro. Da sind sogar
noch mehr als 10 Euro für einen USB to serial Converter über!
Außerdem steht da doch was von C-Code oder? Arduino meinetwegen, aber
"richtiges" C ist das nicht.
Etwas genauer solltest du aber schon werden. Möchtest du einen 8 Bitter
einen 32 Bitter. Soll es ein AVR werden oder darf es auch was Anderes
sein? Oder hast du noch garkeine Ahnung? In diesem Fall wirst du hier
auch nicht schlauer werden. Jeder hier wird dir etwas anderes raten! Ich
fage mal an:
Am einfachsten ist es mit den AVRs anzufangen, da es einfach sehr viele
Beispiele gibt und du hier immer Hilfe findest. Je exotischer desto
schwerer wird das nämlich.
Schau dir mal die Boards von Pollin oder MyAVR an. oder eben das STK 500
von Atmel. Als IDE AVR Studio.
Eine meiner Meinung nach einfache und günstige Lösung ist eine Kompi aus
AVR-MK2, Atmega8.
Ersteres ist ein ISP-Programmer, mit dem du deine selbst erstellten
Programme auf den Controller bekommst.
Der Atmega8 ist ein sehr beliebter Controller in diesem Forum, ich würde
ihn dir empfehlen, weil es dazu hunderte Tutorials gibt
(hier:http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial)
Um ein bischen rum zu probieren ist das sehr einfach und günstig (MK2
ca.25€; Atmega8 ca.3€)
Wenn du allerdings keine Lust hast, mit all den Komponenten rum zu
spielen, kann ich dir ein Lernboard von myAVR empfehlen. Die sind zwar
teurer aber dazu gibt es direkt einen Controller, einen Programmer, ein
Versuchsboard mit LEDs, Potis, Festspannungsregler und nicht zuletzt
eine Anleitung auf Deutsch.
Ich hoffe das hat dir weiter geholfen ;)
Bodo schrieb:> Das STK500 ist mir ein zu großes Backblech.
naja was willst du denn hören? Anscheinend hast du ja schon eine
Vorstellung. Denn werde mal etwas spezieller es gibt sicher hunderte
Boards mit den verschidensten Controllern für unter 100 oder 200 Euro
mit USB und einer LED, die blinken kann. Also am Ende ist es eine
Glaubensfrage. PIC, AVR, TI, ST, NXP usw. Kauf dir irgendein Board und
gut!
Um das ganze doch billig zu halten. Ich glaube es gibt auch von einem
Compilerhersteller eine Simulationsmöglich, womit man erstmal auf'm PC
alles programmieren und testen kann?
Hi,
Etwas mehr über deine Anforderungen solltest du schon schreiben, dann
könnte man genauer darauf eingehen.
Beispielsweise ob du
1.) mit "USB Anschluss" nur meinst das man den µC übr USB Programmieren
kann, also ein USB Programmiergerät verfügbar ist -
2.) Oder willst du ein Board wo alles zusammen drauf ist, also UC mit
Beispielhardware und dafür eine Programmierschnittstelle und dann alles
über USB geflasht wird.
Oder - Was ich jetzt mal als wahrscheinlichsten Interpretiere:
3.) Das es sich dabei wirklich um eine Entwicklungsumgebung handeln soll
wo alles in einem Startpaket dabei ist und es sich bei diesem Startpaket
um einen USB µC handeln soll. -Aber auch alle weiteren µC später nutzbar
sind-
Im ersteren Fall kommen viele in Frage, auch die Schon genannten Atmel
(Wobei einige der genannten Typen schon reichlich veraltet sind...)
Daneben dann noch diverse PIC, diverse ARM derrivate (7/9/Cortex3) und
auch Familien von Renesas. Es sind auch noch die TI MSP430 und die STM8
zu nennen
(Bei den Arm Derrivaten würde ich als Hobbyist aber nur zu einer der
unter Hobbyisten verbreiteten Variante greifen, also etwas von TI, STM,
evtl auch noch NXP - Alles kompatible und Out of the Box Lauffähig ist
bei ARM aber ARM gesäht da dort die HErsteller selber keine
Programmierumgebungen zur Verfügung sondern IDE und (teilweise)
Programmiergerät aus Drittquellen kommen müssen Für 100 Euro ist das bei
ARM aber eng, für 200 Euro würde ic evtl den TI Evalbot sehen, wobei der
eher zu Auslegung ZWEI passt)
Unter Berücksichtigung deiner Vorgaben würde ich jetzt mal als Gegenpart
zu den genannten Atmel die PIC ins Spiel bringen, konkret die 18F Serie
und hier als Ausgangspunkt das
DV164139 - Low Pin Count USB Development Kit (with PICkit 3)
http://www.microchipdirect.com/ProductSearch.aspx?Keywords=DV164139
In der Version mit Pickit3 kostet es knapp 60 Euro und ist sowohl out of
the Box Lauffähig als auch völlig offen und für spätere Anwendungen
geeignet.
In dem Paket sind ein fertig bestücktes Testboard mit Grundschaltung für
USB Anschluss zum Einsatz mit PIC18F13K50/14K50.(Potis, USB und RS232
Anschluss, ein paar LEDs, Taster und Poti, dazu noch viel freie
Lochrasterfläche) Dasselbe Board auch noch mal in Leer.
Ganz Wichtig: der PicKit3, ein universelles Programmiergerät mit dem
ALLE aktuellen Pics (Geschätzt: alles was seit ca. 2000 auf den Markt
gekommen ist...) Programmiert werden können. (Also vom kleinen 10F über
16F, 18F bis hin zum großen 32Bit Schlachtschiff mit Ethernet usw...
basierend auf MIPS keren)
Bei vielen der PICs -meist die etwas mächtigeren Varianten- ist auch
ohne jegliche Zusätzliche HArdware mit dem PicKit3 direkt ein Debuggen
in der Schaltung möglich.
Dazu noch ein Pic14K50 "DebugHeader" das ist ein SPezielles
Prozessormodul das an stelle des Originalprozessors zur Fehlersuche
genutzt wrden kann - Der Vorteil dieser Debug Header ist das es sich
hier um eine Chipvariante handelt wo der Debugger nicht über normale IO
Ports angeschlossen wird und damit evtl. in der Schaltung während des
Laufens benötigte IOs Blockiert, sonders das zusätzliche Leitungen nur
für den Programmier/DebugAdapter vorhanden sind. Und natürlich noch der
"normale" Prozessor.
Der Pic18F13K50/14K50 hat eine ECHTE USB Schnittstelle und kann direkt
ohne irgendwelche Schnittstellenbausteine an jeden PC mit USB
angeschlossen werden. Es sind Beispiele und Lernübungen dabei - es
werden Beispiele zu den verschiedenen USB Modi genannt. Dieser Typ ist
gut Verfügbar und Billig - Bei Reichelt beispielsweise kostet der 13K50
1,90 Euro und der 14K50 mit doppeltem Programmspiecher 2,40
Euro.(jeweils SOIC)
Zu bekommen ist der bei REichelt in DIP und SOIC, aus anderen Quellen
auch noch in QFN und SSOP. Will man noch mehr IO oder Speicher geht es
dann mit den 18F2450, 2550, 4550 usw. weiter.
Die IDE ist Frei und der Compiler ist ebenfalls frei Verfügbar -ohne
jede Codegrößenbeschränkung- Er läuft lediglich in der Freien version
nicht mit maximal möglicher Codegrößenoptimierung was aber für
Hobbyisten völlig egal ist. (Ob man nun 8cent/Controller für das größere
Modell mehr bezahlt spielt fürs Hobby keine Rolle, bei einem
Industriebetrieb mit tausenden µC Verbrauch am Tag aber eine große - da
lohnt sich dann die Optimierende Version)
Mit derselben IDE und demselben Programmer lassen sich also alle PIC
Familien gleich bearbeiten, egal ob 8Bit, 16 Bit, 16Bit mit DSP oder gar
32Bit. Die Compiler (oder wer es noch verwendet - der Assembler) werden
in die IDE als Plugin eingebunden...
(Ich erwähne es aber mal sicherheitshalber: für die GANZ GANZ Kleinen
(10F, ggf. 12F)- oder für die alten 16er Pics ist ASM noch besser
geeignet, aber alles ab 18F ist für C Optimiert - und als Anfänger
sollte man auch mit den 18F einsteigen, auch wenn es sicher nicht
verkehrt ist für jeden der etwas mit µC macht zumindest das Grundwissen
zu ASM zu lernen - einfach dem besseren Verständniss wegen...)
ICh arbeite persöhnlich mit vielen Prozessorfamilien, aber die PIC sind
mir irgendwie am Liebsten. Die Vorteile bei Microchip sind das im grunde
alles aus einer HAnd kommt.
Also IDE, Compiler, Programmbeispiele, Programmiergeräte usw. kommt
alles SEHR UMFANGREICH von Microchip selbst. Zudem stellt MC für sehr
viele Anwendungen auch noch fertige Frameworks(Libs) zur Verfügung die
einem das leben enorm erleichtern. Diese Frameworks kann man sowohl als
Privatbastler als auch als Kommerzieller anwender kostenlos und völlig
Frei einsetzen- Einzige Auflage ist das es sich um Microchip µC handelt.
Nur um die wichtigsten Beispiele zu nennen:
Die Ansteuerung von TextLCD ist genauso wie SPI/IIC und selbst CAN schon
bestandteil der CompilerLib selbst. Bei den Seriellen Protokollen sowohl
in der Variante mit interner HArdware als auch rein Softwareemuliert.
Beides schon fest drin. Bei CAN ebenfalls sowohl für Interne CAN
HArdware -wenn vorhanden- genauso wie für den Anschluss externer
Bausteine bereits in der Lib des Compilers selbst. (Die Grundfunktionen
wie Timer, ADC, usw ja sowieso)
Für Umfangreiche Sachen gibt es dann die dazu passenden Frameworks.
Für USB, TCP-IP, TouchPad, Speicherkarten, Dateisystem!, Grafik und
mehr. sind Frameworks incl. zahlreicher Beispiele von MC selbst
verfügbar.
Sie beispielsweise hier:
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2680&dDocName=en547784
Erwähnesnswert für Hobbyisten finde ich noch das Microchip IMMER NOCH
eine große Menge an Pics AUCh in DIP herstellt - selbst bei
Neuentwicklungen wenn diese 40 oder weniger PINs haben (Ob jetzt
wirklich alle weiß ich nicht, aber viele!) Selbst 32Bit Pic in DIP gibt
es, Lochraster oder Breadboard ist damit also Problemlos möglich.
Ausserdem gibt es selbst als Hobbyist die möglichkeit wirklich JEDEN
verfügbaren Pic auch in kleiner Stückzahl zu bekommen. Zudem ist MC mit
Mustern bei Firmen, Studenten und Schülern (Mit passender Email Adresse)
eher als Großzügig bekannt. bei sehr spezielleren Bausteinen die man
nicht in jedem Elektronikkrämerladen findet aber auch bei "normalen"
Bastlern bei direkter ehrlicher Anfrage (Email/Telefon)...
Aber wie gesagt, das ist nur ein Vorschlag von mir - wobei ich ja wie
gesagt zugebe das ich selbst auch PIC Freund bin. Zu den anderen
Bausteinen sollen aber andere etwas mehr schreiben.
Grundsätzlich würde ich aber empfehlen dir jetzt aus allen Antworten die
gekommen sind und noch kommen werden eine Vorauswahl zu überlgen und bei
den in Frage komenden Firmen mal selbst auf den Seiten zu stöbern ob du
alle Infos findest die du möchtest, ob dir der Schreibstil der
Datenblätter gefällt (bzw. für dich verständlich ist) und aber auch was
die für dich gängigen Händler so im Programm haben. (Wer bei RS, Farnell
usw. bestellen kann ist da ja fein Raus und braucht sich deswegen nicht
weiter zu sorgen, aber wer auf Reichelt, Conrad usw angewiesen ist)
Gruß
Carsten
P.S.:
Zum Oben von mir vorgeschlagenen Board findet man hier die dazugehörigen
Dokumente (und Downloads, auch wenn eine CD dabei ist so kann man alles
auch runterladen, meist ist das sowieso neuer...)
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en536385
Im User Manual findet man den Schaltplan und in "Labs" die
Lernübungen...
Zum PicKit drei der im vorgeschlagenen Kombipaket ja noich dabei ist.
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en538340&redirects=pickit3
(Vorschlag wenn noch nicht mit Pic o.ä. vertraut:
für ca. 1,50 - 2 Euro einfach noch einen 18F45K20 mitbestellen und
anhand des Schaltplans im Debug Express Lesson Files PDF das Übungsboard
auf Lochraster nachbauen, dann die Grundlegenden Übungen zu den Pics (IO
- Timer - Interrupt-)zuerst durchgehen und erst danach zu USB übergehen.
(Für Lötfaule kann man das "einfache" Board ohne USB auch einzeln
kaufen, kostet dann aber 20 Euro... DM164130-4 - PICkit 44-Pin Demo
Board (PIC18F45K20) )
Ich möchte einen einfachen Zugang zur Hardware und gleich mit einem
C-Beispiel und z.B. Setzen eines Bits anfangen (Programmer auf Evalkit
meinetwegen dabei) und nicht ständig vorher noch lange überlegen,
welchen µC mit welcher Peripherie etc. zum Einstieg notwendig ist.
Bisher habe ich nur das MyAvr für gut befunden.
Das Raspberry Pi hat auch GPIO-Pins mit i2c und SPI, und da läuft sogar
ein eigenes Betriebssystem drauf -- und günstig ist es auch (35 Euro).
Sehr einfach zu benutzen, aber nicht echtzeit-fähig. Um LEDs blinken zu
lassen oder zur Steuerung von Chips mit Unterstützung für i2c/SPI
hervorragend geeignet, aber wenn man genaue Ansprüche an das Timing hat,
ist das nicht das richtige.
Muss man auch nicht flashen oder so, man kann im Prinzip Fernseher +
USB-Tastatur + Maus + LAN-Kabel dranstecken und direkt auf dem Ding
programmieren. Oder über ssh.