Projekt ATmega Extender

Um mit den Atmel uCs und CPLDs ein paar interessante Experimente machen zu können habe ich den ATmega325P@18.432 MHz und einem Xilinx XC9572XL auf ein Board platziert und mit ein bisschen Peripherie versehen. Dazu gehört ein externer Taktgenerator @25 MHz für den CPLD, ein FTDI USB zu RS232 Adapter (mit TTL Pegel) zur Kommunikation mit dem uC und als 5V Stromquelle und ein DCDC Wandler mit einem MC34063 zur Versorgung des CPLDs und des Taktgenerators. Der uC und der CPLD sind mit einigen Ports direkt verbunden. Insbesondere die Clock Leitungen können je nach Konfiguration in beide Richtungen gehen. Auf dem 3D-Video kann man die einzelnen Baugruppen gut erkennen. Die Platine selbst zu fertigen war ein ordentliches Stück Arbeit, da der CPLD 300um breite Leiterbahnen benötigt, das ist mit Folien aus den Tintenstrahldrucker machbar, aber fummelig. Im Bild steckt das Board auf einem Steckbrett, um schnell mal etwas ausprobieren zu können. Zum ersten Test der Hardware einfach mal 2 LEDs blinken lassen an einem uC Port. Und hier noch mal das Ganze als bestückte Platine von allen Seiten. Die Rückseite sieht vor, das man an allen IO-Ports vom ATmega und dem CPLD Pullup- oder Pulldown Widerstände anbringen kann, je nach gewünschter Benutzung der Ports. Die Jumper auf dem Board können genutzt werden um die Funktionsgruppen von einander zu trennen. Hier noch mal das Board mit einer Kurzüberischt zum Layout. Mit der ersten Testfirmware für den ATmega325P und der ersten Konfiguration fürs CPLD ist der erste Funktionstest schon mal erfolgreich. Hier ist mal eine erste sinnvolle Anwendung für den ATmegaExtender. Im CPLD ist ein VGA Controller implementiert, der ein Testbild mit 640x480 Punkten und 60 Hertz erzeugt. Die Farbpalette von 64 Farben wird mit einem R2R DA Wandler auf den Monitor gebracht. Der ATmega325 hat mit der Bilderzeugung nichts zu tun und ist noch deaktiviert. Das CPLD dient hier als Pegelwandler für den 5V ATmega325 und den 3.3V Altera Cyclone. Der AVR Dragon zum Programmieren / Debuggen vom ATmega ist ebenfalls noch auf dem Bild. Das FPGA Board ist eine mächtige Erweiterung des ATmega325. Hoffendlich macht das Flachbandkabel nicht zu große Probleme, sonst muss ich doch ein neues Board mit ATmega und FPGA zusammen herstellen. Die 3.3 / 5V Stromversorgung läuft jetzt über das FPGA Board.