HC12 Review

Aktuelle Derivate und Entwicklungsboards im Überblick

von Oliver Thamm und Harald Kreidl

Erschienen in Design & Elektronik
Themenheft Mikrocontroller und DSPs - Oktober '99

Motorolas 16-Bitter 68HC12 hat sich seit der Vorstellung 1996 erfolgreich etabliert, und das nicht nur Dank vieler wechselfreudiger HC11-Anwender. Die 16 Bit Controllerfamilie bestand bislang aus den Typen HC812A4 und HC912B32. Nun bekommt sie Zuwachs - Zeit für einen Blick auf die am Markt erhältlichen Evaluation Boards für die unterschiedlichen Derivate.

Es hat sich einiges getan seit der Vorstellung der ersten HC12 Controllerbausteine! Unser Bericht soll daher zunächst einen Überblick über die angebotenen HC12 Derivate geben. Und weil alle Theorie nur grau ist, folgt gleich danach eine Übersicht über die derzeit verfügbaren Evaluation Boards für diese immer noch recht neuen 16-Bit Mikrocontroller.

Aller Anfang ist - klein. Klein und übersichtlich war zumindest die Auswahl zu Anbeginn der HC12-Zeit. Das war 1996 und die Typenpalette bestand im Wesentlichen aus einem Chip, dem HC812A4. Gerüchteweise hörte man alsbald auch vom HC912B32, einem HC12-Abkömmling mit integriertem Flash-Speicher - in nebenstehendem Foto deutlich zu identifizieren. Einige Monate später verdichteten sich diese Gerüchte in Form von Datenblättern und ersten Mustern.

Inzwischen war die HC11-Welt in heller Aufregung, denn Vielerorts hörte man, der HC12 würde alsbald den HC11 gänzlich ersetzen. Wie so häufig bei Gerüchten, blieb auch hier bei näherer Betrachtung nur ein kleines Stück Wahrheit übrig: Wer auf neue, schnellere und mit umfangreicheren Ressourcen ausgestattete HC11-Typen gewartet hatte, wurde nun beim HC12 fündig. All jene Anwender, für deren Zwecke der HC11 "good enough" war, blieben aber besser weiterhin bei 8 Bit.

Denn einerseits gab es bei Motorola keine Bestrebungen für bahnbrechende Redesigns beim HC11. Andererseits bestätigte sich, daß der HC11 noch auf viele Jahre hinaus in großen Mengen hergestellt und "verbaut" werden wird. Zwar gab es einige Abkündigungen, wie z.B. beim HC11Ax. Hier ist aber mit der "E-Serie" (z.B. HC11E9) - auch langfristig - für Ersatz gesorgt. Der einzige empfindliche Abkündigungs-"Treffer" ist vermutlich die Port Replacement Unit MC68HC24. Wer hiervon betroffen ist, sollte den HC12 sowieso in die engere Wahl ziehen.

Secret of Success

Wie macht man eine neue Controller-Familie erfolgreich? Durch tolle neue Features, mit denen nur handverlesene Spezialisten umgehen können? Nein, spätestens seit Erfindung des PC wissen wir, was wirklich zählt: Kompatibilität!

Das mag manchem enthusiastischem Technologiefreak zwar ein Dorn im Auge sein, aber haben Sie sich schon einmal in eine gänzlich neue Controllerarchitektur eingearbeitet? Die Lernkurve kann schrecklich flach sein!

Ganz anders beim Umstieg vom HC11 zum HC12. Liest man das CPU12 Reference Manual aufmerksam, wird man an vielen Stellen ein Deja-vu erleben. Motorola hat die gesamte CPU-Struktur kompatibel gestaltet, angefangen bei den CPU-Registern, über das Stacking-Schema bis hin zu den Assembler-Mnemonics. Sourcecode muß man lediglich neu assemblieren, um das Programm auf den HC12 zu übertragen - theoretisch zumindest. In der Praxis hat man dann doch etliche Randbedingungen zu beachten, etwa geänderte Control-Register, schnellere Ausführungszeiten oder zusätzlich erforderliche Systeminitialisierungen. Aber dennoch: der Einarbeitungsaufwand kann geringer kaum sein, hat man einige Vorerfahrungen auf dem HC11 Gebiet.

Selbstverständlich ist die Anwenderschaft nicht auf bisherige HC11-User eingegrenzt. Auch dem Neu- oder Seiteneinsteiger (ohne HC11- bzw. Motorola-"Vorleben") wird ein entscheidender Pluspunkt geboten: Die gediegene Performance eines flotten 16-Bit CISC-Prozessors auf einer immer noch leicht beherrschbaren Komplexitätsebene!

Innenleben

Die Performance eines Mikrocontrollers wird, außer von der CPU, natürlich ganz entscheidend von den integrierten Peripheriekomponenten bestimmt. Abgesehen von einer stattlichen Grundausstattung, gibt es mittlerweile doch recht unterschiedlich bestückte Derivate im Programm. Tabelle 1 zeigt alle HC12-Typen im Überblick. Aufgeführt sind jene Typen, die bereits verfügbar sind, oder deren Verfügbarkeit in Bälde bevorsteht. Nicht enthalten hingegen sind Erlkönige, Geschöpfe der Gerüchteküche und kundenspezifische Sonderversionen.

HC812A4 HC912B32 HC912BC32 HC912D60 HC912DG128
Prozessorkern CPU12 CPU12 CPU12 CPU12 CPU12
Betriebsspannung 4,5-5,5V 4,5-5,5V 4,5-5,5V 4,5-5,5V 4,5-5,5V
Flash - 32K 32K 60K 128K
EEPROM 4K 768 768 1K 2K
RAM 1K 1K 1K 2K 8K
Businterface Non-MUX (a) MUX MUX MUX MUX
Bustakt ECLK max. 8 MHz 8 MHz 8 MHz 8 MHz 8 MHz
PLL x - - x x
Timermodul TIM TIM TIM ECT ECT
PWM (Kan. x Bit) - 4 x 8 (b) 4 x 8 (b) 4 x 8 (b) 4 x 8 (b)
SCI 2 1 1 2 (c) 2
SPI 1 1 1 1 1
IIC - - - - 1
CAN - - 1 1 2
BDLC - 1 - - -
ADC (Kan. x Bit) 8 x 8 8 x 10 8 x 10 16 x 10 /
8 x 10
16 x 10
BDM x (d) x x x x
I/O Leitungen
(max. ohne PORTE)
85 55 55 80 / 52 81
Key-Wakeup Lines 24 - - 15 / 2 16
Package TQFP112 QFP80 QFP80 TQFP112 /
QFP80
TQFP112

Tabelle 1: Übersicht HC12-Derivate

(a) unterstützt Memory Pageing (max. 5 MB), 7 Chip Selects
(b) oder 2 x 16
(c) optional: 1x SCI + 1x MI-BUS
(d) jedoch ohne Hardware-Breakpoints
TIM = Standard Timer Module
ECT = Enhanced Capture Timer
MUX = Multiplexed External Bus Interface
Non-MUX = Non-Multiplexed Ext. Bus Interface

Wie schon zuvor gesagt - alles fing beim HC812A4 an. Er stellt den Urvater und Grundtyp dar, der - lt. unverbindlicher nordamerikanischer Preisliste - bereits in kleinen Mengen weniger als 10 Dollar kostet. Wie alle HC12-Derivate hat er als Kern die 16-bittige CPU12, dazu kommen EEPROM, RAM, Timermodul mit Capture/Compare Funktionen, ein synchrones serielles Interface (SPI) und ein 8-Bit A/D-Wandler mit 8 Kanälen. Die Serielle Schnittstelle (SCI) ist gleich zweifach vorhanden; zahlreich sind auch die zur Verfügung stehenden I/O-Leitungen. Die damit einhergehende hohe Pinzahl bedingt aber auch eine Umstellung beim Anwender. Während beim 11er noch die klassische PLCC-Bauform dominierte, kommen beim HC12 ausschließlich QFP-Gehäuse zum Einsatz. Die technologischen Anforderungen bei der Verarbeitung steigen also.

Der HC912B32 war das erste Derivat mit integriertem Flash-Memory. Zusätzlich wurde ein eigenständiges PWM-Modul eingebaut, das Background Debug Mode (BDM) Interface um die Möglichkeit erweitert, Hardware Breakpoints zu setzen und die Auflösung des A/D-Wandler auf 10 Bit erhöht. Damit das ganze auch noch in ein 80-poliges Package paßt, wurde das externe Businterface auf den portsparenden Multiplexbetrieb umgestellt - allerdings mit einem ziemlich delikaten Timing (siehe [1]).

Die Beschreibung des Typen HC912BC32 ist schnell komplett, denn hierbei handelt es sich im Wesentlichen um einen 'B32. Statt des amerikanischen BDLC "Autobusses" J1850 ist hier aber ein CAN-Modul integriert, eine Reaktion auf die Anforderungen des europäischen Marktes.

Alsbald bekam der 'BC32 jedoch starke Konkurrenz, und zwar aus dem eigenen Hause. Der HC912D60 brachte nämlich nicht nur das von Vielen ersehnte CAN-Interface, sondern erweiterte das Angebot an Flashspeicher auf respektable 60 KB. Zudem ist der neuere 'D60 zugleich der leichter verfügbare Baustein. Er vereint in sich zusätzlich einige Tugenden des 'A4, z.B. die zweite SCI Schnittstelle und die PLL zur Takterzeugung. Bei den A/D-Wandler Kanälen schöpft der 'D60 auch aus dem Vollen. Gleich zwei A/D-Module wurden integriert, somit stehen insgesamt 16 Analogkanäle zur Verfügung, vorausgesetzt man setzt die (gängigere) TQFP112-Version ein. Beim kleineren QFP80 Gehäuse muß man zwangsläufig einige Abstriche bei den I/O-Pins hinnehmen.

Der jüngste Sproß innerhalb der weiter wachsenden HC12 Familie ist der HC912DG128. Die 128 in der Typennummer deutet es schon an: hier wurde nochmals erweitert. Einerseits betrifft das den Flashspeicher, dessen Umfang auf opulente 128 KB anwächst. Auch in Sachen integrierter RAM wurde nicht gespart: 8 KB kann man durchaus als gediegen bezeichnen. So viel Spaß bekommt man allerdings nicht mehr unbedingt für wenig Geld - fragen Sie mal Ihren Motorola-Distributor.

Bei der Gelegenheit können Sie sich beim Distri gleich nach den zu erwartenden Lieferzeiten erkundigen. Derzeit wird man Ihnen den 'A4 und den 'B32 wahrscheinlich ab Lager liefern können. Auch auf den 'D60 müssen Sie, zumindest bei moderaten Stückzahlen, nicht allzu lange warten. Etwas mehr Geduld brauchen Sie vermutlich bei Samples für das neueste Modell, dem 'DG128. Richtig lange Wartezeiten gibt's nur beim 'BC32, wenngleich Tools auch für diesen Typ bereits jetzt zu haben sind.

EVB vs. Controller Modul

Beim Betreten von Neuland ist es stets ratsam, einen guten Plan vom neuen Terrain zu haben. Auf Mikrocontroller übertragen heißt das, am leichtesten fällt der Einstieg mit einem fertigen Controllerboard. Mit solch einer vorgefertigten Hardware vermeidet man die zahlreichen kleinen Fallstricke eines ersten Designs und kann für spätere Eigenentwicklungen noch das eine oder andere nützliche Detail in Erfahrung bringen. So kann man sich zunächst auf die Software konzentrieren, dabei bleibt immer noch genug Arbeit übrig.

Bei den hardwarenahen Einstiegshilfen in die HC12-Welt kann man zwei Hauptrichtungen unterscheiden. Auf der einen Seite findet man die Evaluation Boards (EVBs), die im Idealfall nicht nur einen übersichtlichen Aufbau mit gut zugänglichen Testpunkten haben, sondern zudem noch mit einem Lochrasterfeld für kleinere Hardwareerweiterungen aufwarten. Die mechanische Dimension solcher EVBs liegt oft im Bereich einer Europakarte.

Die zweite Gattung der Prototypkarten ist kompakter aufgebaut und eignet sich daher besser für den Aufbau realer Geräte-Prototypen. Die Abmessungen liegen typischerweise zwischen Scheckkarte und Halb-Euro, auf Lochrasterfelder muß man daher meistens verzichten. Dafür kann man solche Module bequem auf eine Unterkarte aufstecken, welche die anwenderspezifische Peripherie trägt. Eine gute Lösung nicht nur für Prototypen, sondern auch kleinere Geräteserien.

From the Ranch

Wir beginnen unsere Umschau bei der Firma, die am besten wissen sollte, wie man eine HC12 Hardware aufbaut. Fündig wird man bei Motorola erwartungsgemäß in der Kategorie der Eval Boards, und dies in der ganzen Breite der angebotenen Controllertypen.

Beginnen wir mit dem EVB zum HC912B32 (nachfolgend kurz: B32EVB). Um es gleich zu sagen: Dieses knapp europakartengroße Board ist außerordentlich nützlich und zugleich keineswegs unerschwinglich. Das B32EVB paßt mit einem Preis unter 300 DM sogar in's studentische Budget. Dafür bekommt man nicht nur eine Controllerkarte mit einem im Single Chip Mode betriebenen HC912B32 nebst RS232 Transceiver und Monitorsoftware, sondern zusätzlich einen ganz besonderen Mehrwert: Mittels Jumperkonfiguration läßt sich das B32EVB auf eine BDM Pod-Betriebsart umstellen.

Wenn Sie das Background Debug Mode Interface (kurz: BDM) des HC12 bereits kennen, ist Ihnen klar, wozu solch ein Pod dient: zum Debuggen. Mit anderen Worten: Durch Umsetzen von zwei Jumpern wird das B32EVB zum Debugger. Zu diesem Zweck findet man auf der Platine nicht nur den üblichen BDM-Eingang, sondern zudem einen BDM-Ausgang. Die im Controller bei Lieferung enthaltene D-Bug12 Monitorsoftware kann im Pod-Mode über diesen BDM-Ausgang auf ein angeschlossenes HC12-Target zugreifen. Das heißt, das B32EVB dient als Verbindungsglied ("Pod") zwischen PC und HC12-Zielsystem. Das zuvor im EVB-Mode des B32EVB nutzbare Monitorprgramm D-Bug12 funktioniert wie gewohnt, alle Zugriffe auf Speicher, Ports u.a. Controllerressourcen finden aber fortan auf dem entfernten Zielsystem statt. Jedem HC12 Chip hat Motorola die dazu notwendigen Voraussetzungen (BDM Interface und Firmware) bereits "in die Wiege gelegt".

Als Pod macht das B32EVB also eine recht gute Figur, wohingegen in der EVB-Betriebsart einige Wünsche offen bleiben. Hauptproblem stellt der Flashspeicher dar, welcher komplett mit dem Monitorprogramm belegt ist und somit keine Bereiche für Programme des Anwenders frei läßt. Abhilfe schafft hier die Speichererweiterung aus [1].

Zum BC32 gibt es ein fast identisches EVB. Das Platinenlayout ist ein wenig modifiziert, zusätzlich findet man einen CAN-Bus Treiber PCA82C251 auf der Platine. Bezüglich Monitorsoftware, Pod-Mode und RAM-Erweiterung gilt aber das zuvor gesagte.

Das Evaluation Board zum HC812A4 fällt etwas aus dem Rahmen. Es hat mit 20 cm x 20 cm recht ungewöhnliche Abmessungen, allein hundert Quadratzentimeter davon sind auf dem Board als Lochrasterfläche ausgeführt. Dem Benutzer werden vier Speichersockel (DIL) für RAM- und ROM-Erweiterungen geboten. Außerdem findet man zahllose Jumper vor, die Numerierung dieser Steckbrücken reicht bis 49. Damit wird es zwar möglich, nahezu jede erdenkliche Buskonfiguration des 'A4 auszuprobieren. Besonders übersichtlich ist dieses EVB dadurch zugegebenermaßen nicht. Zielgruppe dieses Boards ist wohl weniger der Einsteiger, als der erfahrene Controlleranwender, der sich alle Möglichkeiten offen halten will und zudem bereit ist, ca. 400 Dollar für diese Evaluierungsplattform auszugeben.

Den Reigen der Motorola EVBs schließen das D60EVB und das DG128EVB. Beide Platinen sind weitgehend identisch, abgesehen vom darauf bestückten Controller. Ermöglicht wird dies durch die Pinkompatibilität von 'D60 und 'DG128, die leider zurück zum 'A4 (in dem gleichen TQFP Gehäuse) nicht gegeben ist. Das Board ist mit 190 mm etwas länger als Euroformat und es birgt die Tugenden des B32EVB in sich - übersichtlich gestaltet, auf das Wesentliche beschränkt, einfach anzuwenden. Als Schmankerln befinden sich auf dem Board ein ('D60) bzw. zwei ('DG128) CAN-Schnittstellen, zudem ein 8-gliedriger DIP-Switch sowie eine LED-Zeile. Wo früher nur die übliche Quarzbeschaltung vorzufinden war, thront nun ein separater Quarzoszillator im DIP14-kompatiblen Metallgehäuse. Hier wollte Motorola angesichts des neu designten Low-Power Oszillators des D(G)60/128 wohl kein Risiko eingehen.

Die beiden letztgenannten EVBs von Motorola sind hardwareseitig sinnvoll angelegt, zudem bezahlbar (< 300 DM) aber leider nur mit großen Hürden in Betrieb zu nehmen. Der Grund: sie werden ohne jegliche Software geliefert und die Dokumentation besteht nur aus einem dünnen Heftchen nebst einigen Blättern mit dem Schaltplan. Vielleicht liegt es daran, daß sie schottischer Herkunft sind - so verrät es jedenfalls der Platinenaufdruck.

Aufsteckboards

Wenden wir uns nun der zweiten Kategorie zu - Controller Module und Starterkits von 3rd-Party Anbietern. Während es in den Staaten bereits mehrere (zumeist kleine) Firmen gibt, die HC12 Module anbieten, hat sich in Deutschland allein Elektronikladen Mikrocomputer als spezialisierter Anbieter auf dieser Strecke etabliert. Das Unternehmen (siehe [2]) bietet hauptsächlich HC12-Produkte aus deutscher Fertigung an, zusätzlich befinden sich aber alle zuvor genannten Motorola EVBs im Vertriebsprogramm.

Beginnen wir beim HC812A4. Einen deutlichen Kontrast zum A4EVB bildet das bereits seit 1997 im Angebot des Elektronikladen befindliche HC12 Welcome Kit (siehe Abb. oben). Die Konfiguration beschränkt sich auf lediglich drei Jumper für den gewünschten Operating Mode, die ganze Platine ist nicht größer als eine Scheckkarte. An den langen Außenseiten befinden sich Stiftleisten, über die alle Controllerpins zugänglich sind. Das Controllermodul trägt neben der MCU einen Resetcontroller und einen zweikanaligen RS232-Treiber. Im Lieferumfang ist ein Monitorprogramm enthalten, zudem Anschlußkabel, Hardwarehandbuch und eine CD mit Manuals und Datenblättern im PDF-Format. Zusammen mit der beiliegenden Assemblersoftware stellt das Kit eine Komplettlösung für den Einsteiger dar - nur einen PC mit Terminalprogramm und eine 5 Volt Stromversorgung muß der Anwender bereithalten.

Für umfangreichere Anwendungen empfiehlt sich der HC12compact. Diese Controllerkarte ist etwas größer als die Hardware aus dem HC12 Welcome Kit, dafür bringt sie jede Menge Speicher und Peripherie mit. Neben 256 KB RAM und 512 KB Flash sind beim HC12compact optional ein A/D-Wandler (12 Bit, 11 Kanäle), ein D/A-Wandler (12 Bit, 2 Kanäle), eine batteriegestützte Echtzeituhr (RTC4553) und ein Stand-alone CAN-Controller (SJA1000) verfügbar.

Mit dieser üppigen Ausstattung liegen die Hauptanwendungen des HC12compact wohl eher im Bereich anspruchsvoller Industrieanwendungen, gleichzeitig ist der Preis des Entwicklungspaketes (inkl. HC12 ANSI-C Compiler!) mit ca. 750 DM durchaus noch im Bereich der vorgestellten Evaluation Boards angesiedelt.

Für die Evaluierung des neuen HC912D60 ist ein weiteres Controller Modul im Angebot des Elektronikladen. Das Modul ist von der Designidee ebenso angelegt wie das HC12 Welcome Kit, demzufolge ist auch der Name D60 Welcome Kit plausibel. Bestückt ist ein 'D60 Controller im TQFP112-Gehäuse, in der Peripherie ergänzt durch einen RS232 Transceiver für zwei SCI-Kanäle und einen CAN Interface Treiber. Selbstverständlich fehlen weder Resetcontroller, BDM-Anschluß noch Resettaster auf dem scheckkartengroßen Board. Ein großer Vorteil des D60 Welcome Kits besteht in der Lieferung inkl. Monitorsoftware - die Inbetriebnahme ist mit der fertig lauffähigen Firmware sehr einfach. Als ideale Ergänzung erweist sich wiederum der preiswerte ImageCraft Compiler ICC12.

Was kommt

Der kurze Überblick hat aufgezeigt, daß sich in Sachen HC12 am Markt einiges tut. Die Anzahl der Derivate wächst und für alle Derivate stehen bereits Hardaretools zur Verfügung. Der Anwender kann sich freuen und das für seine Anwendung passendste Tool auswählen - zumeist wird er schon für einige hundert Mark fündig.

Die rasante Entwicklung im Controllermarkt wird dazu führen, daß dies nicht das letzte Wort zum HC12 bildet. Spätestens wenn Motorola's Star12 Programm für Morgendämmerung sorgt, werden wir wieder berichten.

Literatur:

  1. Thamm, Oliver: RAM! Mehr RAM! - Speichererweiterung am HC912B32 EVB;
    Design&Elektronik; Juli 1999; S.68ff.
  2. Elektronikladen | ELMICRO http://elmicro.com

Links

URL dieser Veröffentlichung: http://hc12web.de/due9910/
Motorola's MCU Website: http://www.motorola.com/mcu/
Oliver Thamm's HC12 Web: http://hc12web.de