Schon lange wollte ich mal wieder was mit den Z8® Kompatiblen Mikrocontrollern UB8820/UB8840 machen, aber mir fehlte eine sinnvolle Idee. Im Forum Robotertechnik.de hatte ein User (otto11) eine kleine Leiterplatte (UB8840M Testboard) entwickelt. Die Leiterplatte hatte aber für mich zu wenig Möglichkeiten, um sinnvoll damit zu entwickeln ( meine Meinung ! ). Mir fehlten da mehr externe Schnittstellen und deshalb habe ich ein eigenes UB8820 / UB8840 -Testboard entwickelt. Es ist aber nicht so, das man alles auf dem Board bestücken muss. Jeder kann selbst entscheiden, was er braucht. UB8820/UB8840 , Stromversorgung, wenige passive Bauteile und 2KB/4KB EPROM reichen schon, um das Board in Betrieb zu nehmen. Externer SRAM/EPROM, CPLD, ADC, TFT und I/O Ports kann man nach Bedarf bestücken.
Schnittstellen und IC’s im Testboard UB88xx:
16 x TTL Eingänge - 2x 74LS244
16 x TTL Ausgänge - 2x 74LS373 ( 1x 8 LED’s über Jumper selektierbar )
8 x Analogeingänge über einen AD-Wandler - ADC0808CCN ( Erzeugung der Referenzspannung auf dem Board )
1 x Emulationsport für den Z8® CCP™ Emulator / Z86CCP00ZEM ( kann auch für externe Erweiterungen genutzt werden )
1 x I2C-Bus optional ( vorbereitet über Port 2 )
1 x PS2-Port für eine Tastatur ( optional zur Eingabe Port P2 und Port P3 )
1 x SPI-Bus intern, Anschluss eines F-RAM - FM25V02A-G o.ä.
1 x TFT-Display 128x128 über 8Bit parallel Bus ( Levelshifter 74ALVC164245DGG ) ( Treiber nur für ROM ab 0x1000 )
1 x USB zu RS232 - CH340G
1 x CPLD M4A5-32/32-10JNC (PLCC44) für Adressen, Chip Select, nRW, nWR und I/O. ( in ABEL geschrieben )
1 x SRAM 128KB x 8 ( AS6C1008-55PCN )
1x U2716 oder U2732 ( für internen ROM , A11 für U2732 über Jumper selektierbar )
1 x 27C64 bis 27C512 über Jumper zu selektieren. Es sind auch EEPROM( z.B. AT28C256 ) oder F-RAM möglich. ( EPROM-Simulator )
1 x Strom-Monitor ZXCT1021E5TA, der an den Kanal 1 des ADC über Jumper verbunden werden kann.
Alle Sourcen für den UB8820 bzw. UB8840 habe ich in C geschrieben, die ich hier zum Download anbiete. Ich habe den Z8® ANSI C-Compiler V4.05 von Zilog®, Inc. , den es mal auf der Homepage zum Download gab. Leider gibt es dazu kein Emulator, bzw. Ich kenne keinen, der dazu geeignet ist. Debuginformationen werden zwar nach Wunsch erzeugt, aber die nützen erstmal nichts. Zu dem C-Compiler gibt es eine Dokumentation ( Compiler, Assembler, Linker und Librarian ) und die Libs liegen als Source Code vor. Den Compiler, Linker und Assembler spreche ich über ein Batch-File an. Das war die einfachste Methode. Der Linkeraufruf erfogt zusätzlich über ein extra Linkerscript. Bei mir läuft der Compiler auf WIN7-64Bit und WIN10 -64Bit ohne Probleme.
Die Leiterplatte ist leider nicht mehr in zwei Lagen machbar gewesen. Ich musste die in 4 Lagen layouten. Dadurch konnte ich aber VCC und GND in die Innenlage legen und die normalen Signale auf Top und Bottom. Auf der Leiterplatte sind noch 4 Innenfräsungen für den Displayhalter, die einen kleinen Aufpreis bei einigen Herstellern kosten. Sollten die Leiterplatten soweit funktionieren, kann ich noch einige Muster an interessierte User abgeben. Einfach eine Nachricht an mich schreiben.
Sollte es bei der Beschaffung der einzelnen Bauteile in der BOM Probleme geben, einfach eine Anfrage an mich. Vielleicht kann ich ja weiter helfen. Anregungen und Kritik sind sehr willkommen.
Die Abmaße der Leiterplatte sind 160mm x 140mm.
AD-Wandler TFT-Display Software sind getestet. Testsoftware ab sofort verfügbar. Eine Besonderheit hat der Speicherplatz für den EPROM U301 ( 2764 - 27512 ). Da kann man auch einen FRAM FM1808 ( oder über ein Adapter einen SRAM ) einsetzen. Damit steht hier auch ein EPROM Emulator zur Verfügung. Im kleinen Bootrom ( 2712/2732 ) steht ein Bootloader, der den FRAM/SRAM beschreiben kann. Im CPLD kann man das WR-ROM Signal ein- und ausschalten.
Neue Leiterplatten TB4 sind ab sofort verfügbar. Die unbestückten und teilweise bestückten (in SMD)Leiter-platten können über www.shotech.de bestellt werden.
Testsoftware für Bootrom ( 2KB ) GLCD Test und Download-Software ab sofort verfügbar.
Der EPROM Bereich ist incl. 2KB oder 4KB extra ROM, je nach EMR ( UB8820 / UB8840 ). Die Speicherbereiche kann man im CPLD anpassen, wie man sich das wünscht. Der IO Bereich sind z.B. AD-Wandler, 16Bit Input/Output, TFT-Display, etc. Der Mode BM200-ROM ist vorbereitet, wird von mir aber nicht geprüft. Die Konfiguration ist derzeit ein 27C256 / FM1808 als ROM und 64KB SRAM.