Wie baue ich meinen eigenen Einplatinencomputer?


4

Zum Spaß möchte ich meinen eigenen Einplatinencomputer bauen, den ich später programmieren kann. Ich weiß, dass es bereits viele Entwicklungskits gibt, die von Firmen wie Altera und Xilinx verkauft werden, aber ich möchte versuchen, ein solches Board von Grund auf neu zu bauen .

Ich strebe etwas sehr Einfaches an. Es sollte einen Systemtakt von vielleicht 1 MHz haben, eine 8-Bit-CPU (On-Chip-Multiplikator ist nicht erforderlich; ich kann das in der Software simulieren), einen kleinen RAM (einige KB sollten ausreichen) und ein EEPROM, in dem ich kann mein Programm speichern. Ich möchte auch einige Sensoren anschließen, zum Beispiel um die Temperatur im Raum abzulesen.

Ich habe einige Kurse zu Digital Design und CPU-Architektur gelesen, daher mache ich mir keine Sorgen um die Komponenten selbst. Was mich beunruhigt, sind die Verbindungen, besonders wenn ich dazwischen Widerstände und Kondensatoren benötige. Ich habe einige Erfahrungen mit analogen Schaltungen, aber es ist begrenzt. Ich habe einmal meine eigene Platine gebaut, um vier Lüfter in meinem Computergehäuse mit Hilfe von Operationsverstärkern und Widerständen zu steuern.

Es macht mir nichts aus, wenn nötig, meinen eigenen Compiler zu schreiben, aber es macht die Sache viel einfacher, wenn ein solcher bereits verfügbar ist. Außerdem ist es möglicherweise etwas schwierig, das Programm auf das EEPROM zu laden ...

Kennen Sie gute Bücher, Websites oder andere Ressourcen, auf die ich verweisen kann, um zu lernen, wie ich meinen eigenen Einplatinencomputer baue? Jede Hilfe wird sehr geschätzt.


Haben Sie jemals über Mikrocontroller wie die AVR- Serie von Atmel nachgedacht ? Es enthält so ziemlich alles, was Sie erwähnt haben, auf einem einzigen Chip und wird von GCC unterstützt. Sie müssten Strom, Sensoren und den Rest des Materials hinzufügen, aber der Computerprozessor, RAM und etwas Flash-Speicher wären da.
AndrejaKo

@AnderjaKo: Oh, schick! Diese scheinen tatsächlich das zu sein, wonach ich suche! Und alles in einem Paket! Vielen Dank! = D Aber warum hast du das nicht als Antwort geschrieben ...?
Gablin

Antworten:


1

Ich weiß nicht, wie aktuell das ist, aber ich werde trotzdem antworten.

Ihr erster Schritt wäre, einige Zeit in Anspruch zu nehmen, um nach potenziellen Kandidaten für jede Komponente zu suchen und zu entscheiden, wie niedrig Ihr Level sein soll. Möchten Sie eine CPU aus diskreten Komponenten zusammenstellen oder eine vormontierte CPU verwenden oder einen Mikrocontroller erwerben, der alle grundlegenden Teile in einem Paket enthält? Der nächste Schritt ist das Abrufen und Lesen von Datenblättern für jede Komponente, die Sie verwenden möchten. Normalerweise finden Sie hier einige Beispielschaltungen und Informationen darüber, welche Arten von Spulen oder Kondensatoren Sie verwenden müssen. Spulen werden meist zum Herausfiltern von Wechselstromsignalen verwendet, während Kondensatoren häufig zum Herausfiltern von Gleichstromsignalen verwendet werden.

Der nächste Schritt wäre b, um zu versuchen, eine Art Schaltungssimulationsprogramm zu erhalten. Es wird alles viel einfacher machen.

Danach müssten Sie "Shop einrichten". Um Daten auf den Chip zu bekommen, benötigen Sie einen Programmierer. Die billigsten können über parallele oder serielle Schnittstellen hergestellt werden, während die teureren USB verwenden und mit einem netten Programm geliefert werden, das Daten auf den Chip lädt. Hier können Sie nichts falsch machen, wenn Sie einen vom Chiphersteller empfohlenen Programmierer erwerben. Zum Beispiel wird dieser für AVR-Chips empfohlen. Sie müssen auch entscheiden, ob Sie eine Leiterplatte herstellen oder nur Prototafeln verwenden möchten. Wenn Sie sich für Leiterplatten entscheiden, benötigen Sie einen Lötkolben für die Elektronik und die dazugehörigen Werkzeuge. Sie müssen sich auch entscheiden, ob Sie jemanden finden, der Leiterplatten herstellt oder selbst herstellt. Es gibt viele Möglichkeiten, PCB selbst herzustellen.

Sie benötigen auch eine IDE für den Chip, den Sie verwenden möchten. Ich kann Ihnen nicht viel helfen, da Sie nicht wissen, was Sie verwenden werden, aber die meisten gängigen Chips haben heutzutage eine IDE, die zumindest C unterstützt.

Ich weiß, dass ich mit dieser Antwort ungenau gewesen bin, aber ich kann nicht auf Details eingehen, wenn ich nicht weiß, was Sie tatsächlich vorhaben.

Erwägen Sie außerdem, diese Frage unter https://electronics.stackexchange.com/ zu beantworten. Es scheint, dass es dort besser passen würde.


1

Die motorola MC68HC05 scheint Ihren Anforderungen zu entsprechen (aber es gibt viel mehr Mikrocontroller, die für solche wie die von AnderejaKo genannten geeignet sind).

Die Dokumentation dafür enthielt auch Schaltpläne für eine Arbeitsplatine (Sie müssen jedoch Ihre eigene Leiterplatte zeichnen und ätzen und eine Anwendung für die E / A-Pins auf dem Chip finden).

Die einzige Software, die ich dafür geschrieben habe, war die manuelle Konvertierung von Assembler nach Hexadezimal (die Op-Codes sind sehr einfach). Dafür gibt es kostenlose Entwicklungstools.

http://webspace.webring.com/people/ju/um_2949/


1

Im Studentenhandbuch für 'Art of Electronics' haben sie eine Reihe von Übungen, um einen sehr einfachen Mikrocomputer zu bauen. Zwischen dem Buch und dem Studentenhandbuch sollten Sie genug haben, um einen sehr einfachen Computer zu bauen.

http://www.amazon.com/Art-Electronics-Student-Manual/


Waren Sie vielleicht denken dies ? Der von Ihnen angegebene Link funktioniert bei mir nicht.
AndrejaKo

funktioniert der link nicht Suchen Sie einfach auf amazon oder einer guten Buchwebsite nach "Art of Electronics", und Sie sollten in der Lage sein, es zu finden.
Mark Irvine

0

Dies lässt sich möglicherweise besser erreichen, indem Sie es auf https://electronics.stackexchange.com/ umleiten , wie AndrejaKo bereits feststellte . Insbesondere würde ich zwei bestehende Fragen und Antworten vorschlagen: "Was ist der Unterschied zwischen einem Mikrocontroller und einem Mikroprozessor?" und "[g] etting begann mit einem Mikroprozessor" .

Der erste erklärt den Unterschied zwischen einem Mikrocontroller und einem Mikroprozessor, der sich allgemein mit der Hardwarekomplexität oder dem Integrationsgrad (dh wie viele IC-Chips benötigt werden) befasst. Abhängig von Ihren Zielen und / oder der Zeit und den finanziellen Ressourcen (Hardware kostet normalerweise Geld) könnte eine kleine, einfache, auf Mikrocontrollern basierende Einheit wie der immer beliebte Arduino oder einer seiner vielen Klone, die als Kits erhältlich oder bereits zusammengebaut sind, eine Rolle spielen Am besten, sie kosten ca. 25 €.

Aber wenn Sie es vorziehen, etwas mehr wie einen Hobby-PC aus den späten 1970ern und frühen 1980ern zu bauen, entsprechen die Vorschläge in der zweiten Frage (Erste Schritte ...) möglicherweise eher Ihren Vorstellungen. In diesem Fall kann ein Mikroprozessor wie der Zilog Z80 eine geeignetere CPU sein, um einen Einplatinencomputer (Single Board Computer, SBC) aufzubauen, da er meiner Meinung nach der am häufigsten verwendete Mikroprozessor für Bastler von Homebrew-Computern ist jetzt berühmt 6502 eine knappe Sekunde. Es gibt sogar eine Reihe älterer Bücher (in englischer und westeuropäischer Sprache), die den Bau eines SBC mit einem Mikroprozessor wie dem Z80, Intel 8080 oder Intel 8051/8052 beschreiben. In meiner Antwort habe ich eine Reihe weiterer Einzelheiten erörtertzur zweiten Frage. Dieser Ansatz würde normalerweise voraussetzen, dass Sie mit elektronischen Bauteilen (oder der Bereitschaft, Fehler zu lernen / zu machen) und dem Kauf und Zusammenbau von elektronischen Bauteilen zumindest ein wenig vertraut sind, da ich nicht glaube, dass es sich um vollständige SBC-Kits oder fertige SBC-Kits handelt. SBC weiterhin verfügbar, außer als Sammlerstücke bei eBay.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.