Hallo, ich bin noch ein Anfänger und denke gerade über ein neues Projekt nach. Hierzu habe ich 3 Fragen: 1. Wie bestimmt ich die größe des Speichers und Prozessors vom Controller? 2. Viele Hobbybastler schwören ja auf den Eigenbau vom Controller, da sie ihn so optimal bestücken können. Was muss mindestens auf einem Controller an Peripherkomponenten enthalten sein? Ich weiß, dass man natürlich eine Stromversorgung, einen Busanschluss und eine CPU (z.b. Atmega328) braucht. Auf den Platinen sind aber immer noch Spannungsregler,...zu sehen. Wäre nett, wenn mir da einer einen groben Überblick geben könnte, konnte dazu leider recht wenig finden. 3. Gibt es ein Maximum von I/Os, die ich auf einem Controller verbauen kann? Angenommen ich will eine 10x10 LED-Matrix nicht multiplexen oder durch Shiftregister steuern, sondern wirklich jede LED einzeln. Ginge das und wenn ja warum/warum nicht und wo ist die Grenze bzw. durch was wird sie definiert? Bin für jede Hilfe dankbar. Grüße
golther schrieb: > 1. Wie bestimmt ich die größe des Speichers und Prozessors vom > Controller? Indem du ins Datenblatt schaust. > 2. Viele Hobbybastler schwören ja auf den Eigenbau vom Controller, da > sie ihn so optimal bestücken können. Was muss mindestens auf einem > Controller an Peripherkomponenten enthalten sein? Ich weiß, dass man > natürlich eine Stromversorgung, einen Busanschluss und eine CPU (z.b. > Atmega328) braucht. Auf den Platinen sind aber immer noch > Spannungsregler,...zu sehen. Wäre nett, wenn mir da einer einen groben > Überblick geben könnte, konnte dazu leider recht wenig finden. Eigenbau welcher Controller? Was soll der Controller können? Welche Platinen? > 3. Gibt es ein Maximum von I/Os, die ich auf einem Controller verbauen > kann? Was für ein Controller?
golther schrieb: > Wie bestimmt ich die größe des Speichers und Prozessors vom > Controller? Datenblätter und "parametrische Suche" bei den Herstellern der µCs > 2. Viele Hobbybastler schwören ja auf den Eigenbau vom Controller, da Huch, meinst Du nicht eventuell "Eigenbau von Entwicklungsboards", sprich den Platinen? ;-)Dann bekommt man eben genau das (und nur das) was man braucht. > 3. Gibt es ein Maximum von I/Os, die ich auf einem Controller verbauen > kann? ... > wo ist die Grenze bzw. durch was wird sie definiert? Im wesentlichen duch die Anzahl der Pins, d.h. der Gehäuse-Größe, die Du verarbeiten kannst. Sagen wir mal so, ein AVR-Tiny im Dip8 Gehäuse kann man gut verarbeiten und hat max. 6 IOs (+Vcc+Gnd), ein moderner Core7 >> 1000 Pins und der kommt im nicht ganz so bastlerfreundlichem BGA daher. Dazwischen gibt's so fast alles.
golther schrieb: > 1. Wie bestimmt ich die größe des Speichers und Prozessors vom > Controller? Das hängt davon ab, was die Anwendung machen muss. Dazu gibt es Erfahrungswerte. Die Ansteuerung eines Grafik-LCD braucht z.B. mehr Speicher als eine LED blinken lassen. Wenns das Projekt ein Einzelstück/Prototyp ist im Zweifel lieber einen größeren Controller nehmen. Die Kosten halten sich ja in Grenzen. > 2. Viele Hobbybastler schwören ja auf den Eigenbau vom Controller, da > sie ihn so optimal bestücken können. Was muss mindestens auf einem > Controller an Peripherkomponenten enthalten sein? Ich weiß, dass man > natürlich eine Stromversorgung, einen Busanschluss und eine CPU (z.b. > Atmega328) braucht. Auf den Platinen sind aber immer noch > Spannungsregler,...zu sehen. Wäre nett, wenn mir da einer einen groben > Überblick geben könnte, konnte dazu leider recht wenig finden. Ein Spannungsregler gehört doch zur Stromversorgung. Wenn die Schaltung von außen schon mit der richtigen Spannung versorgt wird, brauchst Du keinen, ansonsten schon. Welche Peripherie Du sonst brauchst, hängt nur von der Anwendung ab. Wenn das Board nur eine LED blinken lassen soll, dann muss darauf nur die Stromversorgung, der Mikrocontroller und die eine LED, mehr nicht. > 3. Gibt es ein Maximum von I/Os, die ich auf einem Controller verbauen > kann? > Angenommen ich will eine 10x10 LED-Matrix nicht multiplexen oder durch > Shiftregister steuern, sondern wirklich jede LED einzeln. Ginge das und > wenn ja warum/warum nicht und wo ist die Grenze bzw. durch was wird sie > definiert? Jeder Mikrocontroller ("Prozessor") hat eine gewisse Anzahl an I/O-Pins, beispielsweise 32. Dann kannst Du daran 32 LEDs anschließen, mehr nicht. Wenn Du mehr haben willst, brauchst Du entweder einen größeren Mikrocontroller oder zusätzliche Bauteile wie Schieberegister, Multiplexer bzw. andere ICs, die ganz grob gesagt aus wenigen Pins mehr Pins machen. Genau dafür sind sie da. Du kannst natürlich auch mehrere Mikrocontroller auf ein Board bauen, allerdings ist das meistens nicht sonderlich sinnvoll.
Aber es gibt ja Controller mit verschiedenen I/Os Anzahlen z.B. 8,32,52. Kann ich also auf meinem Board (wenn ich es selber bau) beliebig viele I/Os einbauen?
golther schrieb: > Kann ich also auf meinem Board (wenn ich es selber bau) beliebig viele > I/Os einbauen? Überleg doch einfach mal. Was sollte Dich daran hindern?
golther schrieb: > Aber es gibt ja Controller mit verschiedenen I/Os Anzahlen z.B. 8,32,52. > Kann ich also auf meinem Board (wenn ich es selber bau) beliebig viele > I/Os einbauen? Direkt hast Du erstmal soviele, wie der µC selber hat. Wenn Du mehr brauchst, gibt es verschiedene Möglichkeiten, das zu erweitern (siehe Fabian O.). Die werden dann aber anders angesprochen wie die µC-eigenen, d.h. Du musst dazu eine spezielle Software schreiben (eine Art Treiber), die den I/O-Pin liest oder schreibt. Gruß Dietrich
golther schrieb: > Aber es gibt ja Controller mit verschiedenen I/Os Anzahlen z.B. 8,32,52. > Kann ich also auf meinem Board (wenn ich es selber bau) beliebig viele > I/Os einbauen? Generell ja, aber was bringt dir ein Board mit 1000 I/Os wenn dein Controller nur, sagen wir 16 I/Os besitzt? Außerdem würde ich an deiner Stelle nicht mit 100 LEDs anfangen, wenn du sie alle einzeln steuern willst, sondern mit wesentlich weniger. Z.B. 25 damit würde sich auch schon ein 5x5 LED Feld ansteuern lassen und du kannst ein wesentlich handlichern Controller nehmen. Ich persöhnlich bin mit dem ATMega32 sehr zufrieden und der hat 32 I/Os (wobei man ein paar erst "freischalten" muss, da siebereits Intern vergeben sind. Das lässt sich aber mit AVRStudio 4 sehr leicht bewerkstelligen). Eine Hilfe hier ist vielleicht auch das AVR-Tutorial. golther schrieb: > 2. Viele Hobbybastler schwören ja auf den Eigenbau vom Controller, da > sie ihn so optimal bestücken können. Was muss mindestens auf einem > Controller an Peripherkomponenten enthalten sein? Ich weiß, dass man > natürlich eine Stromversorgung, einen Busanschluss und eine CPU (z.b. > Atmega328) braucht. Auf den Platinen sind aber immer noch > Spannungsregler,...zu sehen. Wäre nett, wenn mir da einer einen groben > Überblick geben könnte, konnte dazu leider recht wenig finden. Wenn du ein Entwicklungsboard oder generell eine Platine suchst dann schau doch mal ins Equipment Tutorial von AVR (http://www.mikrocontroller.net/articles/AVR-Tutorial:_Equipment). Dort findest du eigentlich alles notwendige. Als Spannungsversorgung funktioniert aber auch ein altes PC-Netzteil, das liefert dir eine geglätte und stabilisierte Spannungsversorgung mit vielen üblichen Spannungswerten. golther schrieb: > 1. Wie bestimmt ich die größe des Speichers und Prozessors vom > Controller? Wie bereits gesagt musst du dafür das entsprechende Datenblatt zu rate ziehen. Für ein kleineres Anfangsprojekt sollte so ziemlich jeder Speicher eines handelsüblichen Mikrocontroller ausreichen. Atmel bietet auf diesem Gebiet eine große Auswahl an günstigen Mikrocontroller (z.B. die ATtiny-Reihe oder die ATMega-Reihe)
Meine bescheidene Erfahrung zu Entwicklungsboards ist: Man gibt trotz sorgfältiger Budgetierung mehr Geld aus, wenn man eins selber baut, als wenn man sich z.B. ein myAVR gönnt. Das kann zwar erstmal nur DIP-20-AVRs und hat fast keinen Port mit allen acht Pins, aber es läuft gut und man kann sich mal einarbeiten. Mit dem myMultiProg-Board kann man dann auch alles andere programmieren. Alternativ bastelt man sich Adapter, die auf den myAVR-Sockel passen und oben einen für ATTiny, ATMega8535 etc. haben /(quasi ein erweitertes MultiProg). Die Platinen sind oft auch deshalb so "voll", weil sie für mehrere Fälle gebaut werden. Mein myAVR-Board hat z.B. ungenutzte Kontakte für den AVRUSBmkII-Programmer-Wannenstecker, den man aber prinzipiell auflöten und benutzen könnte (statt der myAVR-Programmierplatine). Der Rest ist aber, wie schon gesagt wurde, Spannungsregler (auf 6V, hat auch jede meiner anderen Platinen) und das Zeugs für die Programmiererei: LEDs mit Vorwiderstand an Masse, Summer, Steckports für Add-on-Module, Potis, Taster, Port-Kontakte. Manche haben vielleicht noch einen Taktgeber für LCDs? Es kommt immer drauf an, was sich der "Bauer" gedacht hat. Schau dir mal verschiedene Entwicklungsboards an und zieh all das ab. Viel bleibt nicht übrig. Selber bauen heisst meistens auch: Mehrere Bauteile werden gegrillt, man kauft zuviel vom einen, zuwenig vom anderen, das Falsche vom dritten, muss zwischendrin umdisponieren, braucht plötzlich neue Platinen etc etc. Dafür lernt man sehr viel steiler. Was allerdings beim Eigenbau ein Vorteil ist: Man kann z.B. Schraubkontaktleisten statt der üblichen Sockelsteckkontakte verbauen, ist mechanisch etwas stabiler, wenn man das Zeug durch die Wohnung trägt, und etwas Platz für Beschriftung ("Port A 0...7") ist auch noch... Was die 10x10 LEDs angeht: 2x10 Pins und AND-Bausteine? ;) Dann reicht schon ein ATMega8535 oder ähnliches aus... oder aber Schieberegister und ein ATTiny... wie Fabian O. schon meinte: "Genau dafür sind sie da." Strom könnte dabei ein Problem werden... Gruss, Eingehirner
Zum multiplexen nehme ich immer 74hc595 weil die latchen. Da kann man in aller Ruhe neue Daten reintakten ohne dass irgendetwas flackert. Oft liegt es auch am mangelnden Wissen über Bauteile und will alles mit den Controller-Pins direkt regeln. Das kommt mit der Zeit...
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.