Von der Übersicht und Bequemlichkeit ist Pascal sicher schöner, aber aber nicht unbedingt von der Geschwindigkeit. Zudem gibts keine "preiswerten" Compiler für die größeren AVR´s
Druckbare Version
Von der Übersicht und Bequemlichkeit ist Pascal sicher schöner, aber aber nicht unbedingt von der Geschwindigkeit. Zudem gibts keine "preiswerten" Compiler für die größeren AVR´s
@ 1. Gast:
Stark, wie bist du denn vorgegangen, könnte man da mal was von sehen? Wie entscheidest du, welcher Zug sinnvoller ist, wieviele Züge werden voraus gedacht?
Warum bleibst du nicht bei Assembler? Das ist doch eh schneller und wenn du es schon kannst.
MFG Moritz
Ich finde die Idee mit dem Schachbrett, das automatisch die Spielzüge des Menschen erkennt und z.B. über LEDs die Züge des Computers anzeigt ganz interessant.
Diese Brett könnte man auch über ein serielles Kabel oder vielleicht auch über Infrarot an den PC anschliessen und das eigentliche Schach-Programm auf dem PC laufen lassen.
Wenn dann in dem Microcontroller noch Speicher übrig ist, könnte man den ja für ein ganz simples Schachprogamm nutzen, so dass ohne PC eine Art Demo- oder Anfänger Mode möglich ist.
Oder man bringt dem µC autark das Dame-Spiel bei und für Schach muss man halt den PC anschliessen.
Eventuell reicht für das Schachprogramm ja auch ein PDA. Wenn man den nur daneben legen muss und die Datenübertragung über Infrarot abläuft, wäre das ja auch noch halbwegs elegant und sicher wesentlich komfortabler als direkt auf dem winzigen PDA-Display zu spielen.
Auf dem PC oder PDA hat man dann auch noch genug Speicher um gespielte Partien abzuspeichern, das sogar wenn man das Brett nutzt um Mensch gegen Mensch zu spielen.
Auf einem PDA-Display könnte man sich dann am nächsten Tag in der S-Bahn ohne Schachbrett nochmal in Ruhe ansehen, warum man die Partie am Vorabend verloren hat ;-)
Wer sich dafür interessiert, wie ein Schachprogramm aufgebaut ist, der kann mal die Seite
http://de.wikipedia.org/wiki/Minimax-Algorithmus
besuchen, nicht zu vergessen ist natürlich, das ein Schachprogramm über die Erweiterung des Minimax-Algorithmus durch ein Alpha-Beta-Suche verfügen muss und, um dadurch ca. 150 mal schneller zu sein, da ein Schachprogramm sonst selbst auf einem GHz Computer nicht realisierber ist.
Die Alpha-Beta-Suche ist auf
http://de.wikipedia.org/wiki/Alpha-Beta-Suche
sehr gut beschrieben.
Also einfach mal vorbeischauen.
PS: Ich hab kein PDA und das Schachspiel soll sehr transportabel bleiben, deshalb kommt der Computer erst mal nicht in Betracht.
Hallo,
vielleicht ist dieser Link ja etwas für Dich: http://avr-ada.sourceforge.netZitat:
Zitat von Anonymous
Dieses Projekt beschäftigt sich damit den GNAT Ada-Compiler auf AVRs als Targetsystem zu portieren. (Basierend auf den AVR-GCC Port) Ich bin gerade dabei diesen Compiler ein wenig auszuprobieren und bin erstaunt, was schon alles funktioniert.
Jemand der schon mal mit Pascal gearbeitet hat dürfte sich schnell mit ADA zurechtfinden.
Schaut Euch einfach mal diese Seite an:
http://www.schachcomputer.at/
Relativ leistungsstarke Schachcomputer sollten sich mit dem ATmega32 machen lassen, von der Rechenleistung liegt er über dem alten MC68000er von Motorola, wenngleich auch nicht 16bittig.